arm debian5交叉编译问题

发布于 2022-09-18 19:07:52 字数 642 浏览 16 评论 8

开发用机:debian 5
目标系统:arm debian5(arm debian5是用QEMU虚拟安装的Linux系统)
交叉编译环境:crosstool-0.43.tar.gz, arm-linux-gcc 4.10

如果用 arm-linux-gcc -o hello hello.c
编译出来的文件:
#file hello
hello: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.8, not stripped
到目标系统里面运行失败。

如果用 arm-linux-gcc -o hello hello.c -static
编译出来的文件:
#file hello
hello: ELF 32-bit LSB executable, ARM, version 1, statically linked, for GNU/Linux 2.4.18, not stripped
#./hello
到目标系统里面运行,显示 helloword!

不知道是交叉编译环境问题还是其他问题。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(8

心头的小情儿 2022-09-19 19:52:33

回复  cjaizss

    资源足够?什么意思?
linuxdebian 发表于 2010-09-17 16:05

    比如你的flash足够大

鹿童谣 2022-09-19 19:50:59

回复 6# cjaizss

    资源足够?什么意思?

囍笑 2022-09-19 19:49:18

回复 4# EricFisher

    因为要做USB驱动相关开发,要生成动态链接库so文件,还没有试过静态编译工程。先用hello试的。

宛菡 2022-09-19 19:41:12

动态库的问题,如果资源足够,那么你就考虑用静态来解决这个问题算了,解决快一点.

静谧 2022-09-19 19:34:11

是因为这样的,你的cross toolchain的libc跟你的目标ARM板子的libc可能不一样。

卷耳 2022-09-19 17:23:22

静态的不好使么?

花桑 2022-09-19 16:29:58

如何使用目标机器的动态库?是交叉编译链的问题吗?

神经暖 2022-09-19 13:33:06

动态库的问题。如果你的交叉工具链使用目标机的动态库,就可以了。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文