【问题标题】:path correct but include not found路径正确但未找到包含
【发布时间】:2013-12-24 13:42:12
【问题描述】:

操作系统:win7、gcc++ 我已经设置:

AWE_DIR=C:\Program Files (x86)\Awesomium Technologies LLC\Awesomium SDK\1.7.3.0\

当我调用“SET”时它是这样显示的。 但是当我尝试编译我的代码时

 #include <C:\Program Files (x86)\Awesomium Technologies LLC\Awesomium SDK\1.7.3.0\include\Awesomium\WebCore.h>

正在工作,但是:

 #include <$(AWE_DIR)include\Awesomium\WebCore.h>

不工作。 (include\Awesomium\WebCore.h: 没有那个文件或目录)

我做错了什么?谢谢!

【问题讨论】:

    标签: c++ path include


    【解决方案1】:

    AWE_DIR 是一个环境变量。在查找包含文件时,您的编译器对环境变量一无所知。不应该。

    您可以将C:\Program Files (x86)\Awesomium Technologies LLC\Awesomium SDK\1.7.3.0\include 添加到编译器选项中的包含路径(使用-I),然后使用

    #include &lt;Awesomium\WebCore.h&gt;

    (没有丑陋的前导包括顺便说一句)。这肯定应该在 Awesomium 文档中描述吗?

    edit 快速检查了文档,并没有太多关于使用 Awesomium 和 gcc 的内容,只有 with VS。您也可以将$(AWE_DIR)\include%AWE_DIR%\include 等与-I 一起使用,因为在调用gcc 时,您处于某种命令行环境中,确实知道环境变量并会扩展它们。

    【讨论】:

    • 非常感谢!我期待编译器扩展 $(AWE_DIR)
    • 编译器本身不会,但构建系统应该,请参阅更新。
    • 似乎 Awesomium 只能与 VS 一起使用。我将不得不在别处寻找 html UI。
    【解决方案2】:

    c++ 预处理器不会扩展 shell 变量!尝试使用 -I 选项,并省略路径。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-11-25
      • 1970-01-01
      • 2012-05-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-27
      相关资源
      最近更新 更多