Subject: pkg/31487: fam-2.7.0 fails to link on Tru64
To: None <pkg-manager@netbsd.org, gnats-admin@netbsd.org,>
From: None <rumi@rtfm.hu>
List: pkgsrc-bugs
Date: 10/06/2005 08:15:01
>Number:         31487
>Category:       pkg
>Synopsis:       fam-2.7.0 fails to link on Tru64
>Confidential:   no
>Severity:       serious
>Priority:       low
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Oct 06 08:15:00 +0000 2005
>Originator:     Rumi Szabolcs
>Release:        Tru64 5.1B-3 (PK5)
>Organization:
>Environment:
# uname -a
OSF1 obelix V5.1 2650 alpha
# sizer -v
Compaq Tru64 UNIX V5.1B (Rev. 2650); Sun Sep 25 20:31:58 CEST 2005
>Description:
linking fails with the following error:

/bin/ksh ../libtool --mode=link cxx  -O2 -ieee -ieee  -Wl,-rpath,/usr/pkg/lib -o libfam.la -rpath /usr/pkg/lib -export-symbols fam.sym Client.lo fam.lo -lstdc++ -lrpcsvc
for i in `cat fam.sym`; do printf "%s %s
" -exported_symbol "$i" >> .libs/libfam.so.0.0.0.exp; done
 echo "-hidden">> .libs/libfam.so.0.0.0.exp
 cxx -shared -expect_unresolved \*   .libs/Client.o .libs/fam.o  -lstdc++ -lrpcsvc -L/home/admin/pkgsrc/work/sysutils/fam/work/.buildlink/lib   -Wl,-rpath -Wl,/usr/pkg/lib -msym -soname libfam.so.0 -Wl,-input -Wl,.libs/libfam.so.0.0.0.exp `test -n "0.0.0:0.0" && echo -set_version 0.0.0:0.0` -update_registry .libs/so_locations -o .libs/libfam.so.0.0.0
ld (prelink):
Can't locate file for: -lstdc++
ld:
Can't locate file for: -lstdc++
gmake[2]: *** [libfam.la] Error 1
gmake[2]: Leaving directory `/home/admin/pkgsrc/work/sysutils/fam/work/fam-2.7.0/lib'
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/home/admin/pkgsrc/work/sysutils/fam/work/fam-2.7.0'
gmake: *** [all] Error 2
*** Error code 2

Stop.
>How-To-Repeat:
./bootstrap on Tru64
cd /usr/pkgsrc/sysutils/fam
bmake
>Fix:
They seem to link against the GNU stdc++ library. On Tru64 this
is called libcxxstd.so. When replacing -lstdc++ with -lcxxstd in
the appropriate Makefile, libfam links successfully.