Mantis - pm_cpan_meta
Viewing Issue Advanced Details
5024 major always 2012-11-21 20:50 2012-11-26 20:27
lsiden  
dam  
normal  
feedback  
reopened  
none    
none  
0005024: Need to modify Config.pm and Config_heavy.pm to get builds to work
I tried to install a Perl module IO::Pty that was unavailable in the dublin distro and was unable to compile anything.

First I had to modify /opt/csw/lib/perl/5.10.1/Config.pm to point to the gcc compiler instead of the one supplied by SunOS.

When trying to install again, CPAN complained that it could not run /opt/csw/gcc4/bin/gcc although I could run it fine from a shell command-line. Inspecting the compile.log file under the build directory for IO::Tty (the module it was attempting to build as a prerequisite to IO::Pty) revealed that gcc could not cope with an argument -norunpath. There are many others that the Sun version of the C/C++ compiler and ld will work with but gcc will not.

I am attaching both my modified Config.pm and Config_heavy.pl that allowed installs requiring compiler runs to proceed successfully.

I believe that this issue applies equally to CPAN and CPANPLUS.
? file icon Config.pm [^] (2,852 bytes) 2012-11-21 20:50
? file icon Config_heavy.pl [^] (31,937 bytes) 2012-11-21 20:51
Issue History
2012-11-21 20:50 lsiden New Issue
2012-11-21 20:50 lsiden File Added: Config.pm
2012-11-21 20:50 lsiden Issue Monitored: lsiden
2012-11-21 20:51 lsiden File Added: Config_heavy.pl
2012-11-21 20:51 lsiden Tag Attached: gcc
2012-11-21 20:52 lsiden Tag Attached: CPAN
2012-11-21 20:52 lsiden Tag Attached: CPANPLUS
2012-11-21 20:52 lsiden Tag Attached: perl
2012-11-21 20:53 lsiden Note Added: 0010224
2012-11-21 22:18 dam Status new => assigned
2012-11-21 22:18 dam Assigned To => dam
2012-11-21 22:22 dam Note Added: 0010225
2012-11-21 22:22 dam Status assigned => closed
2012-11-21 22:22 dam Resolution open => suspended
2012-11-22 01:43 lsiden Note Added: 0010226
2012-11-22 01:43 lsiden Status closed => feedback
2012-11-22 01:43 lsiden Resolution suspended => reopened
2012-11-26 12:49 dam Note Added: 0010231
2012-11-26 16:13 lsiden Note Added: 0010232
2012-11-26 16:21 lsiden Note Added: 0010233
2012-11-26 20:27 dam Note Added: 0010234

Notes
(0010224)
lsiden   
2012-11-21 20:53   
I should add that hacking Config.pm and Config_heavy.pl this way is a hack. The true solution is to rebuild Perl using only libraries and paths supplied by OpenCSW to make it truly compatible.
(0010225)
dam   
2012-11-21 22:22   
At the moment Sun Studio is the standard compiler for OpenCSW. You can download it free of charge from the Oracle download site. We plan to change the standard compiler to GCC 4.7 in the upcoming "bratislava" OpenCSW release. Until then you need to apply the patches you currently use.

Best regards -- Dago
(0010226)
lsiden   
2012-11-22 01:43   
Sorry to re-open, Dagbert. I though of sending you a private e-mail but I think its better that the answer to this be recorded on this thread for others to see:
--------
Thank you for the info, Dagbert. Would you please help me clarify? Is stlport the package that I need to install. If so, then is there an alternate Config.pm and Config_heavy.pm that are compatible with Oracle-Sun Studio to replace the ones I submitted with this issue to be compatible with gcc? The versions that come with the CSW Perl distro appeared to be built for the original SunOS C compiler, unless I'm missing something else.
(0010231)
dam   
2012-11-26 12:49   
The standard SunOS C Compiler is also named Sun Studio or Solaris Studio or Oracle Studio :-) Depending on the compiler version you may need to make a link from /opt/SUNWspro to e.g. /opt/solarisstudio12.3.

I don't understand why you mention stlport as this is not related to the compiler (up to the extend that gcc sun Sun Studio both ship an stlport).

Apart from that we have the module you needed:
  http://www.opencsw.org/packages/pm_io_tty/ [^]
Adding a module takes almost no time, so it is probably easiest when you just drop the modules on #opencsw or on users@.
(0010232)
lsiden   
2012-11-26 16:13   
stlport was an error. I thought it was something else.
(0010233)
lsiden   
2012-11-26 16:21   
The package I really needed was Net::SFTP::Foreign. I think that's only offered in the "unstable" repository. I'm using "dublin" and didn't want to mix and match.

So you are saying I should restore Config.pm and Config_heavy.pm to their original state and try it again?
(0010234)
dam   
2012-11-26 20:27   
Mix and match of single CPAN modules from unstable is no issue, much better than mixing packages and self-compiled stuff. I suggest restoring these two and installing the package for the module from unstable with -t to pkgutil.