[devel] Помогите победить libtool

Yura Zotov =?iso-8859-1?q?yznews_=CE=C1_hotbox=2Eru?=
Вт Фев 12 13:34:20 MSK 2002


При бдительно рассмотрении пакета libnetcdf оказалось, что он
собирается неправильно. В нем не собирается библиотека-интерфейс
к C++. Происходит это потому, что эта библиотека линкуется с
только сто собранной C-библиотекой. Однако, ка стадии %install
libtool заявляет

libtool install libnetcdf_c++.la /var/tmp/libnetcdf-buildroot/usr/lib
libtool: install: warning: relinking `libnetcdf_c++.la'

cd /usr/src/RPM/BUILD/netcdf-3.5.0/src/cxx; /bin/sh
/usr/bin/libtool --mode=relink gcc -o libnetcdf_c++.la netcdf.lo
ncvalues.lo -rpath /usr/lib -L../libsrc -lnetcdf

gcc -shared  netcdf.lo ncvalues.lo
-L/usr/src/RPM/BUILD/netcdf-3.5.0/src/libsrc -L/usr/lib -lnetcdf
-Wl,-soname -Wl,libnetcdf_c++.so.0 -o
.libs/libnetcdf_c++.so.0.0.0

/usr/bin/ld: cannot find -lnetcdf
collect2: ld returned 1 exit status
libtool: install: error: relink `libnetcdf_c++.la' with the above
command before installing it

Т.е. gcc не находит только что собранную библиотеку libnetcdf.so,
потому что он ее ищет в ../libsrc, а она лежит в ../libsrc/.libs.
Ее туда сама libtool при сборке кладет. Насколько я понял, пути
эти libtool берет из libnetcdf_c++.la, который создается при
сборке.

Непонятно только, почему на стадии %build библиотека все-таки
правильно собирается и складывается в sxx/.libs. В вот при
перелинковке что-то не то происходит.

Так как же libtool победить? libnetcdf нужна для OpenDX, но ему
не нужна libnetcdf_c++. Так что "и так" работать будет. Как быть?

Заранее спасибо за помощь.
Лог rpm -bi libnetcdf.spec приложен.

--
Юрий А. Зотов
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : libnetcdf.log.bz2
Тип     : application/x-bzip2
Размер  : 6008 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20020212/dda8ff4a/attachment-0001.bin>


Подробная информация о списке рассылки Devel