Как найти библиотеки для ссылки? или как я могу создать * -config (например, sdl-config, llvm-config)? - PullRequest
0 голосов
/ 14 июня 2010

Я хочу написать программу, которая выводит список библиотек, которые я должен связать с данными файлами исходного кода (или объектов) (для программ на C или C ++).

В * nix есть полезные инструменты, такие как sdl-config и llvm-config. Но я хочу, чтобы моя программа тоже работала в Windows.

Использование:

get-library-names -l /path/to/lib a.cpp b.cpp c.cpp d.obj

Тогда get-library-names получит список имен функций, которые вызываются из a.cpp, b.cpp, c.cpp и d.obj. И он будет искать все файлы библиотеки в каталоге /path/to/lib и перечислять библиотеки, которые необходимы для правильной связи.

Такой инструмент уже написан? Разве это не тривиально, чтобы написать такой инструмент? Как вы узнаете, на какие библиотеки следует ссылаться?

Спасибо.

1 Ответ

0 голосов
/ 14 июня 2010

Да, вы можете создать файл pkg-config, который позволит вам запустить 'pkg-config --cflags', чтобы получить флаги компилятора, или 'pkg-config --libs', чтобы получить библиотеки компоновщика.

http://pkg -config.freedesktop.org / вики /

Если вы работаете в Linux, попробуйте заглянуть в / usr / lib / pkgconfig, чтобы найти примеры файлов .pc, которые вы можете использовать в качестве моделей. Вы также можете использовать pkg-config в Windows, но это не то, что поставляется с ним.

...