我在Debian 9.4 x64上尝试为arm32编译静态Python二进制文件。 我最初是:
rpm -qlp /python3.6.5/binutils-gold-2.29.1-16.1.armv7hl.rpm
./configure --build=arm --prefix="$PWD"/out LDFLAGS="-static -static-libgcc -Wl,--unresolved-symbols=ignore-all -Wl,--export-dynamic" CPPFLAGS=-static CXXFLAGS=-static CFLAGS="-Os -static" LDFLAGS=-static LD=ld.gold
/usr/bin/ld: BFD assertion (GNU Binutils for Debian) 2.28 as failed ../../bfd/elflink.c:14098
/usr/bin/ld: BFD (GNU Binutils for Debian) 2.28 internal error, aborting at ../../bfd/elf64-x86-64.c:6137 in elf_x86_64_finish_dynamic_symbol
/usr/bin/ld: Thanks to report this anomaly.
collect2: error: ld returned 1 exit status
Makefile:561 : the recipe for the "python" target has failed
- make: *** [python] Error 1
最后,我想为Android可以运行的所有处理器平台(arm32,aarm64,x86_x64,mips,mipsx64,...)编译Python 3.6.5,以最终获得单个二进制文件(当我完成arm32时,我将为所有其他拱门重复任务。
所引用的每个架构都有一个文件,而不是多个文件/文件夹。 以静态方式避免与外部库的任何依赖。 我选择进行构建操作,但如果存在其他危险性更小且更简单的解决方案,我就是接受者。
注意:默认情况下,所有cmd行都是通过LXTerminal在root会话中完成的。
感谢您提前寻求帮助。