我正在尝试在Redhat集群(x86_64主机)上设置交叉mingw。我没有root访问权限,可用的mingw二进制文件不起作用(glibc版本错误等)。我正在按照这个教程进行操作:
很不幸,在处理了一些问题后,我在教程的"构建crt(Mingw-w64本身)"步骤中卡住了。我正在使用sysroot并且有正确的$PATH。经过一段时间和一些完成的make命令后,Make会输出以下错误:
我在谷歌上找到的建议是检查是否使用了正确的编译器。正如我所说,我的$PATH很好(/usr/lib64/qt-3.3/bin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/opt/bin:/usr/atria/bin:/opt/UsageModel:/home/zaluski/bin:/var/fpwork/mingw/bin),并且在日志中有x86_64-w64-mingw32-gcc。
http://sourceforge.net/apps/trac/mingw-w64/wiki/Cross%20Win32%20and%20Win64%20compiler
我正在从以下源代码tarball编译:binutils-2.20.1.tar.bz2
gcc-4.7.0.tar.bz2
gmp-5.0.4.tar.bz2
mingw-w64-v2.0.2.tar.gz
mpc-0.9.tar.gz
mpfr-2.4.2.tar.bz2
很不幸,在处理了一些问题后,我在教程的"构建crt(Mingw-w64本身)"步骤中卡住了。我正在使用sysroot并且有正确的$PATH。经过一段时间和一些完成的make命令后,Make会输出以下错误:
x86_64-w64-mingw32-ranlib lib64/libws2_32.a
x86_64-w64-mingw32-gcc -DHAVE_CONFIG_H -I. -I/home/zaluski/work/mingw-builds/mingw-w64-v2.0.2/mingw-w64-crt -D_CRTBLD -I/var/fpwork/mingw/x86_64-w64-mingw32/include -pipe -std=gnu99 -Wall -Wextra -Wformat -Wstrict-aliasing -Wshadow -Wpacked -Winline -Wimplicit-function-declaration -Wmissing-noreturn -Wmissing-prototypes -g -O2 -m64 -I/home/zaluski/work/mingw-builds/mingw-w64-v2.0.2/mingw-w64-crt/include -D_SYSCRT=1 -DCRTDLL=1 -c /home/zaluski/work/mingw-builds/mingw-w64-v2.0.2/mingw-w64-crt/crt/crtexe.c -o lib64/crt1.o -D__CRTDLL__ -U__MSVCRT__
{standard input}: Assembler messages:
{standard input}:713: Error: unknown pseudo-op: `.seh_handlerdata'
{standard input}:762: Error: unknown pseudo-op: `.seh_handlerdata'
make[3]: *** [lib64/crt1.o] Error 1
我在谷歌上找到的建议是检查是否使用了正确的编译器。正如我所说,我的$PATH很好(/usr/lib64/qt-3.3/bin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/opt/bin:/usr/atria/bin:/opt/UsageModel:/home/zaluski/bin:/var/fpwork/mingw/bin),并且在日志中有x86_64-w64-mingw32-gcc。