On Wednesday, 2 June 2021 at 17:49:49 UTC, Steven Schveighoffer
wrote:
What's happening is that the dynamic linker is trying to
resolve that symbol, but cannot find it in the given library.
Try `ldd code/rbasic.so` and see if it tells you the things it
is looking for. Many times, you will see "Not found" or
something and you know what library to install/look for.
I ran `ldd`, it looks as if all the symbols are resolved
```
$ ldd rbasic.so
linux-vdso.so.1 (0x00007ffe7af56000)
libR.so => /lib/libR.so (0x00007f269adb8000)
libdruntime-ldc-shared.so.94 =>
/snap/ldc2/170/bin/../lib/libdruntime-ldc-shared.so.94
(0x00007f269ac0c000)
libblas.so.3 => /lib/x86_64-linux-gnu/libblas.so.3
(0x00007f269920d000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f26990be000)
libreadline.so.8 => /lib/x86_64-linux-gnu/libreadline.so.8
(0x00007f269906e000)
libpcre2-8.so.0 => /lib/x86_64-linux-gnu/libpcre2-8.so.0
(0x00007f2698fdc000)
liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5
(0x00007f2698fb3000)
libbz2.so.1.0 => /lib/x86_64-linux-gnu/libbz2.so.1.0
(0x00007f2698fa0000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f2698f84000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2
(0x00007f2698f7e000)
libicuuc.so.66 => /lib/x86_64-linux-gnu/libicuuc.so.66
(0x00007f2698d98000)
libicui18n.so.66 => /lib/x86_64-linux-gnu/libicui18n.so.66
(0x00007f2698a97000)
libgomp.so.1 => /lib/x86_64-linux-gnu/libgomp.so.1
(0x00007f2698a55000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0
(0x00007f2698a32000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f2698840000)
/lib64/ld-linux-x86-64.so.2 (0x00007f269b29e000)
librt.so.1 => /snap/core/current/lib/x86_64-linux-gnu/librt.so.1
(0x00007f2698638000)
libgcc_s.so.1 =>
/snap/core/current/lib/x86_64-linux-gnu/libgcc_s.so.1
(0x00007f2698420000)
libtinfo.so.6 => /lib/x86_64-linux-gnu/libtinfo.so.6
(0x00007f26983f0000)
libicudata.so.66 => /lib/x86_64-linux-gnu/libicudata.so.66
(0x00007f269692f000)
libstdc++.so.6 => /lib/x86_64-linux-gnu/libstdc++.so.6
(0x00007f269674e000)
```
Otherwise, it might be that librt.so.1 seemed to have
__clock_nanosleep when it was built, but the librt.so.1 it is
loading during runtime does not have it. Are you building on
one machine and then running on another?
I am building and running on the same machine.