Переменные среды в Visual Studio 2013
Я пытаюсь включить мой проект в путь %OPENCV_246%\..\..\include
Это разрешает путь F:\dev\opencv_246\build\include
Однако при настройке проекта этот путь не будет разрешаться и, как следствие, ломаются включенные заголовки.
Я пробовал как %OPENCV_246%\..\..\include
, так и $(OPENCV_246)\..\..\include
без везения.
Использование пути напрямую исправляет мои включенные, но я хотел бы иметь лучший способ управления контуром через переменные среды.
На скриншоте я добавил оба для ясности. Если кто-нибудь может указать на тот шаг, который мне не хватает, я бы это оценил.
EDIT: переменная OPENCV_246
содержит значение F:\dev\opencv_246\build\x86\vc11
![screenshot]()
Ответы
Ответ 1
Студия Dev не распознает переменные среды, которые были изменены с момента ее запуска, поэтому, если вы ее изменили, требуется перезагрузка (из студии Dev, а не из компьютера).
https://superuser.com/questions/107521/why-are-changes-to-my-path-not-being-recognised
Ответ 2
Это похоже на мою проблему, которая заставила VS2013 признать изменение, внесенное мной в переменную среды (в моем случае QTDIR). Даже после перезагрузки и выключения он упрямо висел на старой ценности! (вы можете увидеть значение, если вы хотите отредактировать настройку проекта, нажмите кнопку "Макросы" и прокрутите список вниз, чтобы найти, например, "$ (QTDIR)" )
Здесь он предлагает VS2010 сильно нагружать значения, но 2013 кажется еще более острым!
После некоторых FindInFiles для старого пути кажется, что VS2013 кэширует переменные среды в вашем файле .vcxproj.user. Я понятия не имею, как он попал туда в первую очередь.
Итак, я удалил запись, закрыл решение, снова проверил файл в WordPad, чтобы убедиться, что запись не была вставлена. Затем я снова открыл решение, но старое значение все еще присутствовало в Макросах список!
Закрытие VS, похоже, сделало трюк. Теперь он, кажется, имеет правильный путь - хотя я уверен, что я проверил после того, как я впервые открыл решение, и QTDIR вообще не был в списке Macros - возможно, я запутался...
Ну, похоже, теперь все работает, и мой проект строится и ссылки на мои Qt libs без жалоб: -)
И запись в файле vcxproj.user не вернулась. Поэтому я до сих пор не знаю, как он туда попал. Возможно, я сделал что-то, чтобы сделать это некоторое время назад в предыдущей версии VS...