【发布时间】:2015-06-15 15:00:34
【问题描述】:
我们想使用 crosstool-NG ct-ng 编译一个定义好的 linux x86 32Bit 工具链:
glibc 2.9
gcc 4.8.4
我使用的是 ubuntu 14.04 32Bit:
Linux ubuntu 3.16.0-30-generic #40~14.04.1-Ubuntu SMP Thu Jan 15 17:45:15 UTC 2015 i686 i686 i686 GNU/Linux。
crosstool-NG 失败:Build failed in step 'Installing C library headers & start files'
编译时
/home/user/crosstool-x86-linux-32/.build/i386-unknown-linux-gnu/build/build-libc-startfiles/csu/crtn.o
它因几个汇编程序消息而失败:
[ALL ] /tmp/ccCj5ny0.s: Assembler messages:
[ALL ] /tmp/ccCj5ny0.s:92: Error: can't resolve
(和类似的错误......).LFE8' {*UND* section} -.LFB8' {UND section}
在那个特定问题之前,我们遇到了类似的问题
../sysdeps/generic/initfini.c: Assembler messages:
../sysdeps/generic/initfini.c:123: Error: open CFI at the end of file; missing .cfi_endproc directive
../sysdeps/generic/initfini.c:123: Error: open CFI at the end of file; missing .cfi_endproc directive
我们使用此帖子http://www.openwall.com/lists/owl-dev/2011/10/18/4 中的目标/主机/构建 cflags 中的“-fno-dwarf2-cfi-asm”暂时“修复”了错误。
把我们带到这里...
我很想知道这个错误的根源是什么,除了 glibc 太旧(它可能是......)。
ct-ng 的 .config 和 build.log 见附件。 http://s000.tinyupload.com/download.php?file_id=60582934753963239188&t=6058293475396323918817262
【问题讨论】:
标签: linux gcc glibc toolchain crosstool-ng