Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?
 
PerlMonks  

Re^3: Exploring Inline::C (Status Update for Inline::CPP)

by syphilis (Canon)
on Nov 13, 2011 at 09:06 UTC ( #937808=note: print w/ replies, xml ) Need Help??


in reply to Re^2: Exploring Inline::C (Status Update for Inline::CPP)
in thread Exploring Inline::C (Generating primes)

I've taken on Co-maintainership for Inline::CPP

This is excellent news!!

I almost established co-maintainership of Inline::CPP a couple of years back, but I kept losing contact with Neil at critical moments, and it never happened. (That was actually quite fortuitous as I'm not the right person for the job, anyway - my CPP skills are best described in terms that don't involve the use of the word "skill" ;-)

Version 0.29 builds and tests for me on my 32-bit builds of perl (where I'm using the mingw.org port of gcc-4.5.2).

But ... things don't go quite so well if the compiler to be used is not called 'g++'.
In CPP.pm we have:

sub validate { my $o = shift; $o->{ILSM}{MAKEFILE}{CC} ||= 'g++'; # default compiler $o->{ILSM}{MAKEFILE}{LIBS} ||= ['-lstdc++']; # default libs
That effectively hard-codes in 'g++' and '-lstdc++'.
You'll note that the Makefile.PL rewrites CPP.pm, replacing the strings '@COMPILER' and '@DEFAULTLIBS' with the selected compiler and libs ... except that there's now *no* such strings as '@COMPILER' and '@DEFAULTLIBS' anywhere in CPP.pm ... so CPP.pm stays exactly as it was ... which is fine if (and only if) you're using 'g++'.

Do you see what I mean ?

Cheers,
Rob


Comment on Re^3: Exploring Inline::C (Status Update for Inline::CPP)
Download Code
Re^4: Exploring Inline::C (Status Update for Inline::CPP)
by davido (Archbishop) on Nov 13, 2011 at 09:12 UTC

    Hey, thanks for the input. I'll look it over within a day or so.

    Maybe I should set up a mailing list or something, since lengthy discussion here is probably a little too far out on a tangent to be on-topic in the Monastery.


    Dave

      I'll look it over within a day or so.

      No problems - there's no screaming urgency about this.

      The issue goes a bit deeper, too. (For the same reason, even with 0.25 you can't extract the source, build it, run 'make realclean', then build again for a perl that uses a different C++ compiler. For the second build you have to extract the source all over again.) I'll submit a bug report and tentative patch.

      Good luck with Inline::CPP !!

      Cheers,
      Rob

        Your patches have been applied for v0.30, and should show up on the mirrors within a few hours.

        Future bug announcements and discussion will take place on the RT site at: https://rt.cpan.org/Dist/Display.html?Name=Inline-CPP. I think for now the facilities that rt.cpan.org provides are adequate for our purposes in lieu of a dedicated mailing list. I look forward to seeing you there.

        Update: syphilis confirmed that the v0.30 distribution resolved this issue for him. Once the CPAN testers matrix catches up we'll know more.


        Dave

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (9)
As of 2015-07-06 21:54 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (83 votes), past polls