[devel] Обновление glib2: первая кровь

Yury Aliaev =?iso-8859-1?q?mutab0r_=CE=C1_rambler=2Eru?=
Ср Мар 5 20:21:50 MSK 2008


Yury Aliaev пишет:
> Всем доброго времени суток!
> 
> После обновления я словил ошибку, заключающуюся в том, что gnucash 
> перестал пересобираться. Линкер вылетал с руганью на неопределённую 
> ссылку. Интрига состояла в том, что файл, в котором находилась нужная 
> функция (которую не мог найти линкер) оказалась в исходнике, входящем в 
> состав библиотеки, в котором линкер не мог найти ссылку. После 
> креативного вкуривания исходников я обнаружил следующую конструкцию:
> 
> G_INLINE_FUNC void mark_split (Split *s);
> 
> Это и была та самая функция, которая приводила к неразрешённой ссылке. Я 
> убрал G_INLINE_FUNC, и -- о чудо! -- всё прекрасно стало собираться.

Некоторые подробности вдогонку:

Упомянутая таким образом функция так была объявлена в заголовочном (*.h) 
файле. В самом же исходнике она была описана как

void mark_split (Split *s)

Также вдогонку пришла мысль, что нарушение сборки вызвано изменением не 
в glib2, а в gcc или ld.



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