-
Notifications
You must be signed in to change notification settings - Fork 23
Open
Description
The configure script decides to download a pre-built binary, but that is linked against glibc not musl, and loading fails with
** testing if installed package can be loaded from temporary location
Error: package or namespace load failed for 'tiledb' in dyn.load(file, DLLpath = DLLpath, ...):
unable to load shared object '/home/runner/R-patched/lib/00LOCK-tiledb/00new/tiledb/libs/tiledb.so':
Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /home/runner/R-patched/lib/00LOCK-tiledb/00new/tiledb/libs/../tiledb/lib/libtiledb.so.2.26)
So I tried to install the R package with --configure-args=--enable-building, but that fails from TileDB's bootstrap script with "cannot find cplusplus compiler", see the log below (note also how configuration ignores that error and proceeds to no avail). The culprit seems to be
cxx_compiler=`which ${CXX}`
when CXX = g++ -std=gnu++17.
Installation log with '--enable-building'
* installing to library '/tmp/user/lib'
* installing *source* package 'tiledb' ...
** package 'tiledb' successfully unpacked and MD5 sums checked
** using staged installation
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C++... yes
checking whether g++ -std=gnu++17 accepts -g... yes
checking for g++ -std=gnu++17 option to enable C++11 features... none needed
checking how to run the C++ preprocessor... g++ -std=gnu++17 -E
checking whether the compiler supports GNU C++... (cached) yes
checking whether g++ -std=gnu++17 accepts -g... (cached) yes
checking for g++ -std=gnu++17 option to enable C++11 features... (cached) none needed
checking whether g++ -std=gnu++17 supports C++17 features by default... yes
checking for pkg-config... /usr/bin/pkg-config
checking if pkg-config knows TileDB... no
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for filesystem... yes
checking for tiledb/tiledb... no
checking for cmake... yes
checking for curl... yes
checking for git... yes
installing TileDB via building locally...
Downloading default: https://github.com/TileDB-Inc/TileDB/archive/2.26.2.tar.gz ...
Argument '--force-build-all-deps' has no effect and will be removed in a future version. Vcpkg builds all dependencies by default, please consult the guide in doc/dev/BUILD.md or vcpkg's documentation to see how to provide your own dependencies.
which: unrecognized option: s
BusyBox v1.37.0 (2024-12-13 21:18:49 UTC) multi-call binary.
Usage: which [-a] COMMAND...
Locate COMMAND
-a Show all matches
cannot find cplusplus compiler
using inst/tiledb/{lib,include}
configure: creating ./config.status
config.status: creating src/Makevars
** libs
using C compiler: 'gcc (Alpine 14.2.0) 14.2.0'
using C++ compiler: 'g++ (Alpine 14.2.0) 14.2.0'
using C++17
g++ -std=gnu++17 -I"/home/runner/R-patched/build/include" -DNDEBUG -I. -I../inst/include/ -I../inst/tiledb/include -DTILEDB_SILENT_BUILD -I'/home/runner/R-patched/lib/Rcpp/include' -I'/home/runner/R-patched/lib/RcppInt64/include' -I'/home/runner/R-patched/lib/nanoarrow/include' -I/usr/local/include -fpic -O2 -mtune=native -Wno-ignored-attributes -D__MUSL__ -c RcppExports.cpp -o RcppExports.o
In file included from RcppExports.cpp:4:
../inst/include/tiledb.h:8:10: fatal error: tiledb/tiledb: No such file or directory
8 | #include <tiledb/tiledb>
| ^~~~~~~~~~~~~~~
compilation terminated.
make: *** [/home/runner/R-patched/build/etc/Makeconf:204: RcppExports.o] Error 1
ERROR: compilation failed for package 'tiledb'
* removing '/tmp/user/lib/tiledb'
Metadata
Metadata
Assignees
Labels
No labels