Operating System - Linux
1748166 Members
3533 Online
108758 Solutions
New Discussion юеВ

perl modules and perl versions

 
SOLVED
Go to solution
Tim Nelson
Honored Contributor

perl modules and perl versions

As I embarked on installing some DBI modules I ran into something interesting and am looking for opinions or experiences.

I was installing the DBD::ODBC. In order to get it to compile I had to make sure that I was using perl compiled with gcc.

I then was working on DBD::Oracle. I am currently finding that in order to get this compiled I need perl compiled with ANSI/C as it seems that in order to link and compile the Oracle pieces gcc will not work.

Has anyone run into this conflict and / or questioned it ?

5 REPLIES 5
Steven E. Protter
Exalted Contributor
Solution

Re: perl modules and perl versions

This is pretty common.

Its possible to compile perl in different ways and keep it in different locations.

I guess the problem is if DBD module needs to be compiled itself as one big module. Then you seen to have a circular problem.

I think they are portable and you can get around it with multiple perl versions.

Never questioned it myself because it involves Oracle. Nothing surprises me there.

SEP
Steven E Protter
Owner of ISN Corporation
http://isnamerica.com
http://hpuxconsulting.com
Sponsor: http://hpux.ws
Twitter: http://twitter.com/hpuxlinux
Founder http://newdatacloud.com
Tim Nelson
Honored Contributor

Re: perl modules and perl versions

Thanks Steven,

Just was going nutz once I thought I got past one isssue then I run into another.

Do you know if the following is a true statement.
The DBD::Oracle will NOT compile under GCC Perl( I have seen some references to people getting it to work but have had no such luck myself).

Luckily the server I am working on has a licensed copy of HP Ansi/C or I would really be up a creek.

Thanks !!!
Tim

H.Merijn Brand (procura
Honored Contributor

Re: perl modules and perl versions

Sorry, I can not subscribe to that statement.
But then again, I'm probably blessed with some more than average perl knowledge.

Let's try to summarize.

1. It's always best to compile perl and the modules with the same compiler
2. It's always best to compile it with the same version of the compiler
3. If you have a choice, it is best to compile with HP C-ANSI-C
4. In case of emergency, it is possible to mix gcc and cc
5. perl and/or modules cannot be build with the pa-risc bundles C compiler, since it is not ANSI compliant

Ad 3. I have just built the most recent versions (csv checkout's if you would use csv, but perl used perforce) for maint and devel on Itanium 2 (HP-UX 11.23) with HP C-ANSI-C B.06.05, and had to drop optimizing to +O1, since all kind of problems started emerging on +O2 and up. If someone knows how to make contact to the right people with HP about this, I'm open to suggestions. You could also try to compile openssl-0.9.8a and note exactly the same. It builds, but tests completely barf. dropping to +O1 makes everything pass.

Ad 4. when mixing, you have to alter the Makefile's to swap all C-ANSI-C flags to gcc flags.

-Ae +Z -z +O2 +Onolimit => -fPIC -mpa-risc-2-0 -O2
+DA2.0w or +DD64 => needs the 64bit gcc compiler

on Itanium +DD64 => -mlp64 and -mpa-risc-2-0 can be dropped

Enjoy, Have FUN! H.Merijn
Enjoy, Have FUN! H.Merijn
Tim Nelson
Honored Contributor

Re: perl modules and perl versions

Thanks Merijn,

I have gotten everything to work on the DBD::Oracle using the Perl 5.8.3 (Ansi/C version) and making sure to export the LD_PRELOAD.

Maybe someday I will try again with the GCC version of Perl.

Cheers !
H.Merijn Brand (procura
Honored Contributor

Re: perl modules and perl versions

DBD::Oracle 1.17 is about to be released with quite a number of fixes. Release Candidate 3 is already in the open.

Keep an eye on http://search.cpan.org/~timb/ or http://search.cpan.org/search?query=DBD%3A%3AOracle&mode=all

1.16 was released Oct 2004, so I do expect some improvements after more than a year.

Enjoy, Have FUN! H.Merijn
Enjoy, Have FUN! H.Merijn