[Rcpp-devel] loading failed

Fabio Tordini tordini at di.unito.it
Tue May 5 16:28:40 CEST 2015


Hi Dirk, thanks for your reply!

On 05/05/2015 04:14 PM, Dirk Eddelbuettel wrote:
>
> On 5 May 2015 at 14:30, Fabio Tordini wrote:
> | Everything compiles fine, but then it fails when loading the package:
> |
> | ** testing if installed package can be loaded
> | Error in dyn.load(file, DLLpath = DLLpath, ...) :
> |    unable to load shared object
> | '/home/fabio/R/x86_64-pc-linux-gnu-library/3.0/NgrapH/libs/NgrapH.so':
> |    /home/fabio/R/x86_64-pc-linux-gnu-library/3.0/NgrapH/libs/NgrapH.so:
> | undefined symbol: _ZN6Finder10parseFilesESsSsSs
> | Error: loading failed
> |
> | What could possibly be the problem?
>
> edd at max:~$ c++filt _ZN6Finder10parseFilesESsSsSs
> Finder::parseFiles(std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >)
> edd at max:~$
>

Yep, I used c++filt as well and found out the exact function. But still 
I can't figure out the problem.
Here is the actual (simple) code:

	Finder *f = new Finder();
	f->parseFiles(str_g, str_f, str_s);

where the three strings contain path-to-files.
What do you exactly mean with "...without providing (object) code for it"?

> You seem to instantiate Finder::parseFiles without providing (object) code
> for it.  As you example is incomplete and irreproducible we can only guess.
> Maybe you forgot to link to another library.  Maybe you forgot a source file.

No other libraries needed, no source file missing: the Makevars file 
somehow resembles application's Makefile!



>
> Dirk
>

Fabio


More information about the Rcpp-devel mailing list