由于 LLVM 错误,Xcode 无法编译
Xcode won't compile due to LLVM error
我正在尝试在xcode中编写C 程序。我的代码似乎没有任何问题,但是当我尝试编译时,我会收到以下错误:
Implicit instantiation of undefined template 'std::__1::hash<std::1::pair<unsigned long, unsigned long> >'
此错误显然是在LLVM的type_traits
文件的第1008行中。我认为这是一个库错误,但是当我尝试编译一个简单的Hello World时,它可以正常工作。
有人知道我缺少什么吗?
std::pair
没有std::hash
专业化(或std::tuple
)。这是C 标准最荒谬的功能之一,它削弱了库。
这可能是因为您使用std::pair
作为unordered_map
中的键。
您需要做的是包括Boost:<boost/functional/hash.hpp>
,并将boost::hash<std::pair<X, Y>>
声明为地图的第三模板参数。
直到std::hash
固定,它几乎没有用。
相关文章:
- SFML在使用Xcode 11和macOS Catalina(zsh)编译后崩溃
- 我不能用C++编译Xcode库
- 将XCode升级到verison 11.1后,C++编译失败
- 某些C++标头在放入 Xcode 前缀/预编译标头时会中断构建
- C 11模板代码 - 无法在XCode中编译
- 尝试在终端(MacOSX)中编译两个.cpp文件(来自XCode)时"Duplicate symbol"
- XCode预编译标头中的C 语言的预处理器定义了什么?
- Xcode - 如何使用"-fexhaustive-register-search"进行编译 - 链接器崩溃需要
- C++静态库未在 Mac 上的 Xcode 中编译
- 如果标头位于预编译标头 xcode 中,则找不到默认模板参数
- 编译 c++ 代码时 xcode 上的线程
- 由于 LLVM 错误,Xcode 无法编译
- 在 xcode 中编译和链接 OpenCV 3.0.0 时出现问题
- 无法使用 Xcode 和终端在 Mac OS 上使用 OpenGL 库编译 c++ 文件
- Xcode 4.5.2 致命错误:预编译标头已被修改
- boost.log在使用Xcode预编译头时中断
- 用警告在G 上编译代码,但在Clang3.1(Xcode 4.3.3)上给出了相同代码的错误
- 在 Xcode 6 中运行 cpp-netlib - 编译但在运行时崩溃
- "Extra ';' " Xcode C++项目中的编译错误
- xCode正在编译旧的C++代码