-
Notifications
You must be signed in to change notification settings - Fork 11
Description
Hi! I'm trying to install from source on Linux. I expected this should be possible, but I get an error message "undefined symbol: mbedtls_ctr_drbg_random" which seems to indicate there is a problem with a mbedtls function.
Output below indicates that the build script found mbedtls 2.28.1. I see that version is not compatible with the version stated in SystemRequirements: 'libnng' >= 1.9 and 'libmbedtls' >= 2.5, or 'cmake' and 'xz' to compile NNG and/or Mbed TLS included in package sources.
This indicates that Mbed TLS is included with package sources, but it is trying to use an incompatible version that is installed on my system.
I would have expected that if an incompatible version is found, the build script should decide to compile Mbed TLS from package source, instead of trying to use the incompatible system version. Could that change be made, please?
Full installation output below.
[thocking@beluga2 downloaded_packages]$ tar xf nanonext_1.6.0.tar.gz
[thocking@beluga2 downloaded_packages]$ R CMD INSTALL nanonext
* installing to library '/home/thocking/R/x86_64-pc-linux-gnu-library/4.4'
* installing *source* package 'nanonext' ...
** package 'nanonext' successfully unpacked and MD5 sums checked
** using staged installation
Existing 'libnng' >= 1.9.0 not found
Detecting 'cmake'...
/cvmfs/soft.computecanada.ca/custom/bin/cmake
Detecting 'xz'...
/cvmfs/soft.computecanada.ca/gentoo/2023/x86-64-v3/usr/bin/xz
Compiling 'libnng' from source ...
-- The C compiler identification is GNU 12.3.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /cvmfs/soft.computecanada.ca/gentoo/2023/x86-64-v3/usr/\
x86_64-pc-linux-gnu/gcc-bin/12/gcc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Configuring for NNG version 1.10.2-pre
-- Performing Test NNG_HIDDEN_VISIBILITY
-- Performing Test NNG_HIDDEN_VISIBILITY - Success
-- Looking for strlcpy
-- Looking for strlcpy - not found
-- Looking for strnlen
-- Looking for strnlen - found
-- Looking for strcasecmp
-- Looking for strcasecmp - found
-- Looking for strncasecmp
-- Looking for strncasecmp - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Looking for lockf
-- Looking for lockf - found
-- Looking for flock
-- Looking for flock - found
-- Looking for getrandom
-- Looking for getrandom - found
-- Looking for arc4random_buf
-- Looking for arc4random_buf - found
-- Looking for clock_gettime
-- Looking for clock_gettime - found
-- Looking for sem_wait in pthread
-- Looking for sem_wait in pthread - found
-- Looking for pthread_atfork in pthread
-- Looking for pthread_atfork in pthread - found
-- Looking for pthread_set_name_np in pthread
-- Looking for pthread_set_name_np in pthread - not found
-- Looking for pthread_setname_np in pthread
-- Looking for pthread_setname_np in pthread - found
-- Looking for gethostbyname in nsl
-- Looking for gethostbyname in nsl - found
-- Looking for socket in socket
-- Looking for socket in socket - not found
-- Looking for __atomic_load_1 in atomic
-- Looking for __atomic_load_1 in atomic - found
-- Looking for AF_UNIX - found
-- Looking for backtrace_symbols_fd
-- Looking for backtrace_symbols_fd - found
-- Performing Test NNG_HAVE_MSG_CONTROL
-- Performing Test NNG_HAVE_MSG_CONTROL - Success
-- Looking for eventfd
-- Looking for eventfd - found
-- Looking for kqueue
-- Looking for kqueue - not found
-- Looking for port_create
-- Looking for port_create - not found
-- Looking for epoll_create
-- Looking for epoll_create - found
-- Looking for epoll_create1
-- Looking for epoll_create1 - found
-- Looking for getpeereid
-- Looking for getpeereid - not found
-- Looking for SO_PEERCRED
-- Looking for SO_PEERCRED - found
-- Performing Test NNG_HAVE_SOCKPEERCRED
-- Performing Test NNG_HAVE_SOCKPEERCRED - Failed
-- Looking for LOCAL_PEERCRED
-- Looking for LOCAL_PEERCRED - not found
-- Looking for LOCAL_PEERPID
-- Looking for LOCAL_PEERPID - not found
-- Looking for getpeerucred
-- Looking for getpeerucred - not found
-- Looking for atomic_flag_test_and_set
-- Looking for atomic_flag_test_and_set - found
-- Looking for socketpair
-- Looking for socketpair - found
-- Found mbedTLS: /cvmfs/soft.computecanada.ca/gentoo/2023/x86-64-v3/usr/lib64/libmbedtl\
s.so (found version "2.28.1")
-- Configuring done (5.9s)
-- Generating done (0.1s)
-- Build files have been written to: /tmp/RtmpKScC18/downloaded_packages/nanonext/nng-11\
0-2a
[ 0%] Building C object CMakeFiles/nng.dir/src/nng.c.o
[ 2%] Building C object CMakeFiles/nng.dir/src/core/aio.c.o
[ 2%] Building C object CMakeFiles/nng.dir/src/core/device.c.o
[ 4%] Building C object CMakeFiles/nng.dir/src/core/dialer.c.o
...
[ 98%] Building C object CMakeFiles/nng.dir/src/supplemental/websocket/websocket.c.o
[100%] Linking C static library libnng.b
[100%] Built target nng
Install the project...
-- Install configuration: "Release"
** libs
using C compiler: 'gcc (Gentoo 12.3.1_p20230526 p2) 12.3.1 20230526'
gcc -I"/cvmfs/soft.computecanada.ca/easybuild/software/2023/x86-64-v4/Compiler/gcccore/r\
/4.4.0/lib64/R/include" -DNDEBUG -I/cvmfs/soft.computecanada.ca/easybuild/software/202\
3/x86-64-v3/Core/java/17.0.6/include -I/cvmfs/soft.computecanada.ca/easybuild/software/2\
023/x86-64-v3/Core/flexiblascore/3.3.1/include -I/cvmfs/soft.computecanada.ca/easybuild/\
software/2023/x86-64-v3/Core/flexiblascore/3.3.1/include/flexiblas -I../install/includ\
e -fvisibility=hidden -fpic -O2 -ftree-vectorize -march=x86-64-v4 -fno-math-errno -c \
aio.c -o aio.o
...
gcc -I"/cvmfs/soft.computecanada.ca/easybuild/software/2023/x86-64-v4/Compiler/gcccore/r\
/4.4.0/lib64/R/include" -DNDEBUG -I/cvmfs/soft.computecanada.ca/easybuild/software/202\
3/x86-64-v3/Core/java/17.0.6/include -I/cvmfs/soft.computecanada.ca/easybuild/software/2\
023/x86-64-v3/Core/flexiblascore/3.3.1/include -I/cvmfs/soft.computecanada.ca/easybuild/\
software/2023/x86-64-v3/Core/flexiblascore/3.3.1/include/flexiblas -I../install/includ\
e -fvisibility=hidden -fpic -O2 -ftree-vectorize -march=x86-64-v4 -fno-math-errno -c \
utils.c -o utils.o
gcc -shared -L/cvmfs/soft.computecanada.ca/easybuild/software/2023/x86-64-v4/Compiler/gc\
ccore/r/4.4.0/lib64/R/lib -o nanonext.so aio.o comms.o core.o init.o ncurl.o net.o proto\
.o sync.o thread.o tls.o utils.o ../install/lib/libnng.b -L/cvmfs/soft.computecanada.ca/\
easybuild/software/2023/x86-64-v4/Compiler/gcccore/r/4.4.0/lib64/R/lib -lR
installing to /home/thocking/R/x86_64-pc-linux-gnu-library/4.4/00LOCK-nanonext/00new/nan\
onext/libs
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
*** copying figures
** building package indices
** installing vignettes
** testing if installed package can be loaded from temporary location
Error: package or namespace load failed for 'nanonext' in dyn.load(file, DLLpath = DLLpath, ...):
unable to load shared object '/home/thocking/R/x86_64-pc-linux-gnu-library/4.4/00LOCK-nanonext/00new/nanonext/libs/nanonext.so':
/home/thocking/R/x86_64-pc-linux-gnu-library/4.4/00LOCK-nanonext/00new/nanonext/libs/nanonext.so: undefined symbol: mbedtls_ctr_drbg_random
Error: loading failed
Execution halted
ERROR: loading failed
* removing '/home/thocking/R/x86_64-pc-linux-gnu-library/4.4/nanonext'
[thocking@beluga2 downloaded_packages]$