gcc 3.2 - zepsute libstdc++.la

Jakub Bogusz qboosh w pld.org.pl
Sob, 7 Wrz 2002, 16:27:10 CEST


libstdc++.la jest (tylko) w /usr/lib, a zawiera (po przeróbce pod koniec
%install):
libdir='/usr/lib/gcc-lib/athlon-pld-linux/3.2'

a także różne dziwne rzeczy w dependency_libs:
dependency_libs=' -L/home/comp/rpm/BUILD/gcc-3.2/obj-athlon-pld-linux/athlon-pld-linux/libstdc++-v3/src -L/home/comp/rpm/BUILD/gcc-3.2/obj-athlon-pld-linux/athlon-pld-linux/libstdc++-v3/src/.libs -lm
-lm -lm -L/home/comp/rpm/BUILD/gcc-3.2/obj-athlon-pld-linux/gcc -lgcc_s -lc -lgcc_s -lm -lgcc_s -lc
-lgcc_s'

O ile to drugie jest tylko brzydkie (i propagowane w *.la zależnych od
libstdc++.la), to pierwsze psuje, bo w *.la zlinkowanych z libstdc++
w dependency_libs ląduje coś takiego:
/usr/lib/gcc-lib/athlon-pld-linux/3.2/libstdc++.la

A efekt (próba linkowania openjade z libosp):
/bin/sh ../libtool --mode=link g++  -O2 -march=athlon  -s -o openjade  jade.o SgmlFOTBuilder.o RtfFOTBuilder.o HtmlFOTBuilder.o TeXFOTBuilder.o TransformFOTBuilder.o MifFOTBuilder.o MessageModule.o ../style/libostyle.la ../spgrove/libospgrove.la ../grove/libogrove.la -losp -lpthread
mkdir .libs
libtool: link: cannot find the library `/usr/lib/gcc-lib/athlon-pld-linux/3.2/libstdc++.la'
make[3]: *** [openjade] Error 1

Czyli albo libdir musi być /usr/lib (BTW, dlaczego libstdc++.a jest
przenoszona?), albo musi być symlink do libstdc++.la.


-- 
Jakub Bogusz    http://prioris.mini.pw.edu.pl/~qboosh/



Więcej informacji o liście dyskusyjnej pld-devel-pl