如何让ocamlopt链接到glibc 2.5?

问题描述:

有没有办法让ocamlopt与glibc 2.5链接,这样我就可以在只有该版本库的机器上运行生成的二进制文件?如何让ocamlopt链接到glibc 2.5?

如果可能的话,是否还有额外的软件包需要安装在我的机器上?我的机器没有glibc 2.5。有包吗?

在此先感谢。

您可以使用下面的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。

是的,你需要为连接器安装库来完成它的工作。实质上,你会希望你的系统看起来像目标系统(你希望你的代码运行的系统)。有关如何在系统上安装库的建议,我建议在专门针对该系统的论坛中进行询问。

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

+0

我确信这是真的,但它增加了许多OP后期可能需要担心的并发症。对于生产工作,我相信你会想把它作为一个交叉构建(使用chroot或虚拟环境)。为了进行实验,可能会直接在自己的系统上工作(尽管可能会产生比解决问题更多的问题 - 我将推迟到拥有更多经验的人员)。 –

+0

从安装旧的glibc和配置构建工具(但不是系统的其余部分)开始使用它并不是微不足道的事实。 – ygrek