【问题标题】:C++ program not compiling with Clang and visual Studio 2010 ExpressC++ 程序不能用 Clang 和 Visual Studio 2010 Express 编译
【发布时间】:2014-06-13 04:32:20
【问题描述】:

我正在尝试使用 Visual c++ 2010 express 编译本教程中描述的源代码。 http://kevinaboos.wordpress.com/2013/07/23/clang-tutorial-part-ii-libtooling-example/

完整的源代码在这里。 https://github.com/kevinaboos/LibToolingExample

我已使用此链接中提供的可执行文件来安装 LLVM。 由于格式问题,我无法发布完整的错误消息。但 我会尽量提供尽可能多的信息。 当我尝试构建解决方案时,出现以下错误:-

编译警告期间未使用的参数。 C:\Program Files (x86)\LLVM\include\llvm/Support/Compiler.h(57,1):错误:LLVM 至少需要 MSVC 2012。 C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xlocnum(228,53):错误:不允许定义 dllimport 静态字段 C:\Program Files (x86)\LLVM\include\llvm/ADT/IntrusiveRefCntPtr.h(26,9):致命错误:找不到“原子”文件

我使用的是 windows-7 64 位。 我通过更改项目属性链接了头文件和库。 我是构建 C++ 应用程序的新手。请帮忙。

【问题讨论】:

  • 它是否可以按照错误消息中的建议与 MSVC2012 一起使用?
  • 我没有visual c++ 2012
  • 错误信息看起来很清楚
  • @SouravMukherjee 如果我没记错的话,MSVC 是免费下载的。
  • MSVC 2012 说:- VC\include\xstring(2195,3): 错误:无法编译这个 try 语句,但从宏 '_TRY_BEGIN' #define _TRY_BEGIN try { 编译一个简单的 hello world 程序.这是我试图编译的 hello world 程序:- #include using namespace std; int main() { cout

标签: c++ visual-studio-2010 windows-7-x64 llvm-clang


【解决方案1】:

MSVC 2012 build error,找到解决办法here

根据Clang documentation,尚不支持异常和 SEH。你必须禁用它。

要在 Visual Studio 中禁用异常,请打开项目属性并转到 C/C++、预处理器,然后将 _HAS_EXCEPTIONS=0 添加到预处理器定义中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-01-09
    • 1970-01-01
    • 2011-06-30
    • 1970-01-01
    • 1970-01-01
    • 2010-12-24
    • 2011-06-18
    • 1970-01-01
    相关资源
    最近更新 更多