【问题标题】:Clang AST parsing and unique_ptr on windows - libc++Windows 上的 Clang AST 解析和 unique_ptr - libc++
【发布时间】:2014-06-22 22:35:42
【问题描述】:

我目前在 windows 下使用 clang,但只是从我的标题生成 AST 作为代码生成工具。 现在我遇到了一个无法解析 unique_ptr 的问题,应该通过告诉 clang 在命令行参数中使用 libc++ 或 libstdc++ 来解决这个问题。但我在窗户上。

我知道 libc++ 还没有完全移植到 Windows,所以我现在正在考虑使用 listdc++。

但问题是:我只是将标头解析为 AST,我真的只需要 clang 来获取正确的标头即可正确解析文件中对 std::unique_ptr 的引用。不应该只是下载源代码并告诉 clang 在哪里可以找到正确的标题,对吧?但我不知道该怎么做,clang 很晦涩。

你认为有可能实现吗?如何实现?

【问题讨论】:

    标签: c++ clang


    【解决方案1】:

    您可以使用 MinGW 或 Visual Studio - 如果您适当地设置语言选项,Clang 可以在 Windows 上处理这两种 stdlib 实现。

    【讨论】:

    • 您对我将如何做到这一点有任何指示吗?我试图避免在这台机器上构建clang,因为我只是解析语法而不编译任何它应该可能没有的东西。
    【解决方案2】:

    我刚刚发现,很简单,我只需要在调用解析器时手动传递包含目录即可。

    index.parse(file, [ '-x', 
                        'c++', 
                        '-std=c++11',
                        '-IC:\Program Files\Microsoft Visual Studio 12.0\VC\crt\src' ])
    

    可能有一种方法可以更干净地设置我的环境,但对我来说没问题。

    【讨论】:

      猜你喜欢
      • 2014-03-28
      • 2020-06-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-23
      • 1970-01-01
      • 2013-03-06
      相关资源
      最近更新 更多