[csw-maintainers] Oddity with Runpath and GCC4 on Solaris 10 x86

Geoff Davis gadavis at opencsw.org
Sat Dec 4 01:55:20 CET 2010


Hi all,

I did an install of my experimental package on a fresh out of the box Solaris 10U9 x86 virtual machine. It looks to me like there is a missing symlink or directory on my system using the default dependencies suggested by Gar.

All of my 64-bit binaries have an rpath that looks like this:

opt/csw/bin/amd64/ncgen
base name: ncgen
runpath:
/opt/csw/gcc4/lib/64
/opt/csw/lib/$ISALIST
/opt/csw/lib/64
needed sonames:
libnetcdf.so.6
libhdf5_hl.so.6
libhdf5.so.6
libz.so.1
libm.so.2
libnsl.so.1
libc.so.1
In particular, there is an entry for /opt/csw/gcc4/lib/64 in the runpath.

However my fresh VM install has no /opt/csw/gcc4/lib/64. There is only an amd64 directory.

$ pwd
/opt/csw/gcc4/lib
$ ls
amd64             libgomp.so        libssp.so
libgcc_s.so       libgomp.so.1      libssp.so.0
libgcc_s.so.1     libgomp.so.1.0.0  libssp.so.0.0.0

According to http://www.opencsw.org/packages/CSWgcc4core/ that "64" link is part of gcc4core

gcc4corert does not depend on gcc4core so I don't get that package on a barebones install, and therefore my 64-bit programs don't run.

How do I fix this? 
Is this a bug in GCC4?
Or, is this a bug in Gar? I think it set the RPATH to /opt/csw/gcc4/lib/64 instead of /opt/csw/gcc4/lib/$(ISA)
Or, is this a bug in my packaging where I need to somehow tweak the RPATH for the 64-bit builds to "Do The Right Thing"?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opencsw.org/pipermail/maintainers/attachments/20101203/feb56a39/attachment.html>


More information about the maintainers mailing list