[devel] Re: как правильно слинковать динамическую библиотеку
Dmitry V. Levin
=?iso-8859-1?q?ldv_=CE=C1_altlinux=2Eorg?=
Ср Дек 25 21:33:35 MSK 2002
On Wed, Dec 25, 2002 at 08:51:34PM +0300, Alexey Tourbin wrote:
> > Если существует реальное использование этой библиотеки без задействования
> > dlopen(3), то не стоит; если не существует, то нужно добавить.
>
> $ echo "main(){}" > ldtest.c
> $ gcc ldtest.c -llua -llualib
> /usr/lib/gcc-lib/i586-alt-linux/2.96/../../../liblualib.so: undefined reference to `log'
> /usr/lib/gcc-lib/i586-alt-linux/2.96/../../../liblualib.so: undefined reference to `sqrt'
> /usr/lib/gcc-lib/i586-alt-linux/2.96/../../../liblualib.so: undefined reference to `ceil'
> /usr/lib/gcc-lib/i586-alt-linux/2.96/../../../liblualib.so: undefined reference to `floor'
> /usr/lib/gcc-lib/i586-alt-linux/2.96/../../../liblualib.so: undefined reference to `dlclose'
> /usr/lib/gcc-lib/i586-alt-linux/2.96/../../../liblualib.so: undefined reference to `fmod'
> /usr/lib/gcc-lib/i586-alt-linux/2.96/../../../liblualib.so: undefined reference to `cos'
> /usr/lib/gcc-lib/i586-alt-linux/2.96/../../../liblualib.so: undefined reference to `sin'
> /usr/lib/gcc-lib/i586-alt-linux/2.96/../../../liblualib.so: undefined reference to `atan2'
> /usr/lib/gcc-lib/i586-alt-linux/2.96/../../../liblualib.so: undefined reference to `dlopen'
> /usr/lib/gcc-lib/i586-alt-linux/2.96/../../../liblualib.so: undefined reference to `pow'
> /usr/lib/gcc-lib/i586-alt-linux/2.96/../../../liblualib.so: undefined reference to `log10'
> /usr/lib/gcc-lib/i586-alt-linux/2.96/../../../liblualib.so: undefined reference to `dlsym'
> /usr/lib/gcc-lib/i586-alt-linux/2.96/../../../liblualib.so: undefined reference to `exp'
> /usr/lib/gcc-lib/i586-alt-linux/2.96/../../../liblualib.so: undefined reference to `tan'
> /usr/lib/gcc-lib/i586-alt-linux/2.96/../../../liblualib.so: undefined reference to `atan'
> /usr/lib/gcc-lib/i586-alt-linux/2.96/../../../liblualib.so: undefined reference to `asin'
> /usr/lib/gcc-lib/i586-alt-linux/2.96/../../../liblualib.so: undefined reference to `acos'
> collect2: ld returned 1 exit status
> $
>
> Т.е. с liblua.so всё нормально, а к liblualib.so нужно ещё -lm -ldl?
Исходя из вышеприведенного, да.
--
ldv
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип : application/pgp-signature
Размер : 189 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20021225/fa0b150f/attachment-0001.bin>
Подробная информация о списке рассылки Devel