jtgrassie / monero-pool

A Monero mining pool server written in C
BSD 3-Clause "New" or "Revised" License
345 stars 125 forks source link

Undefined Reference #45

Closed SgtTheDarknezz closed 4 years ago

SgtTheDarknezz commented 4 years ago

Creating object file for src/xmr... g++ -Wp,-MMD,build/debug/src/xmr.dd -W -Wall -Wno-unused-parameter -Wuninitialized -Wno-reorder -maes -fPIC -std=c++11 -g \ -Isrc -Idata -Irxi/log/src -I/home/xmrig/monero/src -I/home/xmrig/monero/external -I/home/xmrig/monero/external/easylogging++ -I/home/xmrig/monero/contrib/epee/include -I/opt/local/include -I/usr/local/include \ -pthread -I/usr/include/json-c \ -D_GNU_SOURCE -DAUTO_INITIALIZE_EASYLOGGINGPP -DLOG_USE_COLOR -DHAVE_RX -DDEBUG \ -c src/xmr.cpp -o build/debug/src/xmr.o Creating object file for src/pool... gcc -Wp,-MMD,build/debug/src/pool.dd -W -Wall -Wno-unused-parameter -Wuninitialized -Wbad-function-cast -maes -fPIC -std=c99 -g \ -Isrc -Idata -Irxi/log/src -I/home/xmrig/monero/src -I/home/xmrig/monero/external -I/home/xmrig/monero/external/easylogging++ -I/home/xmrig/monero/contrib/epee/include -I/opt/local/include -I/usr/local/include -pthread -I/usr/include/json-c \ -D_GNU_SOURCE -DAUTO_INITIALIZE_EASYLOGGINGPP -DLOG_USE_COLOR -DHAVE_RX -DDEBUG -c src/pool.c -o build/debug/src/pool.o Creating object file for src/forkoff... gcc -Wp,-MMD,build/debug/src/forkoff.dd -W -Wall -Wno-unused-parameter -Wuninitialized -Wbad-function-cast -maes -fPIC -std=c99 -g \ -Isrc -Idata -Irxi/log/src -I/home/xmrig/monero/src -I/home/xmrig/monero/external -I/home/xmrig/monero/external/easylogging++ -I/home/xmrig/monero/contrib/epee/include -I/opt/local/include -I/usr/local/include -pthread -I/usr/include/json-c \ -D_GNU_SOURCE -DAUTO_INITIALIZE_EASYLOGGINGPP -DLOG_USE_COLOR -DHAVE_RX -DDEBUG -c src/forkoff.c -o build/debug/src/forkoff.o Creating object file for src/util... gcc -Wp,-MMD,build/debug/src/util.dd -W -Wall -Wno-unused-parameter -Wuninitialized -Wbad-function-cast -maes -fPIC -std=c99 -g \ -Isrc -Idata -Irxi/log/src -I/home/xmrig/monero/src -I/home/xmrig/monero/external -I/home/xmrig/monero/external/easylogging++ -I/home/xmrig/monero/contrib/epee/include -I/opt/local/include -I/usr/local/include -pthread -I/usr/include/json-c \ -D_GNU_SOURCE -DAUTO_INITIALIZE_EASYLOGGINGPP -DLOG_USE_COLOR -DHAVE_RX -DDEBUG -c src/util.c -o build/debug/src/util.o Creating object file for src/growbag... gcc -Wp,-MMD,build/debug/src/growbag.dd -W -Wall -Wno-unused-parameter -Wuninitialized -Wbad-function-cast -maes -fPIC -std=c99 -g \ -Isrc -Idata -Irxi/log/src -I/home/xmrig/monero/src -I/home/xmrig/monero/external -I/home/xmrig/monero/external/easylogging++ -I/home/xmrig/monero/contrib/epee/include -I/opt/local/include -I/usr/local/include -pthread -I/usr/include/json-c \ -D_GNU_SOURCE -DAUTO_INITIALIZE_EASYLOGGINGPP -DLOG_USE_COLOR -DHAVE_RX -DDEBUG -c src/growbag.c -o build/debug/src/growbag.o Creating object file for src/webui... gcc -Wp,-MMD,build/debug/src/webui.dd -W -Wall -Wno-unused-parameter -Wuninitialized -Wbad-function-cast -maes -fPIC -std=c99 -g \ -Isrc -Idata -Irxi/log/src -I/home/xmrig/monero/src -I/home/xmrig/monero/external -I/home/xmrig/monero/external/easylogging++ -I/home/xmrig/monero/contrib/epee/include -I/opt/local/include -I/usr/local/include -pthread -I/usr/include/json-c \ -D_GNU_SOURCE -DAUTO_INITIALIZE_EASYLOGGINGPP -DLOG_USE_COLOR -DHAVE_RX -DDEBUG -c src/webui.c -o build/debug/src/webui.o Creating object file for src/bstack... gcc -Wp,-MMD,build/debug/src/bstack.dd -W -Wall -Wno-unused-parameter -Wuninitialized -Wbad-function-cast -maes -fPIC -std=c99 -g \ -Isrc -Idata -Irxi/log/src -I/home/xmrig/monero/src -I/home/xmrig/monero/external -I/home/xmrig/monero/external/easylogging++ -I/home/xmrig/monero/contrib/epee/include -I/opt/local/include -I/usr/local/include -pthread -I/usr/include/json-c \ -D_GNU_SOURCE -DAUTO_INITIALIZE_EASYLOGGINGPP -DLOG_USE_COLOR -DHAVE_RX -DDEBUG -c src/bstack.c -o build/debug/src/bstack.o Creating object file for rxi/log/src/log... gcc -Wp,-MMD,build/debug/rxi/log/src/log.dd -W -Wall -Wno-unused-parameter -Wuninitialized -Wbad-function-cast -maes -fPIC -std=c99 -g \ -Isrc -Idata -Irxi/log/src -I/home/xmrig/monero/src -I/home/xmrig/monero/external -I/home/xmrig/monero/external/easylogging++ -I/home/xmrig/monero/contrib/epee/include -I/opt/local/include -I/usr/local/include -pthread -I/usr/include/json-c \ -D_GNU_SOURCE -DAUTO_INITIALIZE_EASYLOGGINGPP -DLOG_USE_COLOR -DHAVERX -DDEBUG -c rxi/log/src/log.c -o build/debug/rxi/log/src/log.o Creating object file for src/webui-embed... xxd -i src/webui-embed.html | sed -e 's/src//' -e 's/embed_//' > build/debug/src/webui-embed.c gcc -W -Wall -Wno-unused-parameter -Wuninitialized -Wbad-function-cast -maes -fPIC -std=c99 -g -c build/debug/src/webui-embed.c -o build/debug/src/webui-embed.o Linking build/debug/src/xmr.o... g++ -o build/debug/monero-pool \ build/debug/src/xmr.o build/debug/src/pool.o build/debug/src/forkoff.o build/debug/src/util.o build/debug/src/growbag.o build/debug/src/webui.o build/debug/src/bstack.o build/debug/rxi/log/src/log.o build/debug/src/webui-embed.o \ -fPIC -pie /home/xmrig/monero/build/Linux/master/release/src/cryptonote_basic/libcryptonote_basic.a /home/xmrig/monero/build/Linux/master/release/src/crypto/libcncrypto.a /home/xmrig/monero/build/Linux/master/release/src/common/libcommon.a /home/xmrig/monero/build/Linux/master/release/src/ringct/libringct_basic.a /home/xmrig/monero/build/Linux/master/release/src/device/libdevice.a /home/xmrig/monero/build/Linux/master/release/contrib/epee/src/libepee.a /home/xmrig/monero/build/Linux/master/release/external/easylogging++/libeasylogging.a /home/xmrig/monero/build/Linux/master/release/src/libversion.a /home/xmrig/monero/build/Linux/master/release/external/randomx/librandomx.a \ -llmdb -lpthread -lunbound -ldl -luuid -lboost_system -lboost_date_time -lboost_chrono -lboost_filesystem -lboost_thread -lboost_regex -lboost_serialization -lboost_program_options -lhidapi-libusb \ -L/opt/local/lib/ -L/usr/local/lib \ -levent_core -levent_pthreads -levent -levent_extra -ljson-c -lssl -lcrypto -lsodium /home/xmrig/monero/build/Linux/master/release/src/device/libdevice.a(device_default.cpp.o): In function hw::core::device_default::derive_subaddress_public_key(crypto::public_key const&, crypto::key_derivation const&, unsigned long, crypto::public_key&)': device_default.cpp:(.text+0x119): undefined reference tomonero_crypto_amd64_64_24k_generate_subaddress_public_key' /home/xmrig/monero/build/Linux/master/release/src/device/libdevice.a(device_default.cpp.o): In function hw::core::device_default::generate_key_derivation(crypto::public_key const&, epee::mlocked<tools::scrubbed<crypto::ec_scalar> > const&, crypto::key_derivation&) [clone .localalias.363]': device_default.cpp:(.text+0x398): undefined reference tomonero_crypto_amd64_64_24k_generate_key_derivation' /home/xmrig/monero/build/Linux/master/release/src/device/libdevice.a(device_default.cpp.o): In function hw::core::device_default::encrypt_payment_id(crypto::hash8&, crypto::public_key const&, epee::mlocked<tools::scrubbed<crypto::ec_scalar> > const&)': device_default.cpp:(.text+0x7a1): undefined reference tomonero_crypto_amd64_64_24k_generate_key_derivation' /home/xmrig/monero/build/Linux/master/release/src/device/libdevice.a(device_default.cpp.o): In function hw::core::device_default::generate_output_ephemeral_keys(unsigned long, cryptonote::account_keys const&, crypto::public_key const&, epee::mlocked<tools::scrubbed<crypto::ec_scalar> > const&, cryptonote::tx_destination_entry const&, boost::optional<cryptonote::account_public_address> const&, unsigned long, bool const&, std::vector<epee::mlocked<tools::scrubbed<crypto::ec_scalar> >, std::allocator<epee::mlocked<tools::scrubbed<crypto::ec_scalar> > > > const&, std::vector<crypto::public_key, std::allocator<crypto::public_key> >&, std::vector<rct::key, std::allocator<rct::key> >&, crypto::public_key&)': device_default.cpp:(.text+0x5e25): undefined reference tomonero_crypto_amd64_64_24k_generate_key_derivation' device_default.cpp:(.text+0x60e1): undefined reference to `monero_crypto_amd64_64_24k_generate_key_derivation' collect2: error: ld returned 1 exit status Makefile:172: recipe for target 'monero-pool' failed make: *** [monero-pool] Error 1

Any suggestions? Am on ubuntu 18.04

jtgrassie commented 4 years ago

Looks like you built Monero master branch, not the release branch.

SgtTheDarknezz commented 4 years ago

Looks like you built Monero master branch, not the release branch.

I did indeed type "make" originally, I just recloned the repository and exported the monero github root, and typed make release and got the same result.

Creating object file for src/xmr... g++ -Wp,-MMD,build/release/src/xmr.dd -W -Wall -Wno-unused-parameter -Wuninitialized -Wno-reorder -maes -fPIC -std=c++11 -O3 \ -Isrc -Idata -Irxi/log/src -I/home/xmrig/monero/src -I/home/xmrig/monero/external -I/home/xmrig/monero/external/easylogging++ -I/home/xmrig/monero/contrib/epee/include -I/opt/local/include -I/usr/local/include \ -pthread -I/usr/include/json-c \ -D_GNU_SOURCE -DAUTO_INITIALIZE_EASYLOGGINGPP -DLOG_USE_COLOR -DHAVE_RX \ -c src/xmr.cpp -o build/release/src/xmr.o Creating object file for src/pool... gcc -Wp,-MMD,build/release/src/pool.dd -W -Wall -Wno-unused-parameter -Wuninitialized -Wbad-function-cast -maes -fPIC -std=c99 -O3 \ -Isrc -Idata -Irxi/log/src -I/home/xmrig/monero/src -I/home/xmrig/monero/external -I/home/xmrig/monero/external/easylogging++ -I/home/xmrig/monero/contrib/epee/include -I/opt/local/include -I/usr/local/include -pthread -I/usr/include/json-c \ -D_GNU_SOURCE -DAUTO_INITIALIZE_EASYLOGGINGPP -DLOG_USE_COLOR -DHAVE_RX -c src/pool.c -o build/release/src/pool.o Creating object file for src/forkoff... gcc -Wp,-MMD,build/release/src/forkoff.dd -W -Wall -Wno-unused-parameter -Wuninitialized -Wbad-function-cast -maes -fPIC -std=c99 -O3 \ -Isrc -Idata -Irxi/log/src -I/home/xmrig/monero/src -I/home/xmrig/monero/external -I/home/xmrig/monero/external/easylogging++ -I/home/xmrig/monero/contrib/epee/include -I/opt/local/include -I/usr/local/include -pthread -I/usr/include/json-c \ -D_GNU_SOURCE -DAUTO_INITIALIZE_EASYLOGGINGPP -DLOG_USE_COLOR -DHAVE_RX -c src/forkoff.c -o build/release/src/forkoff.o Creating object file for src/util... gcc -Wp,-MMD,build/release/src/util.dd -W -Wall -Wno-unused-parameter -Wuninitialized -Wbad-function-cast -maes -fPIC -std=c99 -O3 \ -Isrc -Idata -Irxi/log/src -I/home/xmrig/monero/src -I/home/xmrig/monero/external -I/home/xmrig/monero/external/easylogging++ -I/home/xmrig/monero/contrib/epee/include -I/opt/local/include -I/usr/local/include -pthread -I/usr/include/json-c \ -D_GNU_SOURCE -DAUTO_INITIALIZE_EASYLOGGINGPP -DLOG_USE_COLOR -DHAVE_RX -c src/util.c -o build/release/src/util.o Creating object file for src/growbag... Creating object file for src/webui... gcc -Wp,-MMD,build/release/src/growbag.dd -W -Wall -Wno-unused-parameter -Wuninitialized -Wbad-function-cast -maes -fPIC -std=c99 -O3 \ -Isrc -Idata -Irxi/log/src -I/home/xmrig/monero/src -I/home/xmrig/monero/external -I/home/xmrig/monero/external/easylogging++ -I/home/xmrig/monero/contrib/epee/include -I/opt/local/include -I/usr/local/include -pthread -I/usr/include/json-c \ -D_GNU_SOURCE -DAUTO_INITIALIZE_EASYLOGGINGPP -DLOG_USE_COLOR -DHAVE_RX -c src/growbag.c -o build/release/src/growbag.o gcc -Wp,-MMD,build/release/src/webui.dd -W -Wall -Wno-unused-parameter -Wuninitialized -Wbad-function-cast -maes -fPIC -std=c99 -O3 \ -Isrc -Idata -Irxi/log/src -I/home/xmrig/monero/src -I/home/xmrig/monero/external -I/home/xmrig/monero/external/easylogging++ -I/home/xmrig/monero/contrib/epee/include -I/opt/local/include -I/usr/local/include -pthread -I/usr/include/json-c \ -D_GNU_SOURCE -DAUTO_INITIALIZE_EASYLOGGINGPP -DLOG_USE_COLOR -DHAVE_RX -c src/webui.c -o build/release/src/webui.o Creating object file for src/bstack... gcc -Wp,-MMD,build/release/src/bstack.dd -W -Wall -Wno-unused-parameter -Wuninitialized -Wbad-function-cast -maes -fPIC -std=c99 -O3 \ -Isrc -Idata -Irxi/log/src -I/home/xmrig/monero/src -I/home/xmrig/monero/external -I/home/xmrig/monero/external/easylogging++ -I/home/xmrig/monero/contrib/epee/include -I/opt/local/include -I/usr/local/include -pthread -I/usr/include/json-c \ -D_GNU_SOURCE -DAUTO_INITIALIZE_EASYLOGGINGPP -DLOG_USE_COLOR -DHAVE_RX -c src/bstack.c -o build/release/src/bstack.o Creating object file for rxi/log/src/log... gcc -Wp,-MMD,build/release/rxi/log/src/log.dd -W -Wall -Wno-unused-parameter -Wuninitialized -Wbad-function-cast -maes -fPIC -std=c99 -O3 \ -Isrc -Idata -Irxi/log/src -I/home/xmrig/monero/src -I/home/xmrig/monero/external -I/home/xmrig/monero/external/easylogging++ -I/home/xmrig/monero/contrib/epee/include -I/opt/local/include -I/usr/local/include -pthread -I/usr/include/json-c \ -D_GNU_SOURCE -DAUTO_INITIALIZE_EASYLOGGINGPP -DLOG_USE_COLOR -DHAVERX -c rxi/log/src/log.c -o build/release/rxi/log/src/log.o Creating object file for src/webui-embed... xxd -i src/webui-embed.html | sed -e 's/src//' -e 's/embed_//' > build/release/src/webui-embed.c gcc -W -Wall -Wno-unused-parameter -Wuninitialized -Wbad-function-cast -maes -fPIC -std=c99 -O3 -c build/release/src/webui-embed.c -o build/release/src/webui-embed.o Linking build/release/src/xmr.o... g++ -o build/release/monero-pool \ build/release/src/xmr.o build/release/src/pool.o build/release/src/forkoff.o build/release/src/util.o build/release/src/growbag.o build/release/src/webui.o build/release/src/bstack.o build/release/rxi/log/src/log.o build/release/src/webui-embed.o \ -fPIC -pie /home/xmrig/monero/build/Linux/master/release/src/cryptonote_basic/libcryptonote_basic.a /home/xmrig/monero/build/Linux/master/release/src/crypto/libcncrypto.a /home/xmrig/monero/build/Linux/master/release/src/common/libcommon.a /home/xmrig/monero/build/Linux/master/release/src/ringct/libringct_basic.a /home/xmrig/monero/build/Linux/master/release/src/device/libdevice.a /home/xmrig/monero/build/Linux/master/release/contrib/epee/src/libepee.a /home/xmrig/monero/build/Linux/master/release/external/easylogging++/libeasylogging.a /home/xmrig/monero/build/Linux/master/release/src/libversion.a /home/xmrig/monero/build/Linux/master/release/external/randomx/librandomx.a \ -llmdb -lpthread -lunbound -ldl -luuid -lboost_system -lboost_date_time -lboost_chrono -lboost_filesystem -lboost_thread -lboost_regex -lboost_serialization -lboost_program_options -lhidapi-libusb \ -L/opt/local/lib/ -L/usr/local/lib \ -levent_core -levent_pthreads -levent -levent_extra -ljson-c -lssl -lcrypto -lsodium /home/xmrig/monero/build/Linux/master/release/src/device/libdevice.a(device_default.cpp.o): In function hw::core::device_default::derive_subaddress_public_key(crypto::public_key const&, crypto::key_derivation const&, unsigned long, crypto::public_key&)': device_default.cpp:(.text+0x119): undefined reference tomonero_crypto_amd64_64_24k_generate_subaddress_public_key' /home/xmrig/monero/build/Linux/master/release/src/device/libdevice.a(device_default.cpp.o): In function hw::core::device_default::generate_key_derivation(crypto::public_key const&, epee::mlocked<tools::scrubbed<crypto::ec_scalar> > const&, crypto::key_derivation&) [clone .localalias.363]': device_default.cpp:(.text+0x398): undefined reference tomonero_crypto_amd64_64_24k_generate_key_derivation' /home/xmrig/monero/build/Linux/master/release/src/device/libdevice.a(device_default.cpp.o): In function hw::core::device_default::encrypt_payment_id(crypto::hash8&, crypto::public_key const&, epee::mlocked<tools::scrubbed<crypto::ec_scalar> > const&)': device_default.cpp:(.text+0x7a1): undefined reference tomonero_crypto_amd64_64_24k_generate_key_derivation' /home/xmrig/monero/build/Linux/master/release/src/device/libdevice.a(device_default.cpp.o): In function hw::core::device_default::generate_output_ephemeral_keys(unsigned long, cryptonote::account_keys const&, crypto::public_key const&, epee::mlocked<tools::scrubbed<crypto::ec_scalar> > const&, cryptonote::tx_destination_entry const&, boost::optional<cryptonote::account_public_address> const&, unsigned long, bool const&, std::vector<epee::mlocked<tools::scrubbed<crypto::ec_scalar> >, std::allocator<epee::mlocked<tools::scrubbed<crypto::ec_scalar> > > > const&, std::vector<crypto::public_key, std::allocator<crypto::public_key> >&, std::vector<rct::key, std::allocator<rct::key> >&, crypto::public_key&)': device_default.cpp:(.text+0x5e25): undefined reference tomonero_crypto_amd64_64_24k_generate_key_derivation' device_default.cpp:(.text+0x60e1): undefined reference to `monero_crypto_amd64_64_24k_generate_key_derivation' collect2: error: ld returned 1 exit status Makefile:172: recipe for target 'monero-pool' failed make: *** [monero-pool] Error 1

jtgrassie commented 4 years ago

From the Monero build docs:

cd monero
git checkout release-v0.16
make

That is how you build the release branch, not simply "make release".