vtnerd / monero-lws

Monero Light Wallet Server (scans monero viewkeys and implements mymonero API). Fast LMDB backend.
BSD 3-Clause "New" or "Revised" License
78 stars 29 forks source link

Unable to build monero-lws #116

Closed Demontager closed 6 months ago

Demontager commented 6 months ago

Hello, tried to build monero-lws against current monero release-v0.18 and received an error: undefined reference to symbol 'crypto_verify_32

Full build log: `

dem@dem-mate:~/monero-lws/build$ cmake -DMONERO_SOURCE_DIR=/home/dem/monero -DMONERO_BUILD_DIR=/home/dem/monero/build/Linux/release-v0.18/release .. -- The C compiler identification is GNU 11.4.0 -- The CXX compiler identification is GNU 11.4.0 -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: /usr/bin/cc - skipped -- Detecting C compile features -- Detecting C compile features - done -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: /usr/bin/c++ - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- Looking for pthread.h -- Looking for pthread.h - found -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success -- Found Threads: TRUE
-- Configuring done -- Generating done -- Build files have been written to: /home/dem/monero-lws/build

end of make command: [ 51%] Built target monero-lws-util [ 53%] Building CXX object src/wire/json/CMakeFiles/monero-lws-wire-json.dir/error.cpp.o [ 55%] Building CXX object src/wire/json/CMakeFiles/monero-lws-wire-json.dir/read.cpp.o [ 58%] Building CXX object src/wire/json/CMakeFiles/monero-lws-wire-json.dir/write.cpp.o [ 60%] Linking CXX static library libmonero-lws-wire-json.a [ 60%] Built target monero-lws-wire-json [ 62%] Building CXX object src/wire/wrapper/CMakeFiles/monero-lws-wire-wrapper.dir/variant.cpp.o [ 65%] Linking CXX static library libmonero-lws-wire-wrapper.a [ 65%] Built target monero-lws-wire-wrapper [ 67%] Building CXX object src/rpc/CMakeFiles/monero-lws-rpc.dir/admin.cpp.o [ 69%] Building CXX object src/rpc/CMakeFiles/monero-lws-rpc.dir/client.cpp.o [ 72%] Building CXX object src/rpc/CMakeFiles/monero-lws-rpc.dir/daemon_pub.cpp.o [ 74%] Building CXX object src/rpc/CMakeFiles/monero-lws-rpc.dir/daemon_zmq.cpp.o [ 76%] Building CXX object src/rpc/CMakeFiles/monero-lws-rpc.dir/light_wallet.cpp.o [ 79%] Building CXX object src/rpc/CMakeFiles/monero-lws-rpc.dir/lws_pub.cpp.o [ 81%] Building CXX object src/rpc/CMakeFiles/monero-lws-rpc.dir/rates.cpp.o [ 83%] Linking CXX static library libmonero-lws-rpc.a [ 83%] Built target monero-lws-rpc [ 86%] Building CXX object src/CMakeFiles/monero-lws-daemon-common.dir/rest_server.cpp.o [ 88%] Building CXX object src/CMakeFiles/monero-lws-daemon-common.dir/scanner.cpp.o [ 90%] Linking CXX static library libmonero-lws-daemon-common.a [ 90%] Built target monero-lws-daemon-common [ 93%] Building CXX object src/CMakeFiles/monero-lws-daemon.dir/server_main.cpp.o [ 95%] Linking CXX executable monero-lws-daemon /usr/bin/ld: /home/dem/monero/build/Linux/release-v0.18/release/src/cryptonote_core/libcryptonote_core.a(cryptonote_tx_utils.cpp.o): undefined reference to symbol 'crypto_verify_32' /usr/bin/ld: /lib/x86_64-linux-gnu/libsodium.so.23: error adding symbols: DSO missing from command line collect2: error: ld returned 1 exit status make[2]: [src/CMakeFiles/monero-lws-daemon.dir/build.make:146: src/monero-lws-daemon] Error 1 make[1]: [CMakeFiles/Makefile2:295: src/CMakeFiles/monero-lws-daemon.dir/all] Error 2 make: *** [Makefile:136: all] Error 2

`

vtnerd commented 6 months ago

Did you compile the master branch of LWS against the release-v0.18 branch of monero? That's what it looks like.

You have to compile master-to-master or release-to-release. I would recommend switching to the latest LWS release branch, as it has all the same features of master currently.

Demontager commented 6 months ago

You are right. Then i switched to the latest lws release and build was successful.

` $ git branch -r origin/HEAD -> origin/master origin/develop origin/feature/delete_uuid_admin origin/feature/enterprise_scanning origin/feature/zmq_pub_spends origin/feature/zmq_pub_spends_2 origin/fix/build_usb origin/fix/subaddress_divide_by_zero origin/master origin/release-v0.1_0.17 origin/release-v0.2_0.18 origin/release-v0.3_0.18 origin/tests/sync_chain dem@nas:~/Projects/monero-lws$ git checkout release-v0.3_0.18 branch 'release-v0.3_0.18' set up to track 'origin/release-v0.3_0.18'. Switched to a new branch 'release-v0.3_0.18'

$ mkdir build && cd build $ cmake -DMONERO_SOURCE_DIR=/home/dem/Projects/monero -DMONERO_BUILD_DIR=/home/dem/Projects/monero/build/Linux/release-v0.18/release .. -- The C compiler identification is GNU 12.2.0 -- The CXX compiler identification is GNU 12.2.0 -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: /usr/bin/cc - skipped -- Detecting C compile features -- Detecting C compile features - done -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: /usr/bin/c++ - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success -- Found Threads: TRUE
-- Configuring done -- Generating done -- Build files have been written to: /home/dem/Projects/monero-lws/build

End of the build:

[ 83%] Linking CXX static library libmonero-lws-rpc.a [ 83%] Built target monero-lws-rpc [ 86%] Building CXX object src/CMakeFiles/monero-lws-daemon-common.dir/rest_server.cpp.o [ 88%] Building CXX object src/CMakeFiles/monero-lws-daemon-common.dir/scanner.cpp.o [ 90%] Linking CXX static library libmonero-lws-daemon-common.a [ 90%] Built target monero-lws-daemon-common [ 93%] Building CXX object src/CMakeFiles/monero-lws-daemon.dir/server_main.cpp.o [ 95%] Linking CXX executable monero-lws-daemon /usr/bin/ld: warning: ge25519_nielsadd2.s.o: missing .note.GNU-stack section implies executable stack /usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker [ 95%] Built target monero-lws-daemon [ 97%] Building CXX object src/CMakeFiles/monero-lws-admin.dir/admin_main.cpp.o [100%] Linking CXX executable monero-lws-admin /usr/bin/ld: warning: ge25519_nielsadd2.s.o: missing .note.GNU-stack section implies executable stack /usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker [100%] Built target monero-lws-admin

`