叮当"hello, world!"窗口中的链接错误
clang "hello, world!" link errors in windows
我刚刚下载了CLang源代码,使用CMake制作了一个Visual c++ 10 IDE工作区,并从Visual c++ 10.0 (express)构建了所有内容。
现在我在hello world:
上得到了一堆链接错误<>之前d: 开发 test>输入con>foo.cpp# include & lt; iostream>使用命名空间std;Int main() {count <<"你好,黏黏的世界!"& lt; & lt;endl;}Z ^d: 开发 test>铿锵声+ + foo.cppfoo - 839435。0:错误LNK2019:未解析的外部符号__ZSt4cout在函数_main中引用foo - 839435。0:错误LNK2019:在函数__ZNSt14error_categoryD0Ev中引用的未解析的外部符号__ZdlPvfoo - 839435。0:错误LNK2019:在函数__ZNSo6sentry中引用的未解析的外部符号__ZSt18uncaught_exceptionvD2Evfoo - 839435。0:错误LNK2019:在函数__ZNSt8ios_base5clearEib中引用的未解析的外部符号__cxa_rethrowfoo - 839435。0:错误LNK2019:在函数__ZNSt8ios_base5clearEib中引用的未解析的外部符号__cxa_allocate_exceptionfoo - 839435。0:错误LNK2019:在函数__ZNSt8ios_base5clearEib中引用的未解析的外部符号__cxa_throwfoo - 839435。0:错误LNK2019:在函数__ZSt15make_er中引用的未解析的外部符号__ZSt17iostream_categoryv之前那么我能做些什么呢?
如果你想在Windows上试验Clang,我建议使用MinGW构建的版本,就像我在这里提供的那样(或者使用你最喜欢的MinGW工具链自己构建):
- 32位
64位
您将需要gcc
和clang
包(没有linux/mac/cygwin后缀的包)并将它们解压缩到同一目录。Clang使用gcc来链接,并且可以链接到gcc的libstdc++,几乎可以让您访问c++标准库。例外情况适用于32位版本。我没有任何运气与调试信息虽然。
正在为Clang提供更好的MS支持,但这是一个缓慢的任务。
我想这里有一个误解。
Clang正在(慢慢地)学习如何解析 MFC头文件。据我所知,franois Pichet在这个项目上是独自一人,但整个头文件中只有几个错误(!),显然vc++解析附带的标准库很久以前就完成了。
然而,这是关于AST生成,而不是代码生成。Clang目前无法正确生成与vc++库交互的代码。不仅名称不完整,而且ABI仍在成形中(在过去的2个月里已经有许多补丁来获得正确的填充/对齐),并且存在一个长期存在的问题。如果你想在Windows上使用Clang,你应该使用MinGW或MinGW64,参见ruben的回答
与MinGW gcc不同,clang不包含glibc库,因此默认情况下,它没有标准库或其他任何东西。我不知道如何使用Visual c++标准库与它,但它很清楚,从你的帖子,默认情况下,它产生像gcc的符号,所以你需要使用它与glibc或newlib…
您可以使用-Ldirectory
指定库路径到.lib文件(或为glibc指定。a),或者将它们放入默认的clang搜索路径之一(运行:clang -v -x c++ -fsyntax-only some file
查看它们)
使用clang++只编译。cpp,然后代替MS link try ld link。
Clang/LLVM对Windows的支持还不完善。尝试包含这个选项:-Xclang -cxx-abi -Xclang microsoft
。但是,我不确定它是否正确工作。
- [longjmp/setjmp]c++ 相同的代码窗口有异常 Linux 没有错误并且运行良好
- 可能的Qt5错误:调用setFixedSize()禁用主窗口的关闭按钮(在Win7下)
- OpenGL C++(制作简单窗口时抛出错误)
- 创建进程 API 失败,在窗口 122 上出现错误代码 10
- _CrtIsValidHeapPointer(块)错误在应用单例-帕特恩后退出主窗口时引发
- C++,弹出调试断言失败窗口,我得到矢量迭代器不兼容的错误运行时
- 使用程序集嵌入数据时"Undefined reference"错误,使用适用于窗口的 mingw-w64 编译(COFF 而不是 ELF)
- Visual Studio 2019 不会打开包含源文件的窗口,也不会定位为出现错误的行
- 将 c++ 程序语法错误重定向到窗口中的文件
- 咖啡窗口的错误
- SFML 中的分段错误 调用 sf::窗口::关闭后
- 提升 1.58.0 窗口进程.h 错误
- 模型对话框移动到主窗口后面的Qt错误
- SDL窗口的错误
- QT:错误 ["*"令牌之前的预期")",并且主窗口未命名类型]
- MPI_Win_free会导致无效窗口错误
- Mingw makefile 编译错误窗口
- wxwidgets 错误窗口.H 已包括在内
- Qt链接器错误窗口
- _mkdir给出错误窗口