[OpenIndiana-discuss] /hipster-2015 and /localhostoih gcc mess up (second time)

Thomas Wagner tom-oi-discuss at tom.bn-ulm.de
Mon Nov 23 20:11:36 UTC 2015


Predrag,

yes, I followed your suggestion to add the static library to the
gcc runtime. For Solaris it is quite uncommon to have static libs,
but it looks like gcc want's its very own way to do things.
It revealed that the perl module asked for gcc switch "-fstack-protection"
and that made it require the static libssp_nonshared.a

So you may choose to upgrade to 
gcc-48-runtime at 4.8.5,5.11-0.0.151.1.8:20151123T153854Z
and get libssp_nonshared.a

As well I've added for perl-522 the package perl-5/term-readkey (Term::ReadKey)

Regards,
Thomas

On Fri, Nov 20, 2015 at 08:31:30PM +0100, Predrag Ze??evi?? wrote:
>  Hi all,
> 
>  I am using packages from following repositories:
>  $ pkg publisher -Hn
>  openindiana.org              origin   online F 
>  http://pkg.openindiana.org/hipster-2015/
>  localhostoih                origin   online F 
>  http://sfe.opencsw.org/localhostoih/
>  hipster-encumbered              origin   online F 
>  http://pkg.openindiana.org/hipster-encumbered/
> 
>  Repository localhostoih serves libreoffice4 (which works fine, but requires 
>  gcc 4.8 runtime from /localhostoih repository).
> 
>  From the other side, /hispter delivers gcc 4.9 - so, now I have following 
>  situation:
>  $ pkg list | grep -E "gcc.*4.(8|9)"
>  developer/gcc-49                                  4.9.3-2015.0.2.0      i--
>  sfe/developer/gcc-48 (localhostoih)               4.8.5-0.0.151.1.8      i--
>  sfe/system/library/gcc-48-runtime (localhostoih)  4.8.5-0.0.151.1.8      i--
>  sfe/system/library/gcc-runtime (localhostoih)     4.8.5-0.0.151.1.8      i--
>  system/library/gcc-4-runtime                      4.9.3-2015.0.2.0      i--
> 
>  That is not problem *unless* you try to install perl CPAN module (in this 
>  case, perl Term::ReadKey):
> 
>  $ pfexec perl -MCPAN -e shell
>  ...
>  cpan[1]> install Term::ReadKey
>  ...
>  /usr/gcc/4.8/bin/gcc -m32  -shared -fstack-protector ReadKey.o  -o 
>  blib/arch/auto/Term/ReadKey/ReadKey.so       \
> 
>  ld: fatal: library -lssp_nonshared: not found
>  ld: fatal: file processing errors. No output written to 
>  blib/arch/auto/Term/ReadKey/ReadKey.so
>  collect2: error: ld returned 1 exit status
> 
> 
>  ^^^^^^ It looks like perl (5.22) is compiled with OI gcc 4.8, which was 
>  replaced with new one recently. Problem is actually in both OI and SFE:
> 
>  *** SFE gcc 4.8 is missing  /usr/gcc/4.8/lib{/amd64}/libssp_nonshared.a 
>  files (those ARE present in OI gcc 4.8):
>  $ pkg search -r /usr/gcc/4.8/lib/libssp_nonshared.a
>  INDEX      ACTION VALUE                              PACKAGE
>  path       file   usr/gcc/4.8/lib/libssp_nonshared.a 
>  pkg:/developer/gcc-48 at 4.8.5-2015.0.1.0
>  path       file   usr/gcc/4.8/lib/libssp_nonshared.a 
>  pkg:/developer/gcc-48 at 4.8.5-2015.0.2.0
> 
>  *but* that one (OI gcc 4.8) cannot be installed because of some conflicts:
>  $ pfexec pkg uninstall -v sfe/developer/gcc-48
>  ...
>  $ pfexec pkg install -v pkg://openindiana.org/developer/gcc-48
>  ...
>  pkg install: The following packages all deliver file actions to 
>  usr/gcc/4.8/lib/amd64/libatomic.so.1.0.0:
> 
>  pkg://localhostoih/sfe/system/library/gcc-48-runtime@4.8.5,5.11-0.0.151.1.8:20151010T221843Z
>  pkg://openindiana.org/developer/gcc-48@4.8.5,5.11-2015.0.2.0:20151113T125128Z
> 
>  These packages may not be installed together. Any non-conflicting set may
>  be, or the packages must be corrected before they can be installed.
>  ...
>  ETC
> 
>  So, I want to keep libreoffice4 (because openoffice 4 has problems) and to 
>  install perl modules...
> 
>  I cannot determine which GCC was used for perl (but perl is 32 bit):
>  $ perl -v
>  This is perl 5, version 22, subversion 0 (v5.22.0) built for 
>  i86pc-solaris-64int
> 
>  $ file /usr/perl5/5.22/lib/i86pc-solaris-64int/CORE/libperl.so: ELF 32-bit 
>  LSB dynamic lib 80386 Version 1, dynamically linked, not stripped
> 
>  $ readelf -Wa /usr/perl5/5.22/lib/i86pc-solaris-64int/CORE/libperl.so | grep 
>  GCC
>  [RETURNS nothing], but CPAN looks for gcc 4.8
> 
>  Solution is either:
> 
>  a) SFE has to fix gcc 4.8 to include 
>  /usr/gcc/4.8/lib{/amd64}/libssp_nonshared.a files (and maybe some other)
>  b) OI to compile perl with gcc 4.9
> 
>  Any thoughts? Or maybe better solution? Maybe I am making mistake somewhere?
> 
>  With best regards.
> 
>  -- 
>  Predrag Zečević, Technical Support Analyst, 2e Systems GmbH
> 
>  Telephone: +49 6196 9505 815, Facsimile: +49 6196 9505 894
>  Mobile:    +49  174 3109 288,     Skype: predrag.zecevic
>  E-mail:    predrag.zecevic at 2e-systems.com
> 
>  Headquarter:          2e Systems GmbH, Königsteiner Str. 87,
>                        65812 Bad Soden am Taunus, Germany
>  Company registration: Amtsgericht Königstein (Germany), HRB 7303
>  Managing director:    Phil Douglas
> 
>  http://www.2e-systems.com/ - Making your business fly!
> 
>  _______________________________________________
>  openindiana-discuss mailing list
>  openindiana-discuss at openindiana.org
>  http://openindiana.org/mailman/listinfo/openindiana-discuss
> 

-- 
-- 
Thomas Wagner

------------------------------------------------------------------------
Service rund um UNIX(TM),     Wagner Network Services, Thomas Wagner
Solaris(TM), Linux(TM)        Eschenweg 21, 89174 Altheim, Germany
Novell(TM), Windows(TM)       TEL: +49-731-9807799, FAX: +49-731-9807711
Telekommunikation, LAN,       MOBILE/CELL: +49-171-6135989
Internet-Service, Elektronik  EMAIL: wagner at wagner-net.com



More information about the openindiana-discuss mailing list