老gcc版本的提升

时间:2010-08-11 09:41:03

标签: linux gcc compiler-construction boost version

当我尝试在旧Linux系统上使用boost时,我收到消息:

  

编译器未配置 - 请重新配置

我的gcc版本是:

  

gcc version 2.9-gnupro-99r1

在boost的gcc.hpp文件中,我看到:

// versions check:
// we don't know gcc prior to version 2.90:
#if (__GNUC__ == 2) && (__GNUC_MINOR__ < 90)
#  error "Compiler not configured - please reconfigure"
#endif

那么,gcc 2.9和2.90实际上是一回事吗?如果是的话 - 我可以更新gcc.hpp吗?如果没有,我怎么还能使用boost?


编辑:

我实际上尝试将(__GNUC_MINOR__ < 90)更改为(__GNUC_MINOR__ < 9)。 似乎2.9和2.90不一样,因为现在我得到了编译错误。

似乎错误是因为此编译器不支持预处理器宏中的\(行扩展名)字符。许多地方都会使用这些换行符。

2 个答案:

答案 0 :(得分:2)

所有C和C ++编译器都支持自宏年以来的宏,所以这不是问题所在。我认为Boost不太可能支持2.9x编译器(但谁知道?) - 为什么不简单地升级编译器?海湾合作委员会现在的版本为4.5,所以你的版本已经过时了。

您可能还想查看this page,它记录了Boost的编译器支持。

答案 1 :(得分:2)

如果无法升级编译器,请降级源。不是非常明智的建议,但仍然可能有用。

Old Boost版本可在此处找到: http://sourceforge.net/projects/boost/files/

祝你好运!

PS:如果是破坏你的换行符,也许你可以尝试删除它们(如果没有太多的话)