Сначала: я не использую уже скомпилированную библиотеку.
Вот ситуация: у меня есть проект C ++ в eclipse CDT, который имеет структуру папок, подобную этой:
project
somefoldername
src
include
library
src
include
somefoldername / src и library / src определены как исходные папки, а somefoldername / include, а также library / include определены как включаемые папки (в C / C ++ General-> Paths and Symbols, что также влияет на опцию компиляторов -I ).
Папка «library» содержит исходный код библиотеки, используемой моим собственным кодом (который можно найти в «somefolder»). Что ж, компиляция всего проекта работает нормально, но связывание завершается с целой кучей ошибок «неопределенной ссылки» в источнике библиотеки.
Появляются неопределенные ссылочные ошибки, хотя создаются * .o-файлы, в которых должны быть найдены отсутствующие функции, а также передаются компоновщику позже.
Что я делаю не так?
Редактировать: Обновлено до текущей конфигурации и попытки решить проблему.
Edit2: Принятый ответ немного помог мне, но самой большой проблемой, казалось, была политика «связать все сразу», за которой последовало затмение. Я перешел к autoconf и сначала собрал библиотеку, а затем связал ее с основным приложением. Хотя это больше работы, это более чистый подход.