-
Notifications
You must be signed in to change notification settings - Fork 372
openSUSE - Work through all build errors #552
Comments
Hey there! The missing headers one looks exactly the same as #513, and it is fascinating that it has shown up on another platform again. I can only think that it is a bug in json-rpc-cpp which nobody has quite managed to nail down yet. You may be able to work around that by building from v0.6.0 from source like I have been experimenting with here: https://github.com/bobsummerwill/cpp-ethereum/blob/merge_repos/setup.sh#L69 The CpuID one is an optional dependency, and shouldn't be breaking anything. If you can't find a functional LLVM 3.7 or 3.8 then you can just skip the EVMJIT entirely by adding Please do let me know how all that goes. Please do use a gist.github.com for the log, otherwise the markdown syntax here makes the logs really unreadable. Best wishes! BTW ... are you looking to build just a Solidity compiler, or are you looking at other tools, like eth, ethminer, etc? |
I'm trying to build all the tools, will update upon testing the suggested, thanks a lot! |
Hi, just tried to install without EVMJIT and now that error does not appear but I get an error linking libOpenCL.so in /usr/lib64/libOpenCL.so returns 'cannot find' I checked and it is there. In output sticks -l flag of ld with the path /user/lib64/libOpenCL.so (eg: "-l/usr/lib64/libOpenCL.so") might this be the error? The full output is here: https://gist.github.com/wainersec/4207db46478423f764fc862ccdb795c8 Thanks! |
Just upgraded OpenCL headers from 1.2 to 2.0 and problem persist. |
Hmm. I have seen that issue before on some Linux distros. The "detection" logic must be flawed in some way. The workaround you could try is to add |
Without OpenCL I would be able to GPU mine? |
No, if you are looking to GPU mine that we'll need to work out what is wrong and fix it. It is likely something specific to openSUSE which is behaving differently than for other distros. Let's talk on #557 about that. Aside - did you get past the "missing headers" issue? Did you make any changes to your jsonrpccpp install? |
They were being found ...
That |
I was not using -DGUI=0, just tried and error persist as the same. |
Yes, after that gist I upgraded to OpenCL 2 and it is also getting found at cmake, just fails at make. |
Tried with the UseOpenCL PR and got the same result. |
With the PR I get two not found lines:
|
Heres the full command for link: |
Hokey, dokey, OpenCL fix in the PR will be merged soon. Fantastic! So these new ones (#557 (comment)) are just "warnings-treated-as-errors", which your GCC is being fussier about than on other distros. GIve me 5 mins, and I make a new PR and link it here for you to try. |
Already. Give this extra PR a whirl - https://github.com/ethereum/solidity/pull/642/files. BTW - Did you make any jsonrpccpp change? that was in regard to the "missing generated headers" thing. |
Great, I worked arround it without solidity for now "-DSOLIDITY=OFF". I got almost %70 compiled when an eth miner error came up: https://gist.github.com/wainersec/5b0e4b46e20e22408086a9b90e3f4283 |
So please do try flipping Solidity back on, with the one-liner fix. For the ethminer one, as per http://unix.stackexchange.com/questions/125918/libcurl-so-4-undefined-reference-error, it looks like you are probably missing libssl. I assume that your libcurl binaries were not built by you? |
" You can investigate which exact library is missing by using ldd on libcurl.so:
" |
Yeap, those libraries are not missing. They are there, actually built everything from scratch a few hours ago, OpenSSL, OpenSSH, zlib and curl. But stll get the same error: https://gist.github.com/wainersec/23fffae9b441145386147377c8af08d3 Solidity builds now works like charm :) |
I think this new problem is not within webthree-umbrella but with OS setup, I'm following on stackexchange. http://unix.stackexchange.com/questions/288477/ssl-related-undefined-reference-on-libssh2-and-libcurl-libs-when-compiling-c-o Thanks Bob! |
Hokey dokey. Keep me in the loop! I just merged that Solidity fix, by the way: ethereum/solidity#642 |
Hey @wainersec! |
Hi, nope. Someone in stackexchange suggested that I messed up the libz when compiled it. Uninstalled that version and came back to package version for OS. but error still persist. |
I've been able to work arround by migrating to the rolling release version of OpenSUSE Tumbleweed. Now compiled like charm. After make install I tried to run After this I run a locate to see where I was able to find this library and its on /usr/local/lib/libweb3jsonrpc.so Is this where it should be? |
Running it from compilation directory it works. |
So @wainersec ... you have a working build? Based on your experience, do you have suggested documentation updates for http://www.ethdocs.org/en/latest/ethereum-clients/cpp-ethereum/building-from-source/linux.html? |
@wainersec ^^^ ??? |
Hi @bobsummerwill , sorry about the delay. Yes it is working now. I will rebuild on a fresh OS during weekend. This way I will be able to note all the requirements for it and will update info for documentation. |
Hey @wainersec, Just another note here ... I have been working on an infrastructure-as-code alternative to these tedious per-distro sets of instructions, which will "go live" when we switch back to cpp-ethereum. You can see my work-in-progress on that here:
Now for the TravisCI bit, we're stuck with just Ubuntu Trusty automation for the time being, but we might well be able to expand that via Docker in the future. Whatever the case, I would like to expand this install_deps.sh pattern pattern to cover more distros, so that our ethdocs.org instructions for the distros which we have bothered to do that can be simplified to, with the steps being executed directly and committed in with the code itself.
So maybe for openSUSE we can take that approach instead, rather than bothering with written instructions? |
You're using Tumbleweed, right? If you copy https://github.com/bobsummerwill/cpp-ethereum/blob/merge_repos/install_deps.sh locally and run it, does it go into the right conditional? It looks like openSUSE has only got partial support for LSB (see https://bugzilla.suse.com/show_bug.cgi?id=977054) and that we might need to do something different to identify openSUSE releases. Is it just Leap 42.1 and Tumbleweed which we would need to account for? |
OS: Opensuse 42.1
I'm trying to build from source.
After satisfying dependencies I successfully runned cmake. Then make and got the following errors. AdminEthFace.h.tmp file is not found, as well as cpuid headers + lib, I'm not sure where is it looking for it. And VMJM fails at compiling.
Heres the full log:
limechain@fruittree:~/Dev/webthree-umbrella/build> cmake ..
-- The C compiler identification is GNU 4.8.5
-- The CXX compiler identification is GNU 4.8.5
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- boost headers: /usr/include
-- boost lib : /usr/lib64/libboost_thread-mt.so;/usr/lib64/libboost_date_time-mt.so;/usr/lib64/libboost_system-mt.so;/usr/lib64/libboost_regex-mt.so;/usr/lib64/libboost_chrono-mt.so;/usr/lib64/libboost_filesystem-mt.so;/usr/lib64/libboost_unit_test_framework-mt.so;/usr/lib64/libboost_program_options-mt.so;/usr/lib64/libboost_random-mt.so
-- Configuring cpp-ethereum
-- CMake Version 3.3.2
-- CMAKE_BUILD_TYPE Build type RelWithDebInfo
-- TARGET_PLATFORM Target platform Linux
--------------------------------------------------------------- features
-- PROFILING Profiling support OFF
------------------------------------------------------------- components
-- GUI Build GUI components ON
-- SOLIDITY Build Solidity ON
-- Found gmp: /usr/lib64/libgmp.so
-- Gmp headers: /usr/include
-- Gmp lib : /usr/lib64/libgmp.so
-- Configuring dev
-- CMake Version 3.3.2
-- CMAKE_BUILD_TYPE Build type RelWithDebInfo
-- TARGET_PLATFORM Target platform Linux
--------------------------------------------------------------- features
-- PROFILING Profiling support OFF
-- PARANOID - OFF
-- MINIUPNPC - ON
------------------------------------------------------------- components
-- GUI Build GUI components ON
-- TESTS Build tests ON
-- TOOLS Build tools ON
-- SOLIDITY Build Solidity ON
-- Found jsoncpp: /usr/lib64/libjsoncpp.so
-- JsonCpp headers: /usr/include
-- JsonCpp lib : /usr/lib64/libjsoncpp.so
-- Found leveldb: /usr/lib64/libleveldb.so
-- LevelDB headers: /usr/include
-- LevelDB lib : /usr/lib64/libleveldb.so
-- Found CryptoPP: /usr/include (found suitable version "5.6.2", minimum required is "5.6.2")
-- CryptoPP headers: /usr/include
-- CryptoPP lib : /usr/lib64/libcryptopp.so
-- Found miniupnpc: /usr/lib64/libminiupnpc.so
-- miniupnpc headers: /usr/include
-- miniupnpc lib : /usr/lib64/libminiupnpc.so
./memorydb.cpp./overlaydb.cpp./test.cpp./libdevcore/./Base36.cpp./libdevcore/./CommonJS.cpp./libdevcore/./FixedHash.cpp./libdevcore/./RangeMask.cpp./libdevcore/./core.cpp./libdevcore/./rlp.cpp./libdevcrypto/./AES.cpp./libdevcrypto/./MemTrie.cpp./libdevcrypto/./SecretStore.cpp./libdevcrypto/./crypto.cpp./libdevcrypto/./hexPrefix.cpp./libdevcrypto/./trie.cpp./libp2p/./capability.cpp./libp2p/./eip-8.cpp./libp2p/./net.cpp./libp2p/./peer.cpp./libp2p/./rlpx.cpp
-- Configuring ethereum
-- CMake Version 3.3.2
-- CMAKE_BUILD_TYPE Build type RelWithDebInfo
-- TARGET_PLATFORM Target platform Linux
--------------------------------------------------------------- features
-- Hardware identification support
-- HTTP Request support
-- VMTRACE VM execution tracing OFF
-- PROFILING Profiling support OFF
-- FATDB Full database exploring ON
-- ROCKSDB Prefer rocksdb to leveldb OFF
-- OLYMPIC Default to the Olympic network OFF
-- PARANOID - OFF
------------------------------------------------------------- components
-- GUI Build GUI components ON
-- TESTS Build tests ON
-- ETHASHCL Build OpenCL components ON
-- EVMJIT Build LLVM-based JIT EVM ON
-- SOLIDITY Build Solidity ON
-- EVM JIT 0.9.0
-- Using LLVM 3.7.0 (/usr/share/llvm/cmake)
-- Looking for CL_VERSION_2_0
-- Looking for CL_VERSION_2_0 - not found
-- Looking for CL_VERSION_1_2
-- Looking for CL_VERSION_1_2 - found
-- Found OpenCL: /usr/lib64/libOpenCL.so (found version "1.2")
-- OpenCL headers: /usr/include
-- OpenCL lib : /usr/lib64/libOpenCL.so
-- Cpuid headers: CPUID_INCLUDE_DIR-NOTFOUND
-- Cpuid lib : CPUID_LIBRARY-NOTFOUND
-- Found json_rpc_cpp: /usr/local/include (found suitable version "0.6.0", minimum required is "0.4")
-- json-rpc-cpp headers: /usr/local/include
-- json-rpc-cpp lib : /usr/local/lib/libjsonrpccpp-common.so;/usr/local/lib/libjsonrpccpp-server.so;/usr/local/lib/libjsonrpccpp-client.so
-- Found CURL: /usr/lib64/libcurl.so
-- curl headers: /usr/include
-- curl lib : /usr/lib64/libcurl.so
-- test: ClientBase | --eth_testfile=BlockTests/bcJS_API_Test --eth_threads=1; --eth_testfile=BlockTests/bcJS_API_Test --eth_threads=3; --eth_testfile=BlockTests/bcJS_API_Test --eth_threads=10; --eth_testfile=BlockTests/bcValidBlockTest --eth_threads=1; --eth_testfile=BlockTests/bcValidBlockTest --eth_threads=3; --eth_testfile=BlockTests/bcValidBlockTest --eth_threads=10
-- test: JsonRpc | --eth_testfile=BlockTests/bcJS_API_Test; --eth_testfile=BlockTests/bcValidBlockTest
-- Configuring webthree
-- CMake Version 3.3.2
-- CMAKE_BUILD_TYPE Build type RelWithDebInfo
-- TARGET_PLATFORM Target platform Linux
--------------------------------------------------------------- features
-- PROFILING Profiling support OFF
------------------------------------------------------------- components
-- GUI Build GUI components ON
-- TESTS Build tests ON
-- SOLIDITY Build Solidity ON
-- Found mhd: /usr/lib64/libmicrohttpd.so
-- microhttpd headers: /usr/include
-- microhttpd lib : /usr/lib64/libmicrohttpd.so
-- jsonrpcstub location : /usr/local/bin/jsonrpcstub
-- Configuring solidity
-- CMake Version 3.3.2
-- CMAKE_BUILD_TYPE Build type RelWithDebInfo
-- TARGET_PLATFORM Target platform Linux
--------------------------------------------------------------- features
-- PROFILING Profiling support OFF
------------------------------------------------------------- components
-- GUI Build GUI components ON
-- TESTS Build tests ON
-- SOLIDITY Build Solidity ON
-- Configuring alethzero
-- CMake Version 3.3.2
-- CMAKE_BUILD_TYPE Build type RelWithDebInfo
-- TARGET_PLATFORM Target platform Linux
--------------------------------------------------------------- features
-- PROFILING Profiling support OFF
------------------------------------------------------------- components
-- GUI Build GUI components ON
-- SOLIDITY Build Solidity ON
-- Configuring mix
-- CMake Version 3.3.2
-- CMAKE_BUILD_TYPE Build type RelWithDebInfo
-- TARGET_PLATFORM Target platform Linux
--------------------------------------------------------------- features
-- PROFILING Profiling support OFF
------------------------------------------------------------- components
-- GUI Build GUI components ON
-- SOLIDITY Build Solidity ON
-- mix-ide qmldir:
-- Configuring done
-- Generating done
-- Build files have been written to: /home/limechain/Dev/webthree-umbrella/build
limechain@fruittree:~/Dev/webthree-umbrella/build> make -j4
Scanning dependencies of target dev_BuildInfo.h
Scanning dependencies of target secp256k1
Scanning dependencies of target cpp-ethereum_BuildInfo.h
Scanning dependencies of target scrypt
[ 0%] Building C object webthree-helpers/utils/secp256k1/CMakeFiles/secp256k1.dir/secp256k1.c.o
[ 0%] Building C object webthree-helpers/utils/libscrypt/CMakeFiles/scrypt.dir/b64.c.o
[ 0%] Built target dev_BuildInfo.h
[ 0%] Building C object webthree-helpers/utils/libscrypt/CMakeFiles/scrypt.dir/crypto-mcf.c.o
[ 1%] Building C object webthree-helpers/utils/libscrypt/CMakeFiles/scrypt.dir/crypto-scrypt-saltgen.c.o
[ 1%] Building C object webthree-helpers/utils/libscrypt/CMakeFiles/scrypt.dir/crypto_scrypt-check.c.o
[ 1%] Building C object webthree-helpers/utils/libscrypt/CMakeFiles/scrypt.dir/crypto_scrypt-hash.c.o
Scanning dependencies of target ethereum_BuildInfo.h
[ 1%] Building C object webthree-helpers/utils/libscrypt/CMakeFiles/scrypt.dir/crypto_scrypt-hexconvert.c.o
[ 1%] Built target cpp-ethereum_BuildInfo.h
[ 1%] Built target ethereum_BuildInfo.h
[ 1%] Building C object webthree-helpers/utils/libscrypt/CMakeFiles/scrypt.dir/crypto_scrypt-nosse.c.o
Scanning dependencies of target evmjit
[ 1%] Building CXX object libethereum/evmjit/libevmjit/CMakeFiles/evmjit.dir/JIT.cpp.o
[ 1%] Building CXX object libethereum/evmjit/libevmjit/CMakeFiles/evmjit.dir/JIT-c.cpp.o
[ 2%] Building C object webthree-helpers/utils/libscrypt/CMakeFiles/scrypt.dir/sha256.c.o
[ 2%] Building CXX object libethereum/evmjit/libevmjit/CMakeFiles/evmjit.dir/Arith256.cpp.o
[ 2%] Building C object webthree-helpers/utils/libscrypt/CMakeFiles/scrypt.dir/slowequals.c.o
[ 2%] Linking C shared library libscrypt.so
[ 2%] Built target scrypt
Scanning dependencies of target ethash
[ 2%] Building C object libethereum/libethash/CMakeFiles/ethash.dir/io.c.o
[ 2%] Building C object libethereum/libethash/CMakeFiles/ethash.dir/internal.c.o
[ 2%] Building C object libethereum/libethash/CMakeFiles/ethash.dir/io_posix.c.o
[ 3%] Building CXX object libethereum/libethash/CMakeFiles/ethash.dir/sha3_cryptopp.cpp.o
[ 3%] Linking CXX shared library libethash.so
[ 3%] Built target ethash
[ 3%] Generating NatspecResources.hpp
Scanning dependencies of target natspec
[ 3%] Building CXX object libethereum/libnatspec/CMakeFiles/natspec.dir/NatspecExpressionEvaluator.cpp.o
[ 4%] Linking CXX shared library libnatspec.so
[ 5%] Linking C static library libsecp256k1.a
[ 5%] Built target secp256k1
Scanning dependencies of target minerphonehome.jsonstub
Error renaming from "/home/limechain/Dev/webthree-umbrella/libethereum/ethminer/PhoneHome.h.tmp" to "/home/limechain/Dev/webthree-umbrella/libethereum/ethminer/PhoneHome.h": No such file or directory
[ 5%] Built target minerphonehome.jsonstub
Scanning dependencies of target minerfarm.jsonstub
[ 5%] Built target natspec
Error renaming from "/home/limechain/Dev/webthree-umbrella/libethereum/ethminer/FarmClient.h.tmp" to "/home/limechain/Dev/webthree-umbrella/libethereum/ethminer/FarmClient.h": No such file or directory
[ 6%] Building CXX object libethereum/evmjit/libevmjit/CMakeFiles/evmjit.dir/Array.cpp.o
[ 6%] Built target minerfarm.jsonstub
Scanning dependencies of target webthree_BuildInfo.h
[ 6%] Built target webthree_BuildInfo.h
Scanning dependencies of target admin_eth.jsonstub
CMake Error at /home/limechain/Dev/webthree-umbrella/webthree-helpers/cmake/scripts/jsonrpcstub.cmake:56 (file):
file failed to open for reading (No such file or directory):
webthree/libweb3jsonrpc/CMakeFiles/admin_eth.jsonstub.dir/build.make:57: recipe for target 'admin_eth.jsonstub' failed
make[2]: *** [admin_eth.jsonstub] Error 1
CMakeFiles/Makefile2:2176: recipe for target 'webthree/libweb3jsonrpc/CMakeFiles/admin_eth.jsonstub.dir/all' failed
make[1]: * [webthree/libweb3jsonrpc/CMakeFiles/admin_eth.jsonstub.dir/all] Error 2
make[1]: * Waiting for unfinished jobs....
[ 6%] Building CXX object libethereum/evmjit/libevmjit/CMakeFiles/evmjit.dir/BasicBlock.cpp.o
[ 6%] Building CXX object libethereum/evmjit/libevmjit/CMakeFiles/evmjit.dir/Cache.cpp.o
[ 6%] Building CXX object libethereum/evmjit/libevmjit/CMakeFiles/evmjit.dir/Compiler.cpp.o
[ 6%] Building CXX object libethereum/evmjit/libevmjit/CMakeFiles/evmjit.dir/CompilerHelper.cpp.o
[ 7%] Building CXX object libethereum/evmjit/libevmjit/CMakeFiles/evmjit.dir/Endianness.cpp.o
[ 7%] Building CXX object libethereum/evmjit/libevmjit/CMakeFiles/evmjit.dir/ExecStats.cpp.o
[ 7%] Building CXX object libethereum/evmjit/libevmjit/CMakeFiles/evmjit.dir/Ext.cpp.o
[ 7%] Building CXX object libethereum/evmjit/libevmjit/CMakeFiles/evmjit.dir/GasMeter.cpp.o
[ 7%] Building CXX object libethereum/evmjit/libevmjit/CMakeFiles/evmjit.dir/Instruction.cpp.o
[ 8%] Building CXX object libethereum/evmjit/libevmjit/CMakeFiles/evmjit.dir/Memory.cpp.o
[ 8%] Building CXX object libethereum/evmjit/libevmjit/CMakeFiles/evmjit.dir/Optimizer.cpp.o
[ 8%] Building CXX object libethereum/evmjit/libevmjit/CMakeFiles/evmjit.dir/RuntimeManager.cpp.o
[ 8%] Building CXX object libethereum/evmjit/libevmjit/CMakeFiles/evmjit.dir/Type.cpp.o
[ 9%] Building CXX object libethereum/evmjit/libevmjit/CMakeFiles/evmjit.dir/Utils.cpp.o
[ 9%] Building CXX object libethereum/evmjit/libevmjit/CMakeFiles/evmjit.dir/support/Path.cpp.o
[ 9%] Linking CXX shared library libevmjit.so
CMakeFiles/evmjit.dir/JIT.cpp.o: In function
dev::evmjit::(anonymous namespace)::SymbolResolver::~SymbolResolver()': /home/limechain/Dev/webthree-umbrella/libethereum/evmjit/libevmjit/JIT.cpp:109: undefined reference to
llvm::SectionMemoryManager::~SectionMemoryManager()'CMakeFiles/evmjit.dir/JIT.cpp.o: In function
dev::evmjit::(anonymous namespace)::JITImpl::JITImpl()': /usr/include/llvm/Support/TargetSelect.h:119: undefined reference to
LLVMInitializeX86TargetInfo'/usr/include/llvm/Support/TargetSelect.h:121: undefined reference to
LLVMInitializeX86TargetMC' CMakeFiles/evmjit.dir/JIT.cpp.o: In function
dev::evmjit::(anonymous namespace)::JITImpl::JITImpl()':/home/limechain/Dev/webthree-umbrella/libethereum/evmjit/libevmjit/JIT.cpp:139: undefined reference to
llvm::EngineBuilder::EngineBuilder(std::unique_ptr<llvm::Module, std::default_delete<llvm::Module> >)' /home/limechain/Dev/webthree-umbrella/libethereum/evmjit/libevmjit/JIT.cpp:141: undefined reference to
llvm::EngineBuilder::setMCJITMemoryManager(std::unique_ptr<llvm::RTDyldMemoryManager, std::default_deletellvm::RTDyldMemoryManager >)'CMakeFiles/evmjit.dir/JIT.cpp.o: In function
llvm::EngineBuilder::create()': /usr/include/llvm/ExecutionEngine/ExecutionEngine.h:631: undefined reference to
llvm::EngineBuilder::selectTarget()'/usr/include/llvm/ExecutionEngine/ExecutionEngine.h:631: undefined reference to
llvm::EngineBuilder::create(llvm::TargetMachine*)' CMakeFiles/evmjit.dir/JIT.cpp.o: In function
dev::evmjit::(anonymous namespace)::JITImpl::JITImpl()':/home/limechain/Dev/webthree-umbrella/libethereum/evmjit/libevmjit/JIT.cpp:139: undefined reference to
llvm::EngineBuilder::~EngineBuilder()' /home/limechain/Dev/webthree-umbrella/libethereum/evmjit/libevmjit/JIT.cpp:139: undefined reference to
llvm::EngineBuilder::~EngineBuilder()'CMakeFiles/evmjit.dir/JIT.cpp.o: In function
dev::evmjit::(anonymous namespace)::SymbolResolver::~SymbolResolver()': /home/limechain/Dev/webthree-umbrella/libethereum/evmjit/libevmjit/JIT.cpp:109: undefined reference to
llvm::SectionMemoryManager::~SectionMemoryManager()'CMakeFiles/evmjit.dir/JIT.cpp.o: In function
llvm::MCJITMemoryManager::~MCJITMemoryManager()': /usr/include/llvm/ExecutionEngine/RuntimeDyld.h:90: undefined reference to
vtable for llvm::RuntimeDyld::MemoryManager'CMakeFiles/evmjit.dir/JIT.cpp.o: In function
llvm::MCJITMemoryManager::~MCJITMemoryManager()': /usr/include/llvm/ExecutionEngine/RuntimeDyld.h:90: undefined reference to
vtable for llvm::RuntimeDyld::MemoryManager'CMakeFiles/evmjit.dir/JIT.cpp.o: In function
llvm::RTDyldMemoryManager::getSymbolAddress(std::string const&)': /usr/include/llvm/ExecutionEngine/RTDyldMemoryManager.h:73: undefined reference to
llvm::RTDyldMemoryManager::getSymbolAddressInProcess(std::string const&)'CMakeFiles/evmjit.dir/JIT.cpp.o:(.data.rel.ro._ZTVN4llvm18MCJITMemoryManagerE[ZTVN4llvm18MCJITMemoryManagerE]+0x58): undefined reference to
llvm::RuntimeDyld::MemoryManager::anchor()' CMakeFiles/evmjit.dir/JIT.cpp.o:(.data.rel.ro+0x20): undefined reference to
llvm::SectionMemoryManager::allocateCodeSection(unsigned long, unsigned int, unsigned int, llvm::StringRef)'CMakeFiles/evmjit.dir/JIT.cpp.o:(.data.rel.ro+0x28): undefined reference to
llvm::SectionMemoryManager::allocateDataSection(unsigned long, unsigned int, unsigned int, llvm::StringRef, bool)' CMakeFiles/evmjit.dir/JIT.cpp.o:(.data.rel.ro+0x40): undefined reference to
llvm::RTDyldMemoryManager::registerEHFrames(unsigned char, unsigned long, unsigned long)'CMakeFiles/evmjit.dir/JIT.cpp.o:(.data.rel.ro+0x48): undefined reference to
llvm::RTDyldMemoryManager::deregisterEHFrames(unsigned char_, unsigned long, unsigned long)' CMakeFiles/evmjit.dir/JIT.cpp.o:(.data.rel.ro+0x50): undefined reference to
llvm::SectionMemoryManager::finalizeMemory(std::string)'CMakeFiles/evmjit.dir/JIT.cpp.o:(.data.rel.ro+0x58): undefined reference to
llvm::RuntimeDyld::MemoryManager::anchor()' CMakeFiles/evmjit.dir/JIT.cpp.o:(.data.rel.ro+0x88): undefined reference to
llvm::RTDyldMemoryManager::getPointerToNamedFunction(std::string const&, bool)'CMakeFiles/evmjit.dir/JIT.cpp.o:(.data.rel.ro+0x90): undefined reference to
llvm::SectionMemoryManager::invalidateInstructionCache()' CMakeFiles/evmjit.dir/JIT.cpp.o:(.data.rel.ro+0xc8): undefined reference to
llvm::RuntimeDyld::SymbolResolver::anchor()'CMakeFiles/evmjit.dir/Optimizer.cpp.o: In function
dev::eth::jit::(anonymous namespace)::LongJmpEliminationPass::runOnFunction(llvm::Function&)': /home/limechain/Dev/webthree-umbrella/libethereum/evmjit/libevmjit/Optimizer.cpp:63: undefined reference to
llvm::ReplaceInstWithInst(llvm::Instruction, llvm::Instruction)'CMakeFiles/evmjit.dir/Optimizer.cpp.o: In function
dev::eth::jit::(anonymous namespace)::LowerEVMPass::runOnBasicBlock(llvm::BasicBlock&)': /home/limechain/Dev/webthree-umbrella/libethereum/evmjit/libevmjit/Optimizer.cpp:157: undefined reference to
llvm::ReplaceInstWithInst(llvm::iplist<llvm::Instruction, llvm::ilist_traitsllvm::Instruction >&, llvm::ilist_iteratorllvm::Instruction&, llvm::Instruction)'CMakeFiles/evmjit.dir/Optimizer.cpp.o: In function
dev::eth::jit::optimize(llvm::Module&)': /home/limechain/Dev/webthree-umbrella/libethereum/evmjit/libevmjit/Optimizer.cpp:79: undefined reference to
llvm::createCFGSimplificationPass(int, std::function<bool (llvm::Function const&)>)'/home/limechain/Dev/webthree-umbrella/libethereum/evmjit/libevmjit/Optimizer.cpp:80: undefined reference to
llvm::createInstructionCombiningPass()' /home/limechain/Dev/webthree-umbrella/libethereum/evmjit/libevmjit/Optimizer.cpp:81: undefined reference to
llvm::createAggressiveDCEPass()'/home/limechain/Dev/webthree-umbrella/libethereum/evmjit/libevmjit/Optimizer.cpp:82: undefined reference to
llvm::createLowerSwitchPass()' CMakeFiles/evmjit.dir/Optimizer.cpp.o: In function
dev::eth::jit::prepare(llvm::Module&)':/home/limechain/Dev/webthree-umbrella/libethereum/evmjit/libevmjit/Optimizer.cpp:174: undefined reference to
llvm::createCFGSimplificationPass(int, std::function<bool (llvm::Function const&)>)' /home/limechain/Dev/webthree-umbrella/libethereum/evmjit/libevmjit/Optimizer.cpp:175: undefined reference to
llvm::createDeadCodeEliminationPass()'collect2: error: ld returned 1 exit status
libethereum/evmjit/libevmjit/CMakeFiles/evmjit.dir/build.make:568: recipe for target 'libethereum/evmjit/libevmjit/libevmjit.so.0.9.0.2' failed
make[2]: *** [libethereum/evmjit/libevmjit/libevmjit.so.0.9.0.2] Error 1
CMakeFiles/Makefile2:851: recipe for target 'libethereum/evmjit/libevmjit/CMakeFiles/evmjit.dir/all' failed
make[1]: *** [libethereum/evmjit/libevmjit/CMakeFiles/evmjit.dir/all] Error 2
Makefile:127: recipe for target 'all' failed
make: *** [all] Error 2
The text was updated successfully, but these errors were encountered: