Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Package does not compile/install properly #1

Open
eriqande opened this issue Nov 25, 2014 · 3 comments · May be fixed by #2
Open

Package does not compile/install properly #1

eriqande opened this issue Nov 25, 2014 · 3 comments · May be fixed by #2

Comments

@eriqande
Copy link

Hey colin. I sent you some email, but figured I would put it up here too.

I am doing this on a Ubuntu box (since I thought maybe it was an OS X / clang issue.

There is an issue with a boost timer function that causes R CMD INSTALL to fail.

I've included a transcript that I hope will be helpful to you.

Thanks for checking this out.

eric

CLONE IT

2014-11-21 10:17 /eric_play/--% git clone https://github.com/rundel/isoscatR.git

Cloning into 'isoscatR'...
remote: Counting objects: 452, done.
remote: Total 452 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (452/452), 661.04 KiB | 268.00 KiB/s, done.
Resolving deltas: 100% (286/286), done.
Checking connectivity... done.

TRY INSTALLING IT

2014-11-21 10:17 /eric_play/--% R CMD INSTALL isoscatR

  • installing to library ‘/usr/local/lib/R/site-library’
  • installing source package ‘scatR’ ...
    ** libs
    g++ -I/usr/share/R/include -DNDEBUG -I"/usr/local/lib/R/site-library/Rcpp/include" -I"/usr/local/lib/R/site-library/RcppArmadillo/include" -fpic -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -g -c gzip.cpp -o gzip.o
    g++ -I/usr/share/R/include -DNDEBUG -I"/usr/local/lib/R/site-library/Rcpp/include" -I"/usr/local/lib/R/site-library/RcppArmadillo/include" -fpic -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -g -c scatR_R_exports.cpp -o scatR_R_exports.o
    scatR_R_exports.cpp:10:23: fatal error: scatR_cov.h: No such file or directory
    #include "scatR_cov.h"
    ^
    compilation terminated.
    make: *** [scatR_R_exports.o] Error 1
    ERROR: compilation failed for package ‘scatR’
  • removing ‘/usr/local/lib/R/site-library/scatR’

LOOKS LIKE YOUR HEADERS SHOULD BE IN src/ SO I MOVE THEM THERE

2014-11-21 10:21 /isoscatR/--% pwd
/home/biopipe/eric_play/isoscatR

2014-11-21 10:21 /isoscatR/--% cp include/*.h src/

TRY INSTALLING AGAIN:

2014-11-21 10:22 /eric_play/--% R CMD INSTALL isoscatR

  • installing to library ‘/usr/local/lib/R/site-library’
  • installing source package ‘scatR’ ...
    ** libs
    g++ -I/usr/share/R/include -DNDEBUG -I"/usr/local/lib/R/site-library/Rcpp/include" -I"/usr/local/lib/R/site-library/RcppArmadillo/include" -fpic -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -g -c scatR_R_exports.cpp -o scatR_R_exports.o
    g++ -I/usr/share/R/include -DNDEBUG -I"/usr/local/lib/R/site-library/Rcpp/include" -I"/usr/local/lib/R/site-library/RcppArmadillo/include" -fpic -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -g -c scatR_cov.cpp -o scatR_cov.o
    g++ -I/usr/share/R/include -DNDEBUG -I"/usr/local/lib/R/site-library/Rcpp/include" -I"/usr/local/lib/R/site-library/RcppArmadillo/include" -fpic -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -g -c scatR_gpu.cpp -o scatR_gpu.o
    g++ -I/usr/share/R/include -DNDEBUG -I"/usr/local/lib/R/site-library/Rcpp/include" -I"/usr/local/lib/R/site-library/RcppArmadillo/include" -fpic -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -g -c scatR_init.cpp -o scatR_init.o
    g++ -I/usr/share/R/include -DNDEBUG -I"/usr/local/lib/R/site-library/Rcpp/include" -I"/usr/local/lib/R/site-library/RcppArmadillo/include" -fpic -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -g -c scatR_locate.cpp -o scatR_locate.o
    g++ -I/usr/share/R/include -DNDEBUG -I"/usr/local/lib/R/site-library/Rcpp/include" -I"/usr/local/lib/R/site-library/RcppArmadillo/include" -fpic -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -g -c scatR_magma_wrap.cpp -o scatR_magma_wrap.o
    g++ -I/usr/share/R/include -DNDEBUG -I"/usr/local/lib/R/site-library/Rcpp/include" -I"/usr/local/lib/R/site-library/RcppArmadillo/include" -fpic -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -g -c scatR_main.cpp -o scatR_main.o
    g++ -I/usr/share/R/include -DNDEBUG -I"/usr/local/lib/R/site-library/Rcpp/include" -I"/usr/local/lib/R/site-library/RcppArmadillo/include" -fpic -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -g -c scatR_mcmc.cpp -o scatR_mcmc.o
    g++ -I/usr/share/R/include -DNDEBUG -I"/usr/local/lib/R/site-library/Rcpp/include" -I"/usr/local/lib/R/site-library/RcppArmadillo/include" -fpic -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -g -c scatR_util.cpp -o scatR_util.o
    g++ -I/usr/share/R/include -DNDEBUG -I"/usr/local/lib/R/site-library/Rcpp/include" -I"/usr/local/lib/R/site-library/RcppArmadillo/include" -fpic -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -g -c zlib.cpp -o zlib.o
    g++ -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -Wl,-z,relro -o scatR.so gzip.o scatR_R_exports.o scatR_cov.o scatR_gpu.o scatR_init.o scatR_locate.o scatR_magma_wrap.o scatR_main.o scatR_mcmc.o scatR_util.o zlib.o -L/usr/lib/R/lib -lR
    installing to /usr/local/lib/R/site-library/scatR/libs
    ** R
    ** preparing package for lazy loading
    Warning in library(package, lib.loc = lib.loc, character.only = TRUE, logical.return = TRUE, :
    there is no package called ‘raster’
    Warning in library(package, lib.loc = lib.loc, character.only = TRUE, logical.return = TRUE, :
    there is no package called ‘maptools’
    ** help
    Warning: /home/biopipe/eric_play/isoscatR/man/Rscat-package.Rd:33: All text must be in a section
    *** installing help indices
    ** building package indices
    ** testing if installed package can be loaded
    Error in dyn.load(file, DLLpath = DLLpath, ...) :
    unable to load shared object '/usr/local/lib/R/site-library/scatR/libs/scatR.so':
    /usr/local/lib/R/site-library/scatR/libs/scatR.so: undefined symbol: _ZNK5boost5timer9cpu_timer7elapsedEv
    Error: loading failed
    Execution halted
    ERROR: loading failed
  • removing ‘/usr/local/lib/R/site-library/scatR’

SO, IT ALL LOOKED GOOD UNTIL IT FAILED TO LOAD SCATR.SO

So, it looks to me Colin like there is a boost timer function that is problematic.

LET'S SEE WHAT HAPPENS IF WE ROLL IT BACK TO THE COMMIT YOU

MADE ON JAN 31, 2013

2014-11-21 10:46 /isoscatR/--% git checkout 45d157c

Note: checking out '45d157cc67c03791660fa818eabfb6aeab5f62ff'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

git checkout -b new_branch_name

HEAD is now at 45d157c... Fix iomanip

2014-11-21 10:46 /isoscatR/--% git checkout -b roll-back

2014-11-21 10:48 /isoscatR/--% cp include/*.h src/

SAME ERROR AT LINKING STAGE.

HERE IS MY BOOST VERSION:

2014-11-21 10:53 /eric_play/--% apt-show-versions libboost-all-dev

libboost-all-dev:amd64/trusty 1.54.0.1ubuntu1 uptodate

@rundel
Copy link
Owner

rundel commented Nov 25, 2014

I haven't had a chance to look at it yet, I'm playing with it now.

My first guess is there is some issue with with the configure file. Can you try running autoconf in the package directory first and then running R CMD INSTALL .

@rundel
Copy link
Owner

rundel commented Nov 25, 2014

I've just pushed a couple of changes to the autoconf configure that get things working for me. I've included the configure file as well - give it a try and let me know where things make it now on your end.

@eriqande eriqande linked a pull request Nov 25, 2014 that will close this issue
@eriqande
Copy link
Author

Thanks Colin!

Those changes worked like a charm on our Ubuntu box. I didn't even need to run autoconf
first.

It failed at the linking stage on the Mac running 10.9.4. It needed -lboost_system specifically in the
LDFLAGS. I added those to configure.ac and then ran autoconf to get them in configure. It
installs on my Mac no problems now. Changes that I made are in pull request #2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants