Ant*_*ama 4 ocaml bytecode endianness
我在x86机器上用字节码编译OCaml程序,并将字节码传送到ppc64机器.假设ppc64机器有ocamlrun(编译为ppc64),我能在ppc64架构上执行我的程序吗?这么简单吗?
换句话说,字节码是否对字节序有抵抗力?
如果没有,那么字节码的目的是什么?
我假设你不需要任何外部功能; 当然,你需要提供它们的二进制代码.
是的,对于Ocaml支持的系统,字节码对字节序(以及字大小)有抵抗力.
(但是,您的字节码可能取决于ocamlrun
解释器的特定版本和Pervasives
程序使用的模块;因此,Ocaml 4.01的字节码可能无法在Ocaml 4.02运行时运行,反之亦然; YMMV)
尤其是当你从构建Ocaml程序编写它的源代码,它与分布式版本编译本身(boot/
子目录 ...)的ocamlc
-这是一个字节码文件.
Ocaml人非常需要这种可移植性,因为大多数Ocaml编译器都是用Ocaml本身编写的并且是自举的.
另见J.Pitrat关于元错误的博客,引导程序的诅咒,间接解释了为什么boot/ocamlc
Ocaml团队很少和小心地更新该文件的原因.在Ocaml代码中,make bootstrap
必须偶尔并非常小心地完成(至少提交更新版本的boot/ocamlc
字节码文件).
归档时间: |
|
查看次数: |
356 次 |
最近记录: |