Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical
 
PerlMonks  

Re^3: Problems installing Devel::Cover on Strawberry, seems to work on Cygwin

by syphilis (Archbishop)
on Mar 29, 2008 at 06:16 UTC ( [id://677177]=note: print w/replies, xml ) Need Help??


in reply to Re^2: Problems installing Devel::Cover on Strawberry, seems to work on Cygwin
in thread Problems installing Devel::Cover on Strawberry, seems to work on Cygwin

What did work was to add the following symbols to global.sym ....

Seems that's one way to make those symbols public. Nice hack - though if you ever need to access a different private symbol, you'll have to rebuild perl again.

I'm curious to know whether the Devel::Cover that you built with this hacked perl-5.10.0 will work on an unhacked perl-5.10.0. (Others would probably know the answer to that without needing to test it.) Have you tried that out ? If it works on the unhacked version of perl, then it could be handy for others if the binary of your build of Devel::Cover (either ppm package or just a tar.gz of blib) was made available.

Cheers,
Rob
  • Comment on Re^3: Problems installing Devel::Cover on Strawberry, seems to work on Cygwin

Replies are listed 'Best First'.
Re^4: Problems installing Devel::Cover on Strawberry, seems to work on Cygwin
by jplindstrom (Monsignor) on Mar 29, 2008 at 19:37 UTC
    That did not work. Devel::Cover unsurprisingly needs access to the symbols during both build and run time. Tried it with a 5.8.8 because that's my existing installation with lots of modules I don't care to reinstall.

    Instead I patched the current installation by building a Perl 5.8.8 with the exported symbols, and then:

    cp perl58.dll \strawberry-perl\perl\bin\ cp lib\CORE\libperl58.a \strawberry-perl\perl\lib\CORE\

    This is clearly a hack, not a long-term solution.

    What that solution is I don't know. But I imagine either

    • officially promote those symbols to be public, since such an important module as Devel::Cover rely on them, or;
    • create an interface to allow Devel::Cover to instrument/inspect the internals the way it clearly needs to do to work its magic.

    Damn, that was a lot of yak shaving to start doing interesting things!

    /J

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://677177]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others sharing their wisdom with the Monastery: (6)
As of 2024-04-19 11:22 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found