1

I'm trying to use some proprietary C++ code in a Perl module.

I have seen it is easy to debug if something goes wrong at compiling time by just enabling the BUILD_NOISY flag.

In my case the problem comes at running time...the code C++ works fine when compiled in stand alone, but when I embed it in Perl my code crash at runtime.

The only message I get is this one:

perl: symbol lookup error: <my_library>.so: undefined symbol: _ZN12LocationTree4LoadERKSs

Is there any way of having a more verbose output ?

barbasa
  • 675
  • 4
  • 22
  • Is the `LocationTree4LoadERKSs` function overloaded by any chance? Are you sure that the library is actually being included? Also, try posting this (along with a minimal self-contained code sample) to the Inline mailing list. inline at perl dot org ...can't promise a solution there either, but can guarantee that people who have used Inline::CPP will see the question. – DavidO May 15 '13 at 15:54
  • I should also mention: This is a Perl error message, not an Inline::CPP message. It's not detectable at C++ compile/link time, because C++ doesn't know what functions you'll be calling. And it's not detectable at Perl compiletime, because it doesn't know what functions the XS extension has linked in. So the short answer is no, there's no more verbosity available for this message. – DavidO May 15 '13 at 16:04
  • 1
    My bad...the library wasn't included :/ I have included the header file in the C++ code, but not the library. I have included it using the MYEXTLIB option. Thanks @DavidO – barbasa May 15 '13 at 20:32

0 Answers0