Subject: pkg/22306: build of qt3-tools requires libstdc++.la on Linux (Slackware 9)
To: None <gnats-bugs@gnats.netbsd.org>
From: None <grant@NetBSD.org>
List: netbsd-bugs
Date: 07/31/2003 03:12:02
>Number:         22306
>Category:       pkg
>Synopsis:       build of qt3-tools requires libstdc++.la on Linux (Slackware 9)
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Jul 30 17:13:00 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator:     grant beattie
>Release:        Slackware Linux 9.0
>Organization:
	
>Environment:
System: Linux  2.4.21 #4 Fri Jul 25 21:21:28 EST 2003 i686 unknown
Architecture: i386
Machine: i386
>Description:
linking of libraries in qt3-tools fails due to a missing libstdc++.la.

libtool --mode=link g++ -Wl,-R/usr/X11R6/qt3/lib -Wl,-R/usr/pkg/lib -L/usr/pkg/lib -Wl,-R/usr/X11R6/lib -L/usr/X11R6/lib -L/work/pkgbuild/x11/qt3-tools/work.Linux-2.4.21-i386/qt-x11-free-3.1.2/lib -fno-exceptions -o  ../../../lib/libqassistantclient.la  -version-info 1:0 .obj/release-shared-mt/qassistantclient.lo .obj/release-shared-mt/moc_qassistantclient.lo  -L/usr/X11R6/qt3/lib -L/usr/pkg/lib -L/work/pkgbuild/x11/qt3-tools/work.Linux-2.4.21-i386/qt-x11-free-3.1.2/lib -L/usr/X11R6/lib -lqt-mt -lpng -lz -lGLU -lGL -lXmu -lICE -lSM -lpthread -rpath  /usr/X11R6/qt3/lib
*** [buildlink2] Warning: libtool detected -L/work/pkgbuild/x11/qt3-tools/work.Linux-2.4.21-i386/qt-x11-free-3.1.2/lib
*** [buildlink2] Warning: libtool detected -L/work/pkgbuild/x11/qt3-tools/work.Linux-2.4.21-i386/qt-x11-free-3.1.2/lib
mkdir ../../../lib/.libs
libtool: link: warning: `/work/pkgbuild/x11/qt3-tools/work.Linux-2.4.21-i386/.buildlink/lib/libpng.la' seems to be moved
libtool: link: warning: `/work/pkgbuild/x11/qt3-tools/work.Linux-2.4.21-i386/.buildlink/lib/libfreetype.la' seems to be moved
grep: //work/pkgbuild/x11/qt3-tools/work.Linux-2.4.21-i386/.buildlink/lib/./libstdc++.la: No such file or directory
sed: can't read //work/pkgbuild/x11/qt3-tools/work.Linux-2.4.21-i386/.buildlink/lib/./libstdc++.la: No such file or directory
libtool: link: `//work/pkgbuild/x11/qt3-tools/work.Linux-2.4.21-i386/.buildlink/lib/./libstdc++.la' is not a valid libtool archive
make[2]: *** [../../../lib/libqassistantclient.so.1.0.0] Error 1
make[2]: Leaving directory `/work/pkgbuild/x11/qt3-tools/work.Linux-2.4.21-i386/qt-x11-free-3.1.2/tools/assistant/lib'
make[1]: *** [sub-assistant-lib] Error 2
make[1]: Leaving directory `/work/pkgbuild/x11/qt3-tools/work.Linux-2.4.21-i386/qt-x11-free-3.1.2/tools'
make: *** [sub-tools] Error 2
*** Error code 2

A workaround is to copy it from /usr/lib into the buildlink directory.

>How-To-Repeat:
build qt3-tools on Slackware 9.

>Fix:
I think fake libtool archive magic is required.

fwiw, my /usr/lib/libstdc++.la looks like this:


# libstdc++.la - a libtool library file
# Generated by ltmain.sh - GNU libtool 1.4a-GCC3.0 (1.641.2.256 2001/05/28 20:09:07 with GCC-local changes)
#
# Please DO NOT delete this file!
# It is necessary for linking the library.

# The name that we can dlopen(3).
dlname='libstdc++.so.5'

# Names of this library.
library_names='libstdc++.so.5.0.2 libstdc++.so.5 libstdc++.so'

# The name of the static archive.
old_library='libstdc++.a'

# Libraries that this one depends upon.
dependency_libs=' -lm -L/usr/i386-slackware-linux/bin -L/usr/i386-slackware-linux/lib -lgcc_s -lc -lgcc_s -lm -lgcc_s -lc -lgcc_s'

# Version information for libstdc++.
current=5
age=0
revision=2

# Is this an already installed library?
installed=yes

# Files to dlopen/dlpreopen
dlopen=''
dlpreopen=''

# Directory that this library needs to be installed in:
libdir='/usr/lib/.'
>Release-Note:
>Audit-Trail:
>Unformatted: