Linux上的编译错误,但不是MacOSX

时间:2015-04-23 19:22:37

标签: c++ linux gcc compilation compiler-errors

我正在尝试编译用C ++编码的程序。它在Mac OSX上完美编译,但在Linux上失败。我一直在尝试在Linux上运行的两个独立集群,但它无法在两者上进行编译。

以下是我遇到的错误:

  

的src / LCEcomposite.cc:513:错误:没有匹配的函数调用“查找(__ gnu_cxx :: __ normal_iterator>>中__gnu_cxx :: __ normal_iterator>>中无符号整型&安培)”

以下是导致问题的代码行(LCEcomposite.cc中的第513行)

if(find(_TraitIndices.begin(), _TraitIndices.end(), i) == _TraitIndices.end()) {

这是Linux上的make版本

gcc version 4.4.7 20120313 (Red Hat 4.4.7-3) (GCC) 

这是Linux上的gcc版本

GNU Make 3.81
This program built for x86_64-redhat-linux-gnu

以下是uname -a

的输出
Linux seawolf2 2.6.32-358.18.1.el6.x86_64 #1 SMP Wed Aug 28 17:19:38 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

1 个答案:

答案 0 :(得分:2)

将此添加到您的代码中:

#include <algorithm>

Mac无论如何都包括标题,我猜,这就是它在那里工作的原因。