[Rcpp-devel] undefined symbol: _ZTVN10__cxxabiv120__si_class_type_infoE (on Ubuntu but not on Mac OS X)
Peng Yu
pengyu.ut at gmail.com
Tue Jul 7 02:03:11 CEST 2015
On Monday, July 6, 2015, Dirk Eddelbuettel <edd at debian.org> wrote:
>
> On 6 July 2015 at 17:24, Peng Yu wrote:
> | BTW, I checked all the packages that depend on Rcpp one way or
> | another. All the packages which use FORTRAN only have .f files but not
> | .f90 files. Is it an coincident or it is known that R does not support
> | .f90 well?
>
> A _15 second_ search of Writing R Extensions reveals this in Section 1.1.5:
Thanks. I also saw it.
>
> The sources and headers for the compiled code are in 'src', plus
> optionally a file 'Makevars' or 'Makefile'. When a package is installed
> using 'R CMD INSTALL', 'make' is used to control compilation and linking
> into a shared object for loading into R. There are default 'make'
> variables and rules for this (determined when R is configured and
> recorded in 'R_HOME/etcR_ARCH/Makeconf'), providing support for C, C++,
> FORTRAN 77, Fortran 9x(5), Objective C and Objective C++(6) with
> associated extensions '.c', '.cc' or '.cpp', '.f', '.f90' or '.f95',
> '.m', and '.mm', respectively. We recommend using '.h' for headers,
> also for C++(7) or Fortran 9x include files. (Use of extension '.C' for
> C++ is no longer supported.) Files in the 'src' directory should not be
> hidden (start with a dot), and hidden files will under some versions of
> R be ignored.
>
> It is not portable (and may not be possible at all) to mix all these
> languages in a single package, and we do not support using both C++ and
> Fortran 9x.
The funny thing of the manual is that actually my package can be compiled
on Mac. It is defintitely possible to mix fortran 90 and C++ (at least with
some subset features of both).
It seems that this is just another problem of R's documention and some
idiosyncratic decision made by the R core team members in charge of this
aspect.
> Because R itself uses it, we know that C and FORTRAN 77 can
> be used together and mixing C and C++ seems to be widely successful.
>
> Note the second paragraph: So f90 and C++ do NOT go together.
>
> Dirk
>
> --
> http://dirk.eddelbuettel.com | @eddelbuettel | edd at debian.org
> <javascript:;>
>
--
Regards,
Peng
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.r-forge.r-project.org/pipermail/rcpp-devel/attachments/20150706/198a48b4/attachment.html>
More information about the Rcpp-devel
mailing list