代码之家  ›  专栏  ›  技术社区  ›  Meh

为Ubuntu上的CentOS编译

  •  5
  • Meh  · 技术社区  · 16 年前

    我可以在最新的Ubuntu(随4.4.3一起提供)上安装一个旧版本的gcc/g++(4.1.3)并用它编译一个,那么哪个应该在CentOS上运行?使用gcc的Ubuntu版本编译的二进制文件由于缺少导入而无法加载到CentOS上(glib_2_11,…)。我需要C++(包括异常),所以我不能静态链接到我已经尝试过的GLYBC。

    我可以安装旧的GCC而不删除新的吗?我该如何处理旧GCC要求的LIB?

    我目前正在开发CentOS中的代码,但是使用它是一件很痛苦的事情。我真的想搬到Ubuntu桌面。

    1 回复  |  直到 16 年前
        1
  •  5
  •   Josh Kelley    16 年前

    G++-4.1 is available 对于Ubuntu;只需运行 apt-get install g++-4.1 然后运行 g++-4.1 而不是 g++ . 但是,仅仅使用旧的编译器可能无法解决所有的库问题。

    就像JoachimSauer说的,你最好的选择是在Ubuntu上进行开发,然后在CentOS上进行最终的编译。

    即使你使用C++,静态链接仍然是一种选择。(不过,最好在CentOS上编译并使用动态链接。)

    编辑: 虚拟机是在CentOS上构建的最简单的方法,但是如果您希望避免运行VM的内存和CPU开销,并且不关心Ubuntu和CentOS内核之间的差异,那么您可以创建一个子目录,其中包含CentOS或Fedora文件系统和chroot do做你的构建。 This blog posting 有详细信息。