2013-01-14 171 views
0

我正在尝试编译一个程序,以在具有ARM926EJ-S处理器的Linux电路板上运行。所以我安装了Debian嵌入式交叉开发工具链,并尝试用-march = armv5te在gcc中编译Hello World。当我尝试在板上运行二进制文件时,文件未找到错误(由于库版本)导致崩溃,之后,我尝试使用-static标志进行编译,并且出现seg错误(0x0000827c在__libc_start_main()中,表示mr gdb槽gdbserver)。ARM交叉编译介绍?

有什么想法在这里做什么来让东西运行?

+0

确保你使用'gnueabi'工具链,而不是'gnueabihf' –

+0

你需要为你的电路板获得正确的(几乎确切的)工具链,否则它会太痛苦。这里有很多工具链讨论,这样可以帮助你理解问题,http://stackoverflow.com/questions/13143393/distro-provided-cross-compiler-vs-custom-built-gcc – auselen

回答

0

显然,解决方案是尝试尽可能多的工具链,你可以找到。最终你会在花费几个小时编译工具链之后找到可用的工具。在这种情况下,uClibc buildroot。