【发布时间】:2014-07-17 08:12:14
【问题描述】:
我目前遇到了一个让我有点抓狂的问题。我希望这是我的一个愚蠢的错误。
为方便起见,我在 Windows 7 中添加了一个环境变量 VS_BOOST_INCLUDE_HEADER,其值设置为 D:\01_Programs\boost_1_55_0\。我的 VC C++ 包含目录包含 $(VS_BOOST_INCLUDE_HEADER)。
备注:我今天早上更改了该变量,但此后我已经多次重新启动计算机。
现在我的 VS 项目抱怨它找不到任何增强功能,例如<boost/asio.hpp>。如果我手动将整个路径添加到包含路径中(将 D:\01_Programs\boost_1_55_0\ 作为文本添加到我的 VC C++ 包含目录中),一切都会按预期工作。
为了避免简单的拼写错误,我添加了一个构建后事件:
echo $(VS_BOOST_INCLUDE_HEADER)
按预期工作:
1>PostBuildEvent:
1> D:\01_Programs\boost_1_55_0\
我的所有其他环境变量仍然按预期工作,即使是今天早上重命名的那些。
有什么想法吗?
我做错了什么?
【问题讨论】:
-
您是否考虑过构建设置可能不支持到处替换环境变量?
-
感谢您的回复。但如果这里是这种情况,为什么它昨天还在工作?为什么我的 VC++ 目录中的所有其他环境变量仍然有效?
-
您可能希望对项目使用通用属性表,然后就使用它。
-
@JoachimPileborg 虽然它对标头路径的支持足够好。
-
@Blutkoete 您是否尝试过删除/读取变量?您要添加系统变量还是用户变量? (目前不在 Windows 上,但 IIRC 有两个类别,如果您在“配置”面板中执行此操作)。
标签: c++ visual-studio-2010 visual-c++ boost