Yikun / BBS

The Bioconductor Build System
0 stars 0 forks source link

tiledb.install #26

Open Yikun opened 1 year ago

Yikun commented 1 year ago
##############################################################################
##############################################################################
###
### Running command:
###
###   /home/biocbuild/bbs-3.17-bioc/R/bin/Rscript -e "source('/home/biocbuild/BBS/utils/installNonTargetPkg.R');installNonTargetPkg('tiledb')"
###
##############################################################################
##############################################################################

trying URL 'https://cran.rstudio.com/src/contrib/tiledb_0.18.0.tar.gz'
Content type 'application/x-gzip' length 433482 bytes (423 KB)
==================================================
downloaded 423 KB

* 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++14 accepts -g... yes
checking for g++ -std=gnu++14 option to enable C++11 features... none needed
checking how to run the C++ preprocessor... g++ -std=gnu++14 -E
checking whether the compiler supports GNU C++... (cached) yes
checking whether g++ -std=gnu++14 accepts -g... (cached) yes
checking for g++ -std=gnu++14 option to enable C++11 features... (cached) none needed
checking whether g++ -std=gnu++14 supports C++17 features by default... no
checking whether g++ -std=gnu++14 supports C++17 features with -std=gnu++17... 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 tiledb/tiledb... no
configure: error: currently unsupported system Linux on aarch64
ERROR: configuration failed for package ‘tiledb’
* removing ‘/home/biocbuild/bbs-3.17-bioc/R/library/tiledb’

The downloaded source packages are in
    ‘/tmp/RtmpSoMxXx/downloaded_packages’
Updating HTML index of packages in '.Library'
Making 'packages.html' ... done
Warning message:
In install.packages(pkg, repos = .NON_TARGET_REPOS, dependencies = FALSE,  :
  installation of package ‘tiledb’ had non-zero exit status
martin-g commented 1 year ago

Reported upstream: https://github.com/TileDB-Inc/TileDB-R/issues/520

martin-g commented 1 year ago

The issue has been worked around by installing libtiledb-dev from the Ubuntu packages. With this the INSTALL phase passed! If we face more issues we may build tiledb from source as suggested by @eddelbuettel. In any case we will need such "workaround" until [the] artifacts for the 'aarch64' architecture are provided.

eddelbuettel commented 1 year ago

Please my comment in the issue for fuller context. It would be lovely if TileDB could be built from source so that the R package can be more fully-featured.

hpages commented 1 year ago

It would be lovely if TileDB could be built from source so that the R package can be more fully-featured.

Sure but from a Bioconductor build system perspective we only need the tiledb package on the build machines to support Bioconductor package TileDBArray, so lack of AWS S3 support would only be a problem if the vignettes/examples/unit tests in TileDBArray need that feature. And I don't know if that's the case so we'll see.

In other words, as long as using libtiledb-dev allows tiledb to install and TileDBArray to pass BUILD and CHECK, then we're good. :smiley:

BTW any idea if/when TileDB-Inc will provide pre-built TileDB Embedded libraries for aarch64?

Thanks!

eddelbuettel commented 1 year ago

Yes, thanks @hpages: this became clear eventually. For testing TileDBArray this will suffice and be reliable thanks to the Ubuntu package -- one of the reason I look after those.

We started to support arm64/aarch64 via Conda. Getting standard builds up we could use here is a matter of finding a build instance of that architecture within the CI frameworks we use, and wiring up the build. It is on our TODO list, but as company we also have to look after our paying customers first, and they have not yet requested this.

This could also be accelerated by the community: our CI scripts are in the GitHub repo like the rest of the TileDB Core code, and we do take good pull requests.