我正在处理的代码在升级之前编译得很好,但现在当我使用以下任一方法将我的所有文件链接在一起时:
g++ {*.o 文件列表} 可执行 -l...
或者与我的编译器一样使用 clang 时,对于链接函数的每个函数调用,我都会收到错误消息:
"fastjet::sorted_by_pt(std::__1::vector<fastjet::PseudoJet, std::__1::allocator<fastjet::PseudoJet> > const&)", referenced from:
_main in ZJetGen.o
CZMultijet::weight() in ZJets.o
...
"std::__1::__vector_base_common<true>::__throw_out_of_range() const", referenced from:
...
有谁知道这可能是什么原因造成的?提前致谢 jack
最佳答案
发生这种情况是因为头文件在更新 Mavericks 后被删除,所以您需要安装它们,步骤如下:
安装或更新到新的 5.0.1 XCode
在 OSX 10.9 Mavericks 中安装命令行工具,方法是在终端窗口中键入以下命令,然后单击安装: xcode-select --install
现在应该可以正常工作了
关于Mavericks 升级后 OS X 上的 C++ 编译问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19636485/