Как лучше всего узнать, к какой библиотеке может принадлежать функция?
При сборке исходного кода я иногда получаю ошибки «неопределенная ссылка на». Когда это вызовы функций, я хотел бы знать, какие библиотеки нужно связать проще, чем в моей обычной игре в догадки. Любые идеи?
-Ченц
2 ответа
Насколько я знаю, вам не повезло с автоматизированным решением.
Вы можете попробовать сбросить все символы из всех ваших обычных библиотек в файл и просмотреть результаты, чтобы найти тот, который вы ищете. Вам придется делать сброс нечасто
Я думаю, что инструмент unix "nm" - это то, что вы ищете. Я не знаю о окнах, извините
Что-то вроде следующего должно делать это в Linux:
find . -name "*.so" -print0 | xargs -0 nm -A | egrep ' [TWDB] ' > symbols.out
Вы можете попробовать найти функцию с помощью man или на msdn.microsoft.com в зависимости от ОС. В обоих руководствах указана библиотека, в которой существует функция. В противном случае, если вы используете пользовательскую библиотеку, вы можете использовать документы для этой пользовательской библиотеки. А в противном случае рекомендация Глена использовать nm для идентификации всех символов во всех библиотеках может сделать это.
Похожие вопросы
Новые вопросы
gcc
GCC - это коллекция компиляторов GNU. Это де-факто стандартный компилятор для C, C ++, Go, Fortran и Ada в Linux, а также поддерживает многие другие языки и платформы.