R Package Installation Issues

Hi all - help appreciated on this one

For the line - devtools::install_github(“TileDB-Inc/TileDB-R@latest”) - past in R I keep getting the error returned;

Downloading GitHub repo TileDB-Inc/TileDB-R@latest
✔  checking for file ‘/tmp/RtmpKs06Eq/remotes267c3b05032a/TileDB-Inc-TileDB-R-7a25b6b/DESCRIPTION’ (392ms)
─  preparing ‘tiledb’:
✔  checking DESCRIPTION meta-information ...
─  cleaning src
─  checking for LF line-endings in source and make files and shell scripts
─  checking for empty or unneeded directories
─  building ‘tiledb_0.1.tar.gz’
   
Installing package into ‘/usr/local/lib/R/site-library’
(as ‘lib’ is unspecified)
* installing *source* package ‘tiledb’ ...
checking for g++... g++
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 we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking how to run the C++ preprocessor... g++ -E
checking whether we are using the GNU C++ compiler... (cached) yes
checking whether g++ accepts -g... (cached) yes
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... no
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking tiledb/tiledb.h usability... no
checking tiledb/tiledb.h presence... no
checking for tiledb/tiledb.h... no
configure: error: unable to find tiledb/tiledb.h
ERROR: configuration failed for package ‘tiledb’
* removing ‘/usr/local/lib/R/site-library/tiledb’
Error in i.p(...) : 
  (converted from warning) installation of package ‘/tmp/RtmpKs06Eq/file267c7336731/tiledb_0.1.tar.gz’ had non-zero exit status
In addition: Warning message:
In is.na(remote_deps$package) :
  is.na() applied to non-(list or vector) of type 'NULL'

Any ideas please?

System: Ubuntu 18.04

Kind Regards

Mor

Hi @MOR ,

It looks like the build process can’t find a TileDB (core library) installation, which needs to be built/installed separately before running devtools::install_github. To build TileDB core from source, see the install instructions, and make sure to run make install-tiledb. If you changed the default PREFIX from /usr/local, then you will need to pass the TileDB path to the install command:

devtools::install_github("TileDB-Inc/TileDB-R@latest",
    args="--configure-args='--with-tiledb=/path/to/tiledb'"")

or make the following exports

export CPATH=$PREFIX/include
export LIBRARY_PATH=$PREFIX/lib
export LD_LIBRARY_PATH=$PREFIX/lib

Similarly, if you installed using Conda, then make the following exports before running the R install:

export CPATH=$CONDA_PREFIX/include
export LIBRARY_PATH=$CONDA_PREFIX/lib
export LD_LIBRARY_PATH=$CONDA_PREFIX/lib

Many thanks for the help Isaiah - could i just check i am o on the install process whist we are here: I run these lines as I build from source;

apt-get update
apt-get install -y build-essential
apt-get install -y cmake

git clone https://github.com/TileDB-Inc/TileDB
cd TileDB
mkdir build
cd build
…/bootstrap
make -j 2
make install-tiledb

Does this all read ok please ? There is no change my end in the config during the build

Kind Regards

Mor

That looks good. With that sequence I don’t believe you will need any exports, but if the same problem occurs use /usr/local as PREFIX in my previous comment.