MAURICIO ZAMBRANO BIGIARINI
2015-Jul-21 03:21 UTC
[Rd] ' --enable-R-shlib' problem when setting up R-devel in Linux Mint 17.1 64-bit
Dear list, This is my first time trying to set up the development version of R (R-devel ) in my local machine to test some packages before submitting them to CRAN. I'm using Linux Mint 17.1 64-bit, which is an Ubuntu-based distro. However, I'm not able to correctly set up r-devel, apparently due to a problem with enabling the shared library support. I run the first script given by Dirk Eddelbuettel (changing '~/SVN/R-devel/trunk' by '~/svn/r-devel' as my local copy of r-devel) on: https://stat.ethz.ch/pipermail/r-sig-debian/2012-August/001935.html After running that script, the error message I get is: `ls ../unix/*.o ../appl/*.o ../nmath/*.o` ../extra/tre/libtre.a -lblas -lgfortran -lm -lquadmath -lreadline -lpcre -llzma -lbz2 -lz -lrt -ldl -lm -licuuc -licui18n /usr/bin/ld: ../appl/dchdc.o: relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC ../appl/dchdc.o: error adding symbols: Bad value collect2: error: ld returned 1 exit status make[3]: *** [libR.so] Error 1 make[3]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/main' make[2]: *** [R] Error 2 make[2]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/main' make[1]: *** [R] Error 1 make[1]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src' make: *** [R] Error 1 *** Done -- now run 'make install' and the complete output of the make part of that script is below: R is now configured for x86_64-unknown-linux-gnu Source directory: . Installation directory: /usr/local/lib/R-devel C compiler: ccache gcc -ggdb -pipe -std=gnu99 -Wall -pedantic Fortran 77 compiler: ccache gfortran -g -O2 C++ compiler: ccache g++ -ggdb -pipe -Wall -pedantic C++11 compiler: ccache g++ -std=c++11 -ggdb -pipe -Wall -pedantic Fortran 90/95 compiler: ccache gfortran -g -O2 Obj-C compiler: Interfaces supported: X11, tcltk External libraries: readline, BLAS(generic), LAPACK(generic), curl Additional capabilities: PNG, JPEG, TIFF, NLS, cairo, ICU Options enabled: shared R library, R profiling Capabilities skipped: Options not enabled: shared BLAS, memory profiling Recommended packages: no make[1]: Entering directory `/home/hzambran/SVN/R-devel/trunk/doc/manual' make[1]: Nothing to be done for `front-matter'. make[1]: Nothing to be done for `html-non-svn'. make[1]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/doc/manual' SVN-REVISION is unchanged make[1]: Entering directory `/home/hzambran/SVN/R-devel/trunk/m4' make[1]: Nothing to be done for `R'. make[1]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/m4' make[1]: Entering directory `/home/hzambran/SVN/R-devel/trunk/tools' make[1]: Nothing to be done for `R'. make[1]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/tools' make[1]: Entering directory `/home/hzambran/SVN/R-devel/trunk/doc' make[2]: Entering directory `/home/hzambran/SVN/R-devel/trunk/doc/html' make[2]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/doc/html' make[2]: Entering directory `/home/hzambran/SVN/R-devel/trunk/doc/manual' make[2]: Nothing to be done for `R'. make[2]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/doc/manual' make[1]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/doc' make[1]: Entering directory `/home/hzambran/SVN/R-devel/trunk/etc' make[1]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/etc' make[1]: Entering directory `/home/hzambran/SVN/R-devel/trunk/share' make[1]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/share' make[1]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src' make[2]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/scripts' creating src/scripts/R.fe make[3]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/scripts' make[3]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/scripts' make[2]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/scripts' make[2]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/include' config.status: creating src/include/config.h config.status: src/include/config.h is unchanged Rmath.h is unchanged make[3]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/include/R_ext' make[3]: Nothing to be done for `R'. make[3]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/include/R_ext' make[2]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/include' make[2]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/extra' make[3]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/extra/tre' make[4]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/extra/tre' make[4]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/extra/tre' make[4]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/extra/tre' make[4]: `libtre.a' is up to date. make[4]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/extra/tre' make[3]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/extra/tre' make[2]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/extra' make[2]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/appl' make[3]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/appl' make[3]: `libappl.a' is up to date. make[3]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/appl' make[2]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/appl' make[2]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/nmath' make[3]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/nmath' make[3]: `libnmath.a' is up to date. make[3]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/nmath' make[2]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/nmath' make[2]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/unix' make[3]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/unix' make[3]: `libunix.a' is up to date. make[3]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/unix' make[3]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/unix' ccache gcc -I. -I../../src/include -I../../src/include -I/usr/local/include -DHAVE_CONFIG_H -fopenmp -fpic -ggdb -pipe -std=gnu99 -Wall -pedantic -L/usr/local/lib -DR_HOME='"/home/hzambran/SVN/R-devel/trunk"' \ -o Rscript ./Rscript.c make[3]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/unix' make[2]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/unix' make[2]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/main' make[3]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/main' ccache gcc -shared -fopenmp -L/usr/local/lib -o libR.so CommandLineArgs.o Rdynload.o Renviron.o RNG.o agrep.o apply.o arithmetic.o array.o attrib.o bind.o builtin.o character.o coerce.o colors.o complex.o connections.o context.o cum.o dcf.o datetime.o debug.o deparse.o devices.o dotcode.o dounzip.o dstruct.o duplicate.o edit.o engine.o envir.o errors.o eval.o format.o gevents.o gram.o gram-ex.o graphics.o grep.o identical.o inlined.o inspect.o internet.o iosupport.o lapack.o list.o localecharset.o logic.o main.o mapply.o match.o memory.o names.o objects.o options.o paste.o platform.o plot.o plot3d.o plotmath.o print.o printarray.o printvector.o printutils.o qsort.o random.o raw.o registration.o relop.o rlocale.o saveload.o scan.o seq.o serialize.o sort.o source.o split.o sprintf.o startup.o subassign.o subscript.o subset.o summary.o sysutils.o times.o unique.o util.o version.o g_alab_her.o g_cntrlify.o g_fontdb.o g_her_glyph.o xxxpr.o `ls ../unix/*.o ../appl/*.o ../nmath/*.o` ../extra/tre/libtre.a -lblas -lgfortran -lm -lquadmath -lreadline -lpcre -llzma -lbz2 -lz -lrt -ldl -lm -licuuc -licui18n /usr/bin/ld: ../appl/dchdc.o: relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC ../appl/dchdc.o: error adding symbols: Bad value collect2: error: ld returned 1 exit status make[3]: *** [libR.so] Error 1 make[3]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/main' make[2]: *** [R] Error 2 make[2]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/main' make[1]: *** [R] Error 1 make[1]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src' make: *** [R] Error 1 *** Done -- now run 'make install' I would highly appreciate any advice on how to solve this issue or how to correctly set up r-devel. Thanks in advance, Mauricio Zambrano-Bigiarini, PhD ====================================Dept. of Civil Engineering Faculty of Engineering and Sciences Universidad de La Frontera PO Box 54-D, Temuco, Chile ====================================mailto : mauricio.zambrano at ufrontera.cl work-phone : +56 45 259 2812 http://ingenieriacivil.ufro.cl/ ===================================="When the pupil is ready, the master arrives." (Zen proverb) ====================================Linux user #454569 -- Linux Mint user
MAURICIO ZAMBRANO BIGIARINI
2015-Jul-21 05:15 UTC
[Rd] ' --enable-R-shlib' problem when setting up R-devel in Linux Mint 17.1 64-bit
Regarding the previous problem with setting up r-devel in Linux Mint 17.1 64-bit, I deleted all the r-devel files I previously had, and then I did the check out to the '~/svn/r-devel' directory originally mentioned by by Dirk on https://stat.ethz.ch/pipermail/r-sig-debian/2012-August/001935.html, instead of the customised location I previously chose: '~/SVN/R-devel/trunk' and now I everything worked perfectly fine. However, I'm still wondering what should I change in the first script proposed by Dirk on https://stat.ethz.ch/pipermail/r-sig-debian/2012-August/001935.html if i want to use a user-defined location for the development files (e.g., '~/SVN/R-devel/trunk'). I meant, in addition to the line: cd ~/svn/r-devel Kind regards, Mauricio ===================================="When the pupil is ready, the master arrives." (Zen proverb) ====================================Linux user #454569 -- Linux Mint user On 21 July 2015 at 00:21, MAURICIO ZAMBRANO BIGIARINI <mauricio.zambrano at ufrontera.cl> wrote:> Dear list, > > This is my first time trying to set up the development version of R > (R-devel ) in my local machine to test some packages before submitting > them to CRAN. I'm using Linux Mint 17.1 64-bit, which is an > Ubuntu-based distro. > > However, I'm not able to correctly set up r-devel, apparently due to a > problem with enabling the shared library support. > > > I run the first script given by Dirk Eddelbuettel (changing > '~/SVN/R-devel/trunk' by '~/svn/r-devel' as my local copy of r-devel) > on: > https://stat.ethz.ch/pipermail/r-sig-debian/2012-August/001935.html > > > After running that script, the error message I get is: > > `ls ../unix/*.o ../appl/*.o ../nmath/*.o` ../extra/tre/libtre.a > -lblas -lgfortran -lm -lquadmath -lreadline -lpcre -llzma -lbz2 -lz > -lrt -ldl -lm -licuuc -licui18n > /usr/bin/ld: ../appl/dchdc.o: relocation R_X86_64_32 against `.rodata' > can not be used when making a shared object; recompile with -fPIC > ../appl/dchdc.o: error adding symbols: Bad value > collect2: error: ld returned 1 exit status > make[3]: *** [libR.so] Error 1 > make[3]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/main' > make[2]: *** [R] Error 2 > make[2]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/main' > make[1]: *** [R] Error 1 > make[1]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src' > make: *** [R] Error 1 > *** Done -- now run 'make install' > > > and the complete output of the make part of that script is below: > > R is now configured for x86_64-unknown-linux-gnu > > Source directory: . > Installation directory: /usr/local/lib/R-devel > > C compiler: ccache gcc -ggdb -pipe -std=gnu99 -Wall -pedantic > Fortran 77 compiler: ccache gfortran -g -O2 > > C++ compiler: ccache g++ -ggdb -pipe -Wall -pedantic > C++11 compiler: ccache g++ -std=c++11 -ggdb -pipe -Wall -pedantic > Fortran 90/95 compiler: ccache gfortran -g -O2 > Obj-C compiler: > > Interfaces supported: X11, tcltk > External libraries: readline, BLAS(generic), LAPACK(generic), curl > Additional capabilities: PNG, JPEG, TIFF, NLS, cairo, ICU > Options enabled: shared R library, R profiling > > Capabilities skipped: > Options not enabled: shared BLAS, memory profiling > > Recommended packages: no > > make[1]: Entering directory `/home/hzambran/SVN/R-devel/trunk/doc/manual' > make[1]: Nothing to be done for `front-matter'. > make[1]: Nothing to be done for `html-non-svn'. > make[1]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/doc/manual' > SVN-REVISION is unchanged > make[1]: Entering directory `/home/hzambran/SVN/R-devel/trunk/m4' > make[1]: Nothing to be done for `R'. > make[1]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/m4' > make[1]: Entering directory `/home/hzambran/SVN/R-devel/trunk/tools' > make[1]: Nothing to be done for `R'. > make[1]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/tools' > make[1]: Entering directory `/home/hzambran/SVN/R-devel/trunk/doc' > make[2]: Entering directory `/home/hzambran/SVN/R-devel/trunk/doc/html' > make[2]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/doc/html' > make[2]: Entering directory `/home/hzambran/SVN/R-devel/trunk/doc/manual' > make[2]: Nothing to be done for `R'. > make[2]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/doc/manual' > make[1]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/doc' > make[1]: Entering directory `/home/hzambran/SVN/R-devel/trunk/etc' > make[1]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/etc' > make[1]: Entering directory `/home/hzambran/SVN/R-devel/trunk/share' > make[1]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/share' > make[1]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src' > make[2]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/scripts' > creating src/scripts/R.fe > make[3]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/scripts' > make[3]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/scripts' > make[2]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/scripts' > make[2]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/include' > config.status: creating src/include/config.h > config.status: src/include/config.h is unchanged > Rmath.h is unchanged > make[3]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/include/R_ext' > make[3]: Nothing to be done for `R'. > make[3]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/include/R_ext' > make[2]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/include' > make[2]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/extra' > make[3]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/extra/tre' > make[4]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/extra/tre' > make[4]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/extra/tre' > make[4]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/extra/tre' > make[4]: `libtre.a' is up to date. > make[4]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/extra/tre' > make[3]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/extra/tre' > make[2]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/extra' > make[2]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/appl' > make[3]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/appl' > make[3]: `libappl.a' is up to date. > make[3]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/appl' > make[2]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/appl' > make[2]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/nmath' > make[3]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/nmath' > make[3]: `libnmath.a' is up to date. > make[3]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/nmath' > make[2]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/nmath' > make[2]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/unix' > make[3]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/unix' > make[3]: `libunix.a' is up to date. > make[3]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/unix' > make[3]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/unix' > ccache gcc -I. -I../../src/include -I../../src/include > -I/usr/local/include -DHAVE_CONFIG_H -fopenmp -fpic -ggdb -pipe > -std=gnu99 -Wall -pedantic -L/usr/local/lib > -DR_HOME='"/home/hzambran/SVN/R-devel/trunk"' \ > -o Rscript ./Rscript.c > make[3]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/unix' > make[2]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/unix' > make[2]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/main' > make[3]: Entering directory `/home/hzambran/SVN/R-devel/trunk/src/main' > ccache gcc -shared -fopenmp -L/usr/local/lib -o libR.so > CommandLineArgs.o Rdynload.o Renviron.o RNG.o agrep.o apply.o > arithmetic.o array.o attrib.o bind.o builtin.o character.o coerce.o > colors.o complex.o connections.o context.o cum.o dcf.o datetime.o > debug.o deparse.o devices.o dotcode.o dounzip.o dstruct.o duplicate.o > edit.o engine.o envir.o errors.o eval.o format.o gevents.o gram.o > gram-ex.o graphics.o grep.o identical.o inlined.o inspect.o internet.o > iosupport.o lapack.o list.o localecharset.o logic.o main.o mapply.o > match.o memory.o names.o objects.o options.o paste.o platform.o plot.o > plot3d.o plotmath.o print.o printarray.o printvector.o printutils.o > qsort.o random.o raw.o registration.o relop.o rlocale.o saveload.o > scan.o seq.o serialize.o sort.o source.o split.o sprintf.o startup.o > subassign.o subscript.o subset.o summary.o sysutils.o times.o unique.o > util.o version.o g_alab_her.o g_cntrlify.o g_fontdb.o g_her_glyph.o > xxxpr.o `ls ../unix/*.o ../appl/*.o ../nmath/*.o` > ../extra/tre/libtre.a -lblas -lgfortran -lm -lquadmath -lreadline > -lpcre -llzma -lbz2 -lz -lrt -ldl -lm -licuuc -licui18n > /usr/bin/ld: ../appl/dchdc.o: relocation R_X86_64_32 against `.rodata' > can not be used when making a shared object; recompile with -fPIC > ../appl/dchdc.o: error adding symbols: Bad value > collect2: error: ld returned 1 exit status > make[3]: *** [libR.so] Error 1 > make[3]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/main' > make[2]: *** [R] Error 2 > make[2]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src/main' > make[1]: *** [R] Error 1 > make[1]: Leaving directory `/home/hzambran/SVN/R-devel/trunk/src' > make: *** [R] Error 1 > *** Done -- now run 'make install' > > > I would highly appreciate any advice on how to solve this issue or how > to correctly set up r-devel. > > > Thanks in advance, > > Mauricio Zambrano-Bigiarini, PhD > > ====================================> Dept. of Civil Engineering > Faculty of Engineering and Sciences > Universidad de La Frontera > PO Box 54-D, Temuco, Chile > ====================================> mailto : mauricio.zambrano at ufrontera.cl > work-phone : +56 45 259 2812 > http://ingenieriacivil.ufro.cl/ > ====================================> "When the pupil is ready, the master arrives." > (Zen proverb) > ====================================> Linux user #454569 -- Linux Mint user
Dirk Eddelbuettel
2015-Jul-21 11:13 UTC
[Rd] ' --enable-R-shlib' problem when setting up R-devel in Linux Mint 17.1 64-bit
On 21 July 2015 at 02:15, MAURICIO ZAMBRANO BIGIARINI wrote: | Regarding the previous problem with setting up r-devel in Linux Mint | 17.1 64-bit, I deleted all the r-devel files I previously had, and | then I did the check out to the | | '~/svn/r-devel' | | directory originally mentioned by by Dirk on | https://stat.ethz.ch/pipermail/r-sig-debian/2012-August/001935.html, | instead of the customised location I previously chose: | | '~/SVN/R-devel/trunk' | | and now I everything worked perfectly fine. | | However, I'm still wondering what should I change in the first script | proposed by Dirk on | https://stat.ethz.ch/pipermail/r-sig-debian/2012-August/001935.html if | i want to use a user-defined location for the development files (e.g., | '~/SVN/R-devel/trunk'). I meant, in addition to the line: | | cd ~/svn/r-devel That is most likely spurious. Your errors may be due to, say, you not having run 'make clean' or 'make distclean' in the previous repo checkout you had so that the effect of the _initial_ configure call still lingered. There is no magic here. Lots of people have built R this way, and even more people use configure regularly. These things work. You somehow boxed yourself into a corner, out of which you now seem to have escaped, which is good. The proper sequence (svn checkout ...; configure ...; make ...) will work no matter what name you give the directory you work in. Regards, Dirk -- http://dirk.eddelbuettel.com | @eddelbuettel | edd at debian.org