New Relic

Gareth Harper spansh+london at gmail.com
Fri Dec 20 08:20:56 GMT 2013


On 19 December 2013 22:33, Duncan Garland <duncan.garland at ntlworld.com>wrote:

> So far all they've given me are some C libraries which I'm trying to link
> into a module using Inline::C. Once I've done that, apparently we can call
> the standard New Relic functions and everything will just work. It's
> supposed to be as simple as that.
>


Inline::C and Inline::CPP are very good but you should be wary.  I used
Inline::CPP to interface the Boost library a few months back and whilst my
tests passed perfectly and I could use the module in a standard Perl
program, trying to use the module in Catalyst (and I suspect anything else
which messes around with the namespaces to create relevant routing) causes
some major issues (basically you can't find your namespace).

I managed to get around the issue by using Inline::CPP2XS (
http://search.cpan.org/~sisyphus/InlineX-CPP2XS-0.24/CPP2XS.pm) and
converting the module to a standard XS module, then continuing to make my
changes there.  There appears to be an Inline::C2XS module as well (
http://search.cpan.org/~sisyphus/InlineX-C2XS-0.22/C2XS.pm).

It may be worth continuing down the Inline::C way until you're happy with
the module and then converting it to a standard XS module for release
(assuming you're intending to release it).

Unfortunately I've steered clear of threads in Perl for many years, so I
can't help you there.

Gareth


More information about the london.pm mailing list