我该如何要求ocamlopt链接到glibc 2.5?

4

有没有一种方法可以要求ocamlopt链接到glibc 2.5,以便我可以在只有该版本库的机器上运行结果二进制文件?

如果可能,我是否需要在我的机器上安装其他软件包? 我的机器没有glibc 2.5。 是否有适用于此版本的软件包?

提前致谢。

2个回答

4
您可以使用以下ocamlopt标志来指定编译和链接标志:
-cc <comp>  Use <comp> as the C compiler and linker
-cclib <opt>  Pass option <opt> to the C linker
-ccopt <opt>  Pass option <opt> to the C compiler and linker

只要您知道如何要求C编译器按照您想要的方式链接,就可以使用这些标志来实现。实际上,我建议按照以下顺序解决问题。首先使用(简单的)C程序使其正常工作,然后再尝试使用ocamlopt。
是的,您需要安装库才能让链接器正常工作。实质上,您希望您的系统看起来像目标系统(您想要代码运行的系统)。关于如何在您的系统上安装库的建议,我建议您在专门针对该系统的论坛上咨询。

3

根据我的经验,最好使用基于glibc-2.5的系统获取chroot或vm,并在那里编译可分发的二进制文件。


我相信这是正确的,但它会增加很多复杂性,可能会让OP以后担心。对于生产工作,我相信您希望将其视为交叉构建(使用chrooted或虚拟环境)。对于仅进行实验,可能可以直接在自己的系统上工作(尽管可能会产生更多问题,而不是解决问题 - 我听从那些有更多经验的人的意见)。 - Jeffrey Scofield
从一个事实开始,安装旧版glibc并配置构建工具(但不是系统的其余部分)以使用它并不容易。 - ygrek

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接