[devel] C++ libraries linking
Michael Shigorin
=?iso-8859-1?q?mike_=CE=C1_osdn=2Eorg=2Eua?=
Вт Авг 7 00:07:51 MSD 2007
On Mon, Mar 20, 2006 at 10:29:56PM +0200, Igor Vlasenko wrote:
> борясь с --as-needed в одном кривом софте (yacas),
> заметил, что его библиотеки имеют undefined symbols из
> libstdc++, и действительно, линкуются gcc:
О, а я сегодня по старой памяти и поводу в виде 1.1.0 попробовал
его упакетить. Спек в аттаче, итог сборки таков:
/bin/sh ../libtool --mode=link g++ -pipe -Wall -O2 -march=athlon -mtune=athlon-xp -Wall -o yacas yacasmain.o unixcommandline.o stdcommandline.o libyacasnumbers.la libyacas.la libyacasplatform.la ../libltdl/libltdlc.la -lm
g++ -pipe -Wall -O2 -march=athlon -mtune=athlon-xp -Wall -o .libs/yacas yacasmain.o unixcommandline.o stdcommandline.o ./.libs/libyacasnumbers.so ./.libs/libyacas.so ./.libs/libyacasplatform.so ../libltdl/.libs/libltdlc.a -ldl -lm
./.libs/libyacas.so: undefined reference to `sqrt'
./.libs/libyacas.so: undefined reference to `tan'
./.libs/libyacas.so: undefined reference to `asin'
./.libs/libyacas.so: undefined reference to `log'
./.libs/libyacas.so: undefined reference to `atan'
./.libs/libyacas.so: undefined reference to `fmod'
./.libs/libyacas.so: undefined reference to `acos'
./.libs/libyacas.so: undefined reference to `exp'
./.libs/libyacas.so: undefined reference to `sin'
./.libs/libyacas.so: undefined reference to `pow'
./.libs/libyacas.so: undefined reference to `cos'
> gcc -shared .libs/deffile.o ...
> ./.libs/libyacasnumbers.so ./.libs/libyacasplatform.so -lm -ldl
> -march=athlon -Wl,--as-needed -Wl,-soname -Wl,libyacas.so.0 -o
> .libs/libyacas.so.0.0.0
>
> однако это получается из
>
> ../libtool --mode=link g++ -pipe -Wall -O2 -march=athlon -Wall
> -Wl,--as-needed -o libyacas.la -rpath /usr/lib deffile.lo ...
> ... <other>.lo libyacasnumbers.la libyacasplatform.la -lm -ldl
>
> где явно указан g++.
>
> Кто знает в чем причина?
--
---- WBR, Michael Shigorin <mike на altlinux.ru>
------ Linux.Kiev http://www.linux.kiev.ua/
Подробная информация о списке рассылки Devel