Details
-
Bug
-
Status: Resolved
-
Blocker
-
Resolution: Fixed
-
None
-
None
Description
The commit 74878e255bb099029dde2a03e0b1d22fecf16000 broke the build in OS-X. On a first run it will break with the following message:
checking if clang supports -c -o file.o... yes checking for poll.h... yes checking sys/select.h usability... checking if clang supports -fno-rtti -fno-exceptions... yes checking if clang supports -c -o file.o... yes (cached) yes checking for clang option to produce PIC... checking whether the clang linker (/usr/bin/ld) supports shared libraries... -fno-common -DPIC checking if clang PIC flag -fno-common -DPIC works... yes checking dynamic linker characteristics... mkdir out-shared clang++ -stdlib=libc++ -nostdinc++ -I/usr/local/opt/llvm@3.8/lib/llvm-3.8/include/c++/v1 -Wno-deprecated-declarations -fvisibility-inlines-hidden -fcolor-diagnostics -Wno-unused-local-typedef -std=c++11 -stdlib=libc++ -DGTEST_USE_OWN_TR1 _TUPLE=1 -DGTEST_LANG_CXX11 -I. -I./include -std=c++0x -DOS_MACOSX -DLEVELDB_PLATFORM_POSIX -DLEVELDB_ATOMIC_PRESENT -stdlib=libc++ -nostdinc++ -I/usr/local/opt/llvm@3.8/lib/llvm-3.8/include/c++/v1 -Wno-deprecated-declarations -fvisibil ity-inlines-hidden -fcolor-diagnostics -Wno-unused-local-typedef -std=c++11 -stdlib=libc++ -DGTEST_USE_OWN_TR1_TUPLE=1 -DGTEST_LANG_CXX11 -fPIC -fPIC -c db/db_bench.cc -o out-shared/db/db_bench.o yes checking sys/select.h presence... error: unable to open output file 'out-shared/db/db_bench.o': 'No such file or directory' 1 error generated. make[4]: *** [out-shared/db/db_bench.o] Error 1 make[3]: *** [leveldb-1.19/out-static/libleveldb.a] Error 2 make[3]: *** Waiting for unfinished jobs....
if one re-runs the make command, then it fails with the following error:
clang -I. -I./include -DOS_MACOSX -DLEVELDB_PLATFORM_POSIX -DLEVELDB_ATOMIC_PRESENT -stdlib=libc++ -nostdinc++ -I/usr/local/opt/llvm@3.8/lib/llvm-3.8/include/c++/v1 -Wno-deprecated-declarations -fvisibility-inlines-hidden -fcolor-diagnostics -Wno-unused-local-typedef -std=c++11 -stdlib=libc++ -DGTEST_USE_OWN_TR1_TUPLE=1 -DGTEST_LANG_CXX11 -fPIC -c db/c_test.c -o out-static/db/c_test.o error: invalid argument '-std=c++11' not allowed with 'C/ObjC'
This one indicates that the C compiler is using CXXFLAGS instead of CFLAGS or that CFLAGS are being wrongly generated. Running a thir time the make command throes the following output:
clang -I. -I./include -DOS_MACOSX -DLEVELDB_PLATFORM_POSIX -DLEVELDB_ATOMIC_PRESENT -stdlib=libc++ -nostdinc++ -I/usr/local/opt/llvm@3.8/lib/llvm-3.8/include/c++/v1 -Wno-deprecated-declarations -fvisibility-inlines-hidden -fcolor-diagno$ tics -Wno-unused-local-typedef -std=c++11 -stdlib=libc++ -DGTEST_USE_OWN_TR1_TUPLE=1 -DGTEST_LANG_CXX11 -fPIC -c db/c_test.c -o out-static/db/c_test.o clang++ -L/usr/local/opt/subversion/lib -L/usr/local/opt/openssl/lib -L/usr/local/opt/libevent/lib -L/usr/local/opt/apr/libexec/lib -L/usr/local/opt/llvm/lib -Wl,-rpath,/usr/local/opt/llvm/lib -fcolor-diagnostics -stdlib=libc++ -nostdi$ c++ -I/usr/local/opt/llvm@3.8/lib/llvm-3.8/include/c++/v1 -Wno-deprecated-declarations -fvisibility-inlines-hidden -fcolor-diagnostics -Wno-unused-local-typedef -std=c++11 -stdlib=libc++ -DGTEST_USE_OWN_TR1_TUPLE=1 -DGTEST_LANG_CXX11 -I$ -I./include -std=c++0x -DOS_MACOSX -DLEVELDB_PLATFORM_POSIX -DLEVELDB_ATOMIC_PRESENT -stdlib=libc++ -nostdinc++ -I/usr/local/opt/llvm@3.8/lib/llvm-3.8/include/c++/v1 -Wno-deprecated-declarations -fvisibility-inlines-hidden -fcolor-dia$ nostics -Wno-unused-local-typedef -std=c++11 -stdlib=libc++ -DGTEST_USE_OWN_TR1_TUPLE=1 -DGTEST_LANG_CXX11 -fPIC db/corruption_test.cc out-static/db/builder.o out-static/db/c.o out-static/db/db_impl.o out-static/db/db_iter.o out-static/d$ /dbformat.o out-static/db/dumpfile.o out-static/db/filename.o out-static/db/log_reader.o out-static/db/log_writer.o out-static/db/memtable.o out-static/db/repair.o out-static/db/table_cache.o out-static/db/version_edit.o out-static/db/ve$ sion_set.o out-static/db/write_batch.o out-static/table/block.o out-static/table/block_builder.o out-static/table/filter_block.o out-static/table/format.o out-static/table/iterator.o out-static/table/merger.o out-static/table/table.o out$ static/table/table_builder.o out-static/table/two_level_iterator.o out-static/util/arena.o out-static/util/bloom.o out-static/util/cache.o out-static/util/coding.o out-static/util/comparator.o out-static/util/crc32c.o out-static/util/env$ o out-static/util/env_posix.o out-static/util/filter_policy.o out-static/util/hash.o out-static/util/histogram.o out-static/util/logging.o out-static/util/options.o out-static/util/status.o out-static/port/port_posix.o out-static/util/tes tharness.o out-static/util/testutil.o -o out-static/corruption_test error: invalid argument '-std=c++11' not allowed with 'C/ObjC' make[4]: *** [out-static/db/c_test.o] Error 1 make[4]: *** Waiting for unfinished jobs.... make[3]: *** [leveldb-1.19/out-static/libleveldb.a] Error 2 make[2]: *** [check-recursive] Error 1 make[1]: *** [check] Error 2 make: *** [check-recursive] Error 1
persisting pays off however, and it finally manages to build Mesos.
Attachments
Issue Links
- is broken by
-
MESOS-970 Upgrade bundled leveldb to 1.19
- Resolved
- is cloned by
-
MESOS-7145 LevelDB 1.19 update breaks third-pary configure scripts in a weird way.
- Resolved