Beefy Boxes and Bandwidth Generously Provided by pair Networks
more useful options
 
PerlMonks  

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

by syphilis (Chancellor)
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

Replies are listed 'Best First'.
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?
[Corion]: marto: Yeah, feels like that ;) You could set up the cronjob that auto-creates tickets :-))
[marto]: the ticketing system does not accept calls via email, nor has it a working API. It's tied into Active Directory for authentication and the Solaris boxes aren't on that domain
[Corion]: The one thing I haven't figured out a solution to is how to get an edge-trigger instead of sending an email every 5 minutes if the usage is above 90%. I want one mail when it goes over 90% but no more emails as long as it stays between 90% and 95%.
[Corion]: marto: Clever! ;)
[Corion]: You can only reach me by pager
[Corion]: Maybe the solution would be to launch a cron job every minute that takes two measurements a minute apart and sends a mail if the usage is below on the first and above threshold on the last measurement
[marto]: that's essentially it :)
[marto]: I think the long term solution would be to have sysadmins that do their job, so I don't have to do everything :P
[marto]: they already have an entire BMC patrol system, which they disabled, because it was sending out spurious messages. So rather than fix the issue, or even find out what it was, they turned it off. No messages, can't be any problems, right?
[Corion]: marto: But having open tickets / incidents increases the pressure on them ;) Of course, likely your contract / SLA specifies an upper limit for the number of incidents :-D

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (9)
As of 2017-01-24 10:10 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Do you watch meteor showers?




    Results (203 votes). Check out past polls.