[Rcpp-devel] Install failure undefined symbol

Dirk Eddelbuettel edd at debian.org
Thu Jun 11 22:33:14 CEST 2020


On 11 June 2020 at 19:13, Peter Crowther wrote:
| It's done so that you can have multiple versions of the tools installed
| side-by-side rather than being blindsided by upgrades breaking your
| toolchain.  This is rather the same justification that the Python community
| uses for its similarly weird way of selecting from side-by-side Python
| installations.
| 
| As someone working to produce regulated environments (to ICH-GxP), this
| makes sense to me.  As someone who has to use both day-to-day, it's a royal
| pain in the neck!

Well:

edd at rob:~$ ls -ltr /usr/bin/g++-* /usr/bin/clang++-*
lrwxrwxrwx 1 root root 27 May  3  2018 /usr/bin/clang++-4.0 -> ../lib/llvm-4.0/bin/clang++
lrwxrwxrwx 1 root root 25 Mar 19 03:50 /usr/bin/clang++-8 -> ../lib/llvm-8/bin/clang++
lrwxrwxrwx 1 root root 27 Mar 23 05:59 /usr/bin/clang++-6.0 -> ../lib/llvm-6.0/bin/clang++
lrwxrwxrwx 1 root root 25 Mar 23 05:59 /usr/bin/clang++-7 -> ../lib/llvm-7/bin/clang++
lrwxrwxrwx 1 root root 22 Mar 26 07:55 /usr/bin/g++-7 -> x86_64-linux-gnu-g++-7
lrwxrwxrwx 1 root root 25 Apr  1 10:23 /usr/bin/clang++-9 -> ../lib/llvm-9/bin/clang++
lrwxrwxrwx 1 root root 22 Apr  2 08:45 /usr/bin/g++-8 -> x86_64-linux-gnu-g++-8
lrwxrwxrwx 1 root root 22 Apr  9 05:38 /usr/bin/g++-9 -> x86_64-linux-gnu-g++-9
lrwxrwxrwx 1 root root 26 Apr 20 00:12 /usr/bin/clang++-10 -> ../lib/llvm-10/bin/clang++
edd at rob:~$ 

To use it I just switch a version variable in ~/.R/Makevars 

edd at rob:~$ grep VER .R/Makevars 
#VER=-4.9
VER=
CC=$(CCACHE) gcc$(VER)
CXX=$(CCACHE) g++$(VER)
CXX11=$(CCACHE) g++$(VER) #-std=c++11
CXX14=$(CCACHE) g++$(VER) #-std=c++14
CXX17=$(CCACHE) g++$(VER) #-std=c++17
SHLIB_CXXLD=$(CCACHE) g++$(VER)
edd at rob:~$ 

and and otherwise go with the default, currently g++-9.3.  But hey, doesn't
have "enterprise" in the name or "scientific" or ...  But works.  And is free.

Dirk

-- 
http://dirk.eddelbuettel.com | @eddelbuettel | edd at debian.org


More information about the Rcpp-devel mailing list