Eos: EOS Build, Ubuntu 16.04 - CMake Error

Created on 10 Dec 2017  路  15Comments  路  Source: EOSIO/eos

LOG FILE

CMakeOutput_101117.log

I am trying to build EOS from an Ubuntu machine - the following error keeps happening:

CMake Error at libraries/CMakeLists.txt:2 (add_subdirectory):
The source directory

/some/linux/dir/eos-101117/libraries/chainbase

does not contain a CMakeLists.txt file.


CMake Error at libraries/CMakeLists.txt:9 (add_subdirectory):
The source directory

/some/linux/dir/eos-101117/libraries/appbase

does not contain a CMakeLists.txt file.

-- Git commit revision: 6ec8cffc
-- Git commit revision: 6ec8cffc
-- Git commit revision: 6ec8cffc
CMake Warning at plugins/db_plugin/CMakeLists.txt:6 (find_package):
By not providing "Findlibmongoc-1.0.cmake" in CMAKE_MODULE_PATH this
project has asked CMake to find a package configuration file provided by
"libmongoc-1.0", but CMake did not find one.

Could not find a package configuration file provided by "libmongoc-1.0"
(requested version 1.8) with any of the following names:

libmongoc-1.0Config.cmake
libmongoc-1.0-config.cmake

Add the installation prefix of "libmongoc-1.0" to CMAKE_PREFIX_PATH or set
"libmongoc-1.0_DIR" to a directory containing one of the above files. If
"libmongoc-1.0" provides a separate development package or SDK, be sure it
has been installed.

Could NOT find MongoDB. db_plugin with MongoDB support will not be included.
-- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)
-- Doxygen not found. Contract documentation will not be generated.
-- Configuring incomplete, errors occurred!

Most helpful comment

The error is not about Mongo, but about missing dependencies in the 'libraries' folder.

This is because you don't have the submodules (forgot '--recursive' when doing 'git clone' ?)

Checkout the submodules using:

git submodule update --init --recursive

This will pull in the additional git submodules.

Then you can run ./build.sh

All 15 comments

I have same errors, have you solved the problem

I don't think you need Mongo. I was able to successfully build it from source (not using the ./build.sh ubuntu command)

The error is not about Mongo, but about missing dependencies in the 'libraries' folder.

This is because you don't have the submodules (forgot '--recursive' when doing 'git clone' ?)

Checkout the submodules using:

git submodule update --init --recursive

This will pull in the additional git submodules.

Then you can run ./build.sh

Just use following steps:

wget https://github.com/mongodb/mongo-c-driver/releases/download/1.8.0/mongo-c-driver-1.8.0.tar.gz
tar xzf mongo-c-driver-1.8.0.tar.gz
cd mongo-c-driver-1.8.0
./configure --disable-automatic-init-and-cleanup --enable-static
make
sudo make install

git clone https://github.com/mongodb/mongo-cxx-driver.git --branch releases/stable --depth 1
cd mongo-cxx-driver/build
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local ..
sudo make EP_mnmlstc_core
make
sudo make install

sudo apt-get install mongodb

@gaolitao there is one line missing at the beginning.
sudo apt-get install pkg-config libssl-dev libsasl2-dev

The Instruction is inside source code.

https://github.com/EOSIO/eos/blob/master/plugins/db_plugin/CMakeLists.txt#L36

@gaolitao I'm getting this error when running cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local ..

CMake Error at src/bsoncxx/CMakeLists.txt:81 (find_package):
Could not find a configuration file for package "libbson-1.0" that is
compatible with requested version "1.9.2".

The following configuration files were considered but not accepted:

/usr/local/lib/cmake/libbson-1.0/libbson-1.0-config.cmake, version: 1.8.0

-- Configuring incomplete, errors occurred!
See also "/home/User/mongo-c-driver-1.8.0/mongo-cxx-driver/build/CMakeFiles/CMakeOutput.log".

Do you have any suggestions?

@Babaloncryptolog
I have same errors, i had solved the problem, you should install mongo-c-driver-1.9.2 because it is mongo-cxx-driver-1.9.2 ,download link https://github.com/mongodb/mongo-c-driver/releases

@icodezjb Is the mongo-c-driver-1.9.3 driver too new?

@remcoros Solved. thx. 馃憤

Commented out every exit statement related to mongo in /path/to/eos/scripts/eosio_build_ubuntu.sh and it worked

old build issue.

@heifner Having this issue now, fresh clone from master, on a fresh Ubuntu aws image. What do you mean old build issue?

I have this error at this time..

Hi, I have got these errors.

../Runtime/libRuntime.a(LLVMJIT.cpp.o):(.rodata+0x80): undefined reference to typeinfo for llvm::JITSymbolResolver' ../Runtime/libRuntime.a(LLVMJIT.cpp.o):(.rodata._ZTIN7LLVMJIT17UnitMemoryManagerE[_ZTIN7LLVMJIT17UnitMemoryManagerE]+0x10): undefined reference totypeinfo for llvm::RTDyldMemoryManager'
../Runtime/libRuntime.a(LLVMJIT.cpp.o):(.rodata._ZTIN4llvm18MCJITMemoryManagerE[_ZTIN4llvm18MCJITMemoryManagerE]+0x10): undefined reference to typeinfo for llvm::RuntimeDyld::MemoryManager' ../Runtime/libRuntime.a(LLVMJIT.cpp.o):(.rodata._ZTIN4llvm17raw_pwrite_streamE[_ZTIN4llvm17raw_pwrite_streamE]+0x10): undefined reference totypeinfo for llvm::raw_ostream'
../Runtime/libRuntime.a(LLVMJIT.cpp.o):(.rodata._ZTIN4llvm18ObjectMemoryBufferE[_ZTIN4llvm18ObjectMemoryBufferE]+0x10): undefined reference to typeinfo for llvm::MemoryBuffer' ../Runtime/libRuntime.a(LLVMJIT.cpp.o):(.rodata._ZTIN4llvm9ErrorInfoINS_9ErrorListENS_13ErrorInfoBaseEEE[_ZTIN4llvm9ErrorInfoINS_9ErrorListENS_13ErrorInfoBaseEEE]+0x10): undefined reference totypeinfo for llvm::ErrorInfoBase'
../Runtime/libRuntime.a(LLVMEmitIR.cpp.o):(.rodata._ZTIN4llvm10SelectInstE[_ZTIN4llvm10SelectInstE]+0x10): undefined reference to typeinfo for llvm::Instruction' ../Runtime/libRuntime.a(LLVMEmitIR.cpp.o):(.rodata._ZTIN4llvm8FCmpInstE[_ZTIN4llvm8FCmpInstE]+0x10): undefined reference totypeinfo for llvm::CmpInst'
clang: error: linker command failed with exit code 1 (use -v to see invocation)
libraries/wasm-jit/Source/Programs/CMakeFiles/wavm.dir/build.make:130: recipe for target 'libraries/wasm-jit/Source/Programs/wavm' failed
make[2]: * [libraries/wasm-jit/Source/Programs/wavm] Error 1
CMakeFiles/Makefile2:1332: recipe for target 'libraries/wasm-jit/Source/Programs/CMakeFiles/wavm.dir/all' failed
make[1]:
[libraries/wasm-jit/Source/Programs/CMakeFiles/wavm.dir/all] Error 2
Makefile:162: recipe for target 'all' failed
make: *
* [all] Error 2

  • Build environment
    OS: Ubuntu 16.04
    How can I fix these errors?

@gaolitao I encountered the same issue, according the part one of your idea, I solved it. Thanks a lot!

Was this page helpful?
0 / 5 - 0 ratings

Related issues

ResponsiveWebApps picture ResponsiveWebApps  路  3Comments

congnghebitcoin picture congnghebitcoin  路  3Comments

xiaomaogy picture xiaomaogy  路  3Comments

williamleecn picture williamleecn  路  3Comments

sim31 picture sim31  路  3Comments