linux嵌入式系统交叉开发环境

交叉开发的特点是使用交叉开发环境编译出目标机上可以运行的二进制程序。

tool chain就是一整套的交叉开发工具,包括cross assembler、cross compiler、
cross library以及cross link组成。

不同的目标板就需要对tool chain进行不同的配置,这样才能编译出能在指定
目标板上运行的程序。

这样也终于明白了为什么之前在server上用gcc编译一个小程序可以在server上打开的终端上运行,
而不能在目标机上运行了。
所以,要将程序放在目标机上运行,就必须要指定使用为目标机所配置的tool chain来编译程序,
这样编译出来的程序就可以在目标机上运行了。
sh-# ps -A | grep test
 1960 ?        00:00:00 test_main
sh-#

而要判断系统信息,可以使用uname命令打印系统信息,
sh-# uname -a
Linux host 3.0.13 #1 PREEMPT Tue Oct 1 13:08:01 CST 2013 arm7 GNU/Linux
再使用file命令查看当前文件的信息,

这样也就解释了为什么原先在目标板上使用ldd查看test_main程序,会把它当前一个非动态可执行程序呢。
sh-# ldd ./test_main
        not a dynamic executable
sh-#

原来这些都跟tool chain有关哦。
仿佛离成功又进一步了,真心开心哈。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值