У меня есть решение VS2013 с 4 проектами. Мой проект запуска (A) зависит от других трех проектов (B, C и D). Все 3 проекта скомпилируются без ссылок на ошибки.VS2013 LNK1104 запрашивает другую версию внешнего lib (boost)
Мой проект запуска запрашивает libboost_filesystem-vc120-mt-gd-1_55.lib
, но при поиске в свойствах проекта всех проектов нет зависимостей от lib, даже в исходных файлах #pragma comment(lib)
. Кроме того, единственным проектом, который использует boost/filesystem.hpp
, является B, который компилируется без ошибок.
Обратите внимание, что у меня есть все файлы boost под C:\Program Files (x86)\Boost\lib32-msvc-12.0
, и я использую boost 1.56.
Мои вопросы:
- почему же просят бустерного Lib, когда B является единственным проектом, используя файловую систему BOOST в?
- Почему требуется ускорение 1.55 lib при увеличении 1.56?
- Если B - единственный проект, использующий
boost::filesystem
, и он отлично компилируется, почему я получаю эту ошибку компоновщика? - Почему эта зависимость не содержит явных зависимостей lib в свойствах проекта или исходном коде?
Я также смотрел во все файлы заголовков под файловую систему включает в себя, и я не видел #pragma comment(lib)
Я перестроил каждый проект отдельно. У меня также есть опция компилятора, но я не знаю, что именно это позволяет мне видеть. –
@Francisco, поиск повышения 1.55 заголовков в окне вывода во время компиляции. Я не могу сказать, где они находятся на вашей машине. Вероятно, вы можете сначала их фильтровать с помощью «файловой системы». – magras