在MobaXterm上编译Poly / ML:ar u选项

时间:2019-03-11 08:23:41

标签: configure busybox ar polyml mobaxterm

我要在基于MogaXterm v11.1 cygwin的发行版上编译Poly / ML Standard ML编译器。完成后,我得到

<button onclick="open()">popup</button>

这里我有binutils / ar 2.29.1版本。

在具有binutils / ar 2.22.52版本的Fedora盒上,编译会通过。

我将binutils 2.22.52下载到我的MobaXterm并尝试对其进行编译,但出现了与上述相同的错误消息:

/bin/sh ./libtool  --tag=CC   --mode=link gcc  -O3 -fomit-frame-pointer -fstrict-aliasing -ffast-math -march=core2  -Wall -fexceptions   -o libffi_convenience.la  src/prep_cif.lo src/types.lo src/raw_api.lo src/java_raw_api.lo src/closures.lo      src/x86/ffi.lo src/x86/win32.lo
libtool: link: ar cru .libs/libffi_convenience.a src/.libs/prep_cif.o src/.libs/types.o src/.libs/raw_api.o src/.libs/java_raw_api.o src/.libs/closures.o src/x86/.libs/ffi.o src/x86/.libs/win32.o
ar: unknown option -- u
BusyBox v1.22.1 (2015-11-10 11:07:12    ) multi-call binary.

我看到了两种可能的原因:

  • ar的ar cru libintl.a bindtextdom.o dcgettext.o dgettext.o gettext.o finddomain.o loadmsgcat.o localealias.o textdomain.o l10nflist.o explodename.o dcigettext.o dcngettext.o dngettext.o ngettext.o plural.o plural-exp.o localcharset.o relocatable.o localename.o log.o osdep.o intl-compat.o ar: unknown option -- u 选项在2.22.52和2.29.1版本之间已弃用
  • MobaXterm使用Busybox,其中包含ar的受限版本

什么是真正的解释,我如何安装理解u选项的ar?

1 个答案:

答案 0 :(得分:2)

在polyml源代码分发的libffi目录中,我用configure编辑了AR_FLAGS=cr,然后在该目录中的make经过了编辑,然后在polyml主目录通过。

幸运的是,make选项对生成的文件没有实际影响,仅对编译时有效:

u