Boost C ++ Libaries в проекте Visual Studio 2017 C ++ - «Не удается открыть включаемый файл» - PullRequest
0 голосов
/ 01 марта 2019

Я пытаюсь добавить библиотеки Boost C ++ в мой проект C ++, созданный в Visual Studio 2017.

Я следовал инструкциям здесь .Когда это не сработало, я попробовал совет в этом посте .Ни одно из решений не работало для меня.

Что я сделал:

  • Скачано boost_1_69_0-msvc-14.1-64.exe со страницы скомпилированных библиотек наддува
  • Установлено вD:\local\boost_1_69_0
  • В своем проекте я добавил D:\local\boost_1_69_0 в Свойства> Каталоги VC ++> Включить каталоги и добавил D:\local\boost_1_69_0\lib64-msvc-14.1 в Свойства> Каталоги VC ++> Каталоги библиотек
  • Мой проект настроен на x64 , а вышеуказанные настройки были установлены в конфигурации x64

Когда я пытаюсь создать свойПроект Я получаю эту ошибку:

Ошибка C1083 Не удается открыть файл включения: 'boost / regex.hpp': Нет такого файла или каталога

Который указывает на эту строкукод в одном из моих файлов .cpp:

#include <boost/regex.hpp>

Ответы [ 3 ]

0 голосов
/ 01 марта 2019

Перейдите в папку D: \ local \ boost_1_69_0 и посмотрите, есть ли у вас подпапка с именем , включающая .В противном случае вместо D: \ local \ boost_1_69_0 необходимо установить D: \ local \ boost_1_69_0 \ include в Свойства> Каталоги VC ++> Включить каталоги

Другими словами, попробуйте найти файл, который вы включаете на вашем жестком диске.Посмотрите на полный путь к файлу.Сравните этот полный путь с путем, который вы добавили в список включаемых каталогов ( Свойства> Каталоги VC ++> Включить каталоги ), с относительным путем, указанным вами непосредственно перед именем файла в вашей директиве включения ( boost)).Проверьте, одинаковы ли они.

Если это не поможет, убедитесь, что вы изменили список включаемых каталогов для той же конфигурации сборки, что и при попытке сборки (если вы собираете Debug, убедитесь, что вы измениликонфигурация для отладки тоже).Начиная с VS 2015 IDE перестала проверять, что оба они выбраны синхронно, что раздражает.

0 голосов
/ 01 марта 2019

Обнаружил, что это не сработало, потому что я включил тот же файл .cpp, который имеет добавление для повышения, в мой проект модульного тестирования, в котором НЕ были установлены папки Include / Library.Настройки в моем исходном вопросе теперь работают.

0 голосов
/ 01 марта 2019

Если ваши файлы скопированы, то вы должны скомпилировать обычную библиотеку .... Если такая же версия компилятора копирует машину.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...