Мне удалось успешно настроить мой проект VS C ++ 2017 с предварительно собранными двоичными файлами BOOST. Пробежал несколько тестовых проектов и все вроде нормально работает. Теперь я пытаюсь создать выпускную версию со всеми необходимыми файлами BOOST .lib в \Release. Проблема в том, что я не знаю, какой компоновщик файлов .lib использует.

Есть ли способ узнать, на какой компоновщик BOOST .lib ссылается?
Изменить: повысить док. упомянул, что VS (MSBuild) использует Auto-Linking, что делает вещи намного проще.

0
newprint 26 Мар 2019 в 00:09

2 ответа

Лучший ответ

Я отвечу на свой вопрос.
@Lance Li-MSFT предложил установить подробность детализации, но это не помогло. Что помогло, так это передача флага компоновщику в качестве аргумента строки cmd в Visual Studio. Щелкните правой кнопкой мыши проект, Свойства => Компоновщик => Командная строка и добавьте флаг /VERBOSE:LIB В нем будут перечислены все библиотеки, которые VS ищет и связывает. Следующим шагом будет копирование вывода сборки VS. Щелкните где-нибудь в выводе и CTRL+S, чтобы сохранить вывод в файл. Найдите в файле .libs.

Для получения дополнительной информации исх. в MSVC Linker Options в документации MS.

0
newprint 28 Мар 2019 в 18:42

Я не знаю, какой компоновщик .lib файлов использует.

Не знаком с бустом. Но для msbuild в Visual studio go Tools=>Options=>Projects and Solutions=>Build and Run измените build verbosity на Detailed.

После этого мы можем увидеть подробное выходное сообщение из msbuild, которое отображает процесс msbuild. Возможно, вам нужна цель 'link', которая предоставляет подробную информацию о процессе ссылки, как показано ниже:

enter image description here

Надеюсь, это поможет.

1
Lance Li-MSFT 26 Мар 2019 в 07:48