ethereum / aleth

Aleth – Ethereum C++ client, tools and libraries
GNU General Public License v3.0
3.96k stars 2.17k forks source link

cmake ..; build failed on macOS Mojave #5513

Open starrynightglider opened 5 years ago

starrynightglider commented 5 years ago

I am trying to build on macOS Mojave build$ cmake .. But fails because no symbols found on librocsdb.a. Does anyone know what's going wrong? Thanks!


[ 95%] Linking CXX static library librocksdb.a
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: librocksdb.a(db_impl_debug.cc.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: librocksdb.a(sync_point_impl.cc.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: librocksdb.a(rocks_lua_compaction_filter.cc.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: librocksdb.a(db_impl_debug.cc.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: librocksdb.a(sync_point_impl.cc.o) has no symbols
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: file: librocksdb.a(rocks_lua_compaction_filter.cc.o) has no symbols ```
chfast commented 5 years ago

Is this the full log? I'm guessing the true error is somewhere else.

starrynightglider commented 5 years ago

Thanks for helping the issue! Yes, you are right, there are some other errors. Related to gtest and rocksdb.

cmake ..
-- [cable ] Cable 0.2.15 initialized
-- [cable ] Build type: RelWithDebInfo
-- [hunter] Calculating Toolchain-SHA1
-- [hunter] Calculating Config-SHA1
-- [hunter] HUNTER_ROOT: /Users/chiachun/.hunter
-- [hunter] [ Hunter-ID: c4cfcc0 | Toolchain-ID: e9b3333 | Config-ID: 9266f78 ]
-- [hunter] BOOST_ROOT: /Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Install (ver.: 1.65.1)
-- [hunter] BOOST_ROOT: /Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Install (ver.: 1.65.1)
-- [hunter] BOOST_ROOT: /Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Install (ver.: 1.65.1)
-- [hunter] BOOST_ROOT: /Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Install (ver.: 1.65.1)
-- [hunter] BOOST_ROOT: /Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Install (ver.: 1.65.1)
-- [hunter] BOOST_ROOT: /Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Install (ver.: 1.65.1)
-- [hunter] BOOST_ROOT: /Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Install (ver.: 1.65.1)
-- [hunter] BOOST_ROOT: /Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Install (ver.: 1.65.1)
-- Boost version: 1.65.1
-- Found the following Boost libraries:
--   program_options
--   filesystem
--   system
--   thread
--   context
--   fiber
--   log
-- [hunter] JSONCPP_ROOT: /Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Install (ver.: 1.8.0)
-- [hunter] SNAPPY_ROOT: /Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Install (ver.: 1.1.6-p0)
-- [hunter] CRYPTOPP_ROOT: /Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Install (ver.: 5.6.5-p0)
-- [hunter] LIBJSON-RPC-CPP_ROOT: /Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Install (ver.: 0.7.0-p3)
-- [hunter] LIBSCRYPT_ROOT: /Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Install (ver.: 1.21-p1)
-- [hunter] ETHASH_ROOT: /Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Install (ver.: 0.4.0)

------------------------------------------------------------------------
-- Configuring aleth
------------------------------------------------------------------------
-- CMake 3.13.2 (/Applications/CMake.app/Contents/bin/cmake)
-- CMAKE_BUILD_TYPE Build type                               RelWithDebInfo
-- TARGET_PLATFORM  Target platform                          Darwin
-- BUILD_SHARED_LIBS                                         OFF
--------------------------------------------------------------- features
-- VMTRACE          VM execution tracing                     OFF
-- EVM_OPTIMIZE     Enable VM optimizations                  ON
-- FATDB            Full database exploring                  ON
-- DB               Database implementation                  LEVELDB
-- PARANOID         -                                        OFF
-- MINIUPNPC        -                                        OFF
------------------------------------------------------------- components
-- TESTS            Build tests                              ON
-- TOOLS            Build tools                              ON
------------------------------------------------------------- tests
-- FASTCTEST        Run only test suites in ctest            OFF
-- TESTETH_ARGS     Testeth arguments in ctest:

------------------------------------------------------------------------

CMake Warning at evmc/cmake/cable/bootstrap.cmake:45 (message):
  [cable ] Cable 0.2.15 (version older than 0.2.16) initialized in the
  `aleth` parent project
Call Stack (most recent call first):
  evmc/CMakeLists.txt:16 (include)

-- [hunter] LEVELDB_ROOT: /Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Install (ver.: 1.20)
-- [hunter] ROCKSDB_ROOT: /Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Install (ver.: 5.14.2)
-- [hunter] Building rocksdb
loading initial cache file /Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/cache.cmake
loading initial cache file /Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/args.cmake
-- The C compiler identification is AppleClang 10.0.0.10001145
-- The CXX compiler identification is AppleClang 10.0.0.10001145
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc -- works
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -- works
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Configuring done
-- Generating done
-- Build files have been written to: /Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Build
Scanning dependencies of target rocksdb-Release
[ 12%] Creating directories for 'rocksdb-Release'
[ 25%] Performing download step (download, verify and extract) for 'rocksdb-Release'
-- verifying file...
       file='/Users/chiachun/.hunter/_Base/Download/rocksdb/5.14.2/376bc53/v5.14.2.tar.gz'
-- File already exists and hash match (skip download):
  file='/Users/chiachun/.hunter/_Base/Download/rocksdb/5.14.2/376bc53/v5.14.2.tar.gz'
  SHA1='376bc537e8c716111214274755f5fe4026e5a354'
-- extracting...
     src='/Users/chiachun/.hunter/_Base/Download/rocksdb/5.14.2/376bc53/v5.14.2.tar.gz'
     dst='/Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Source'
-- extracting... [tar xfz]
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
[ 37%] No patch step for 'rocksdb-Release'
[ 50%] No update step for 'rocksdb-Release'
[ 62%] Performing configure step for 'rocksdb-Release'
loading initial cache file /Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/cache.cmake
loading initial cache file /Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/args.cmake
-- The C compiler identification is AppleClang 10.0.0.10001145
-- The CXX compiler identification is AppleClang 10.0.0.10001145
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc -- works
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -- works
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- The ASM compiler identification is AppleClang
-- Found assembler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc
-- Found Git: /usr/local/bin/git (found version "2.19.1")
-- Performing Test HAVE_OMIT_LEAF_FRAME_POINTER
-- Performing Test HAVE_OMIT_LEAF_FRAME_POINTER - Success
-- Performing Test HAVE_SSE42
-- Performing Test HAVE_SSE42 - Success
-- Performing Test HAVE_THREAD_LOCAL
-- Performing Test HAVE_THREAD_LOCAL - Success
-- Enabling RTTI in Debug builds only (default)
-- Performing Test HAVE_FALLOCATE
-- Performing Test HAVE_FALLOCATE - Failed
-- Performing Test HAVE_SYNC_FILE_RANGE_WRITE
-- Performing Test HAVE_SYNC_FILE_RANGE_WRITE - Failed
-- Performing Test HAVE_PTHREAD_MUTEX_ADAPTIVE_NP
-- Performing Test HAVE_PTHREAD_MUTEX_ADAPTIVE_NP - Failed
-- Looking for malloc_usable_size
-- Looking for malloc_usable_size - not found
-- Looking for sched_getcpu
-- Looking for sched_getcpu - not found
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - found
-- Found Threads: TRUE
-- JNI library is disabled
-- Configuring done
-- Generating done
-- Build files have been written to: /Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Build/rocksdb-Release-prefix/src/rocksdb-Release-build
[ 75%] Performing build step for 'rocksdb-Release'
Scanning dependencies of target build_version
[  0%] Building CXX object CMakeFiles/build_version.dir/build_version.cc.o
Scanning dependencies of target gtest
[  0%] Building CXX object third-party/gtest-1.7.0/fused-src/gtest/CMakeFiles/gtest.dir/gtest-all.cc.o
[  0%] Built target build_version
/Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Source/third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc:3643:3: error: cannot delete expression of type 'const internal::scoped_ptr< ::testing::internal::GTestFlagSaver>'
  delete gtest_flag_saver_;
  ^      ~~~~~~~~~~~~~~~~~
/Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Source/third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc:3923:11: error: out-of-line definition of 'TestInfo' does not match any declaration in 'testing::TestInfo'
TestInfo::TestInfo(const std::string& a_test_case_name,
          ^~~~~~~~
/Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Source/third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc:3923:11: error: constructor for 'testing::TestInfo' must explicitly initialize the member 'location_' which does not have a default constructor
/usr/local/include/gtest/gtest.h:803:26: note: member is declared here
  internal::CodeLocation location_;
                         ^
/usr/local/include/gtest/internal/gtest-internal.h:492:8: note: 'testing::internal::CodeLocation' declared here
struct CodeLocation {
       ^
/Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Source/third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc:3972:11: error: no matching constructor for initialization of 'testing::TestInfo'
      new TestInfo(test_case_name, name, type_param, value_param,
          ^        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/gtest/gtest.h:772:3: note: candidate constructor not viable: requires 7 arguments, but 6 were provided
  TestInfo(const std::string& test_case_name,
  ^
/usr/local/include/gtest/gtest.h:817:35: note: candidate constructor not viable: requires 1 argument, but 6 were provided
  GTEST_DISALLOW_COPY_AND_ASSIGN_(TestInfo);
                                  ^
/Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Source/third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc:4296:6: error: redefinition of 'GTestColor'
enum GTestColor {
     ^
/usr/local/include/gtest/gtest.h:1777:6: note: previous definition is here
enum GTestColor { COLOR_DEFAULT, COLOR_RED, COLOR_GREEN, COLOR_YELLOW };
     ^
Scanning dependencies of target rocksdb
Scanning dependencies of target rocksdb-shared
/Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Source/third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc:5240:14: error: cannot define or redeclare 'ScopedTrace' here because namespace 'internal' does not enclose namespace 'ScopedTrace'
ScopedTrace::ScopedTrace(const char* file, int line, const Message& message)
~~~~~~~~~~~~~^
/Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Source/third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc:5243:16: error: use of undeclared identifier 'file'
  trace.file = file;
               ^
/Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Source/third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc:5244:16: error: use of undeclared identifier 'line'
  trace.line = line;
               ^
/Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Source/third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc:5245:19: error: use of undeclared identifier 'message'
  trace.message = message.GetString();
                  ^
/Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Source/third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc:5247:28: error: 'PushGTestTrace' is a private member of 'testing::UnitTest'
  UnitTest::GetInstance()->PushGTestTrace(trace);
                           ^
/usr/local/include/gtest/gtest.h:1378:8: note: declared private here
  void PushGTestTrace(const internal::TraceInfo& trace)
       ^
/Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Source/third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc:5251:14: error: cannot define or redeclare '~ScopedTrace' here because namespace 'internal' does not enclose namespace 'ScopedTrace'
ScopedTrace::~ScopedTrace()
~~~~~~~~~~~~~^
/Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Source/third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc:5253:28: error: 'PopGTestTrace' is a private member of 'testing::UnitTest'
  UnitTest::GetInstance()->PopGTestTrace();
                           ^
/usr/local/include/gtest/gtest.h:1382:8: note: declared private here
  void PopGTestTrace()
       ^
/Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Source/third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc:6145:30: warning: format string is not a string literal (potentially insecure) [-Wformat-security]
    ColoredPrintf(COLOR_RED, msg.GetString().c_str());
                             ^~~~~~~~~~~~~~~~~~~~~~~
/Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Source/third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc:6145:30: note: treat the string as an argument to avoid this
    ColoredPrintf(COLOR_RED, msg.GetString().c_str());
                             ^
                             "%s",
/Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Source/third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc:6153:30: warning: format string is not a string literal (potentially insecure) [-Wformat-security]
    ColoredPrintf(COLOR_RED, msg.GetString().c_str());
                             ^~~~~~~~~~~~~~~~~~~~~~~
/Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Source/third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc:6153:30: note: treat the string as an argument to avoid this
    ColoredPrintf(COLOR_RED, msg.GetString().c_str());
                             ^
                             "%s",
/Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Source/third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc:6162:30: warning: format string is not a string literal (potentially insecure) [-Wformat-security]
    ColoredPrintf(COLOR_RED, msg.GetString().c_str());
                             ^~~~~~~~~~~~~~~~~~~~~~~
/Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Source/third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc:6162:30: note: treat the string as an argument to avoid this
    ColoredPrintf(COLOR_RED, msg.GetString().c_str());
                             ^
                             "%s",
/Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Source/third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc:6730:3: error: use of undeclared identifier 'g_argvs'
  g_argvs.clear();
  ^
/Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Source/third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc:6732:5: error: use of undeclared identifier 'g_argvs'
    g_argvs.push_back(StreamableToString(argv[i]));
    ^
/Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Source/third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc:7967:13: error: static declaration of 'SplitString' follows non-static declaration
static void SplitString(const ::std::string& str, char delimiter,
            ^
/usr/local/include/gtest/internal/gtest-internal.h:606:6: note: previous declaration is here
void SplitString(const ::std::string& str, char delimiter,
     ^
[  0%] Building CXX object CMakeFiles/rocksdb.dir/cache/lru_cache.cc.o
[  0%] Building CXX object CMakeFiles/rocksdb.dir/cache/clock_cache.cc.o
[  0%] Building CXX object CMakeFiles/rocksdb-shared.dir/cache/clock_cache.cc.o
/Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Source/third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc:9548:49: error: functions that differ only in their return type cannot be overloaded
const ::std::vector<testing::internal::string>& GetInjectableArgvs() {
      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
/usr/local/include/gtest/internal/gtest-port.h:1364:26: note: previous declaration is here
std::vector<std::string> GetInjectableArgvs();
~~~~~~~~~~~~~~~~~~~~~~~~ ^
/Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Source/third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc:10220:31: error: use of undeclared identifier 'defined_test_names_'
    for (DefinedTestIter it = defined_test_names_.begin();
                              ^
/Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Source/third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc:10221:16: error: use of undeclared identifier 'defined_test_names_'
         it != defined_test_names_.end();
               ^
/Users/chiachun/.hunter/_Base/c4cfcc0/e9b3333/9266f78/Build/rocksdb/Source/third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc:10237:29: error: use of undeclared identifier 'defined_test_names_'
  for (DefinedTestIter it = defined_test_names_.begin();
                            ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
3 warnings and 20 errors generated.
make[5]: *** [third-party/gtest-1.7.0/fused-src/gtest/CMakeFiles/gtest.dir/gtest-all.cc.o] Error 1
make[4]: *** [third-party/gtest-1.7.0/fused-src/gtest/CMakeFiles/gtest.dir/all] Error 2
make[4]: *** Waiting for unfinished jobs....
[  1%] Building CXX object CMakeFiles/rocksdb.dir/cache/sharded_cache.cc.o
[  1%] Building CXX object CMakeFiles/rocksdb-shared.dir/cache/lru_cache.cc.o