小牛升级后OS X的C++编译问题

小牛升级后OS X的C++编译问题,c++,macos,linker,g++,clang,C++,Macos,Linker,G++,Clang,我正在编写的代码在升级之前编译得很好,但现在当我使用以下任一方法将所有文件链接到一起时: g++{List of*.o files}可执行文件-l 或者与我的编译器一样,我从链接函数调用的每个函数都会出现一个错误,如下所示: "fastjet::sorted_by_pt(std::__1::vector<fastjet::PseudoJet, std::__1::allocator<fastjet::PseudoJet> > const&)", reference

我正在编写的代码在升级之前编译得很好,但现在当我使用以下任一方法将所有文件链接到一起时:

g++{List of*.o files}可执行文件-l

或者与我的编译器一样,我从链接函数调用的每个函数都会出现一个错误,如下所示:

"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

在终端窗口中键入以下命令,然后单击Install,在OSX 10.9 Mavericks中安装命令行工具: xcode选择-安装


现在它应该可以很好地工作了

“按照”是不够好的。张贴您得到的准确、完整的错误。更好的是:写一个小的!复制错误的代码段。通常这样做,你会自己发现错误,如果没有,它会给我们提供足够的信息来帮助。看起来libc++库被移动了,你得到了错误的库。@thelamb,上面是问题的定义。我发布的信息和错误信息之间的唯一区别是,有一条信息长了几百行。@Walter,谢谢-我会看看苹果是否已经移动了它的位置。如果你怀疑他们已经移动了它,我该如何着手解决这个问题呢?干杯@chekkal,我有Xcode 5.0.1,但这没有帮助-当我尝试Xcode select-install时,我得到一个错误,该软件包不可用?嗨@Jack,尝试通过打开Xcode安装命令行工具,单击XCode菜单项->打开开发者工具->更多开发者工具现在您将被引导到apple站点,从那里您可以下载命令行工具OSx Mavericks