VS2013 LNK1104 запрашивает другую версию внешнего lib (boost)

У меня есть решение VS2013 с 4 проектами. Мой стартовый проект (A) зависит от трех других проектов (B, C и D). Все 3 проекта прекрасно компилируются без ссылок на ошибки.

Мой стартовый проект просит libboost_filesystem-vc120-mt-gd-1_55.lib но при просмотре свойств всех проектов нет никаких зависимостей lib, даже в исходных файлах, так как #pragma comment(lib), Кроме того, единственный проект, который использует boost/filesystem.hpp это B, который компилируется без ошибок.

Обратите внимание, что у меня есть все библиотеки повышения C:\Program Files (x86)\Boost\lib32-msvc-12.0 и я использую повышение 1,56.

Мои вопросы:

  1. Почему A запрашивает Boost Lib, когда B — единственный проект, использующий файловую систему Boost?
  2. Почему A запрашивает повышение 1,55 либ, когда у меня повышение 1,56?
  3. Если B — единственный проект, использующий boost::filesystem и он отлично компилируется, почему я получаю эту ошибку компоновщика?
  4. Почему в этой зависимости нет явных зависимостей lib в свойствах проекта или в исходном коде?

Я также посмотрел во всех заголовочных файлах в файловой системе включает и не видел #pragma comment(lib)

0

Решение

Прежде всего, я рекомендую перестроить все проекты с нуля.

Далее попробуйте опцию компилятора /showIncludes, Это даст вам включить дерево файлов с полными путями.

0

Другие решения


По вопросам рекламы [email protected]