ms609 / Quartet

R package to calculate the similarity of two trees based on the number of shared four-taxon subtrees (or splits)

Home Page:https://ms609.github.io/Quartet/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Install fails on R version 3.4.3 (2017-11-30) (MacOSX)

RaSieb opened this issue · comments

The error message is:

> devtools::install_github('ms609/SlowQuartet')
Downloading GitHub repo ms609/SlowQuartet@master
from URL https://api.github.com/repos/ms609/SlowQuartet/zipball/master
Installing SlowQuartet
'/Library/Frameworks/R.framework/Resources/bin/R' --no-site-file --no-environ --no-save --no-restore --quiet CMD INSTALL  \
  '/private/var/folders/wh/ngnn010j5k3d6b590f225flw0000gn/T/RtmpWBFK3S/devtools3e24f51786a/ms609-SlowQuartet-db8c3e5'  \
  --library='/Library/Frameworks/R.framework/Versions/3.4/Resources/library' --install-tests 

* installing *source* package ‘SlowQuartet’ ...
** libs
clang -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG  -I"/Library/Frameworks/R.framework/Versions/3.4/Resources/library/Rcpp/include" -I/usr/local/include   -fPIC  -Wall -g -O2  -c SlowQuartet-init.c -o SlowQuartet-init.o
clang++ -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG  -I"/Library/Frameworks/R.framework/Versions/3.4/Resources/library/Rcpp/include" -I/usr/local/include   -fPIC  -Wall -g -O2  -c phangorn_bip.cpp -o phangorn_bip.o
clang++ -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup -single_module -multiply_defined suppress -L/Library/Frameworks/R.framework/Resources/lib -L/usr/local/lib -o SlowQuartet.so SlowQuartet-init.o phangorn_bip.o -F/Library/Frameworks/R.framework/.. -framework R -Wl,-framework -Wl,CoreFoundation
installing to /Library/Frameworks/R.framework/Versions/3.4/Resources/library/SlowQuartet/libs
** R
** data
*** moving datasets to lazyload DB
** inst
** tests
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded
Error: package or namespace load failed for ‘SlowQuartet’ in dyn.load(file, DLLpath = DLLpath, ...):
 unable to load shared object '/Library/Frameworks/R.framework/Versions/3.4/Resources/library/SlowQuartet/libs/SlowQuartet.so':
  dlopen(/Library/Frameworks/R.framework/Versions/3.4/Resources/library/SlowQuartet/libs/SlowQuartet.so, 6): Symbol not found: __SlowQuartet_phangorn_bipCPP
  Referenced from: /Library/Frameworks/R.framework/Versions/3.4/Resources/library/SlowQuartet/libs/SlowQuartet.so
  Expected in: flat namespace
 in /Library/Frameworks/R.framework/Versions/3.4/Resources/library/SlowQuartet/libs/SlowQuartet.so
Error: loading failed
Execution halted
ERROR: loading failed
* removing ‘/Library/Frameworks/R.framework/Versions/3.4/Resources/library/SlowQuartet’
Installation failed: Command failed (1)

Thanks for the report – looking into it now.

This has been a difficult problem to pinpoint.

I'm hoping that the problem is that files generated procedurally by Rcpp were not under Git version control, and thus not uploaded to the GitHub repository. I've told Git not to ignore those files, which will hopefully permit their installation.

Failing that, it might be worth downloading the GitHub repository into a local directory, and using devtools::install('path/to/dir', args='--no-multiarch').

I've encountered other related issues whilst investigating the bug, so something else to check is that you are using 32-bit or 64-bit software consistently – something that I usually overlook when updating R.

You may also need to check that you have the latest installation of Rtools, including both the 32-bit and 64-bit components.

You may also want to check that your system $_PATH is up to date – not, for example, pointing to a previous installation of R, or a 32-bit version of MINGW when you are running a 64-bit version of R.

On this front, it might help to use the --no-multiarch option when installing, i.e.
devtools::install_github('ms609/SlowQuartet', args='--no-multiarch')

Do let me know how you get on.