В visual studio как включить все .libs в папку - PullRequest
13 голосов
/ 12 ноября 2011

Я пытаюсь построить проект с другим проектом. Там много библиотек, и я не уверен, где присутствуют необходимые символы, на которые нет ссылок.

Есть ли способ включить все файлы .lib во время компиляции?

Я дал каталог lib в качестве дополнительного ввода для компоновщика, однако он запрашивает включение отдельных файлов .lib. Есть ли возможность сказать, включить все .lib s в эту папку?

Ответы [ 4 ]

15 голосов
/ 11 сентября 2014

BigD ответ правильный.

Место, где вы на самом деле это сделаете, по крайней мере в VS 2012, это щелкнуть правой кнопкой мыши по проекту, а затем:

Свойства> Свойства конфигурации> Линкер> Командная строка> Дополнительные параметры

В этом поле вы просто наберете:

"[libFolder]\*.lib"

Вы можете иметь несколько мест, разделяя места пробелом, например:

"[libFolder1]\*.lib" "[libFolder2]\*.lib"
5 голосов
/ 10 июля 2014

Вы должны просто написать "someFolder / *. Lib", где вы должны указать библиотеки для связи с

3 голосов
/ 12 ноября 2011

AFAIK нет способа сделать это: вы можете

  • включить каждую библиотеку в компоновщик-> Input-> Additional Dependencies

  • включить libs через директиву pragma в исходный файл, т.е. добавить

комментарий прагмы (lib, "some_lib.lib")

  • если проекты являются частью решения, вы можете выбрать их как «Зависимости проекта»

Самый простой способ сделать это - использовать прагму, поскольку вам нужно сделать это только один раз для обоихотладка и выпуск.Например, вы можете составить список каталогов вашего каталога lib, а затем скопировать и вставить оставшуюся часть директивы в ваши исходные файлы.

Далее, чтобы получить список символов статической библиотеки, выможно запустить утилиту dumpbin для файлов lib (AFAIR с параметром / ALL).

0 голосов
/ 14 февраля 2014

Будет выведен файл со всеми перечисленными .lib файлами.Вы можете скопировать и вставить это или изменить его в соответствии с вашими потребностями.

Сохранить как пакет.

for %%f in (*.lib) DO echo|set /p=%%~f >> alllibs.txt 
...