[devel] Обновление glib2: первая кровь
Dmitry V. Levin
=?iso-8859-1?q?ldv_=CE=C1_altlinux=2Eorg?=
Ср Мар 5 22:16:45 MSK 2008
On Wed, Mar 05, 2008 at 08:21:50PM +0300, Yury Aliaev wrote:
> Yury Aliaev пишет:
> >Всем доброго времени суток!
> >
> >После обновления я словил ошибку, заключающуюся в том, что gnucash
> >перестал пересобираться. Линкер вылетал с руганью на неопределённую
> >ссылку. Интрига состояла в том, что файл, в котором находилась нужная
> >функция (которую не мог найти линкер) оказалась в исходнике, входящем в
> >состав библиотеки, в котором линкер не мог найти ссылку. После
> >креативного вкуривания исходников я обнаружил следующую конструкцию:
> >
> >G_INLINE_FUNC void mark_split (Split *s);
> >
> >Это и была та самая функция, которая приводила к неразрешённой ссылке. Я
> >убрал G_INLINE_FUNC, и -- о чудо! -- всё прекрасно стало собираться.
Значит, определение G_INLINE_FUNC в пакете glib2-devel изменилось.
> Некоторые подробности вдогонку:
>
> Упомянутая таким образом функция так была объявлена в заголовочном (*.h)
> файле. В самом же исходнике она была описана как
>
> void mark_split (Split *s)
>
> Также вдогонку пришла мысль, что нарушение сборки вызвано изменением не
> в glib2, а в gcc или ld.
Не надо начинать поиск причины ошибок с gcc или ld. Даже если вы можете
их идентифицировать, подозревать gcc или ld имеет смысл далеко не в
первую очередь.
--
ldv
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип : application/pgp-signature
Размер : 197 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20080305/7b88df85/attachment-0002.bin>
Подробная информация о списке рассылки Devel