tftp传输可执行程序问题

  昨天搭建了板子从nfs系统启动,这样只要在开发机上编写程序编译,就可以在板子上测试运行了,编写了hello world 程序,用arm编译器编译,在主板上运行,提示出错:什么exception ((什么来的,这么简单的程序语法上应该没什么问题,可能出问题的应该是编译环境或者是运行环境。

  一开始google一下,发现有人提出过相同问题,不过他们基本上是编译的时候加上了 -c选项,导致编译的是目标文件,而不是可执行文件,当然出错,而我没有。

  想想是不是编译器的问题,将编好的可执行文件通过winscp上传到树莓派上运行,结果提示段出错,于是认为是编译器有问题,用以前好的虚拟机的ubuntu编译,通过tftp传输到树莓派上,运行还是提示段出错,很奇怪,搞了很久,太迟了,洗洗睡了。

  今天下班回家,继续弄这个问题在树莓派上编了个小程序,用file看可执行程序,和我tftp进去的文件进行比较信息,发现tftp进去的文件少了一些信息,比如linux版本号等,想到是不是文件没传输完全,用ls看大小,果然少了几个字节,很奇怪,怎么会少,难道tftp不可靠。求助man。发现tftp有两种传输模式:1,ascii;2,binary。默认是ascii,我传输的是可执行程序,应该是binary才对吧,于是进入bianry模式,get 文件,查看大小,这次果然大小一样了,chmod 赋予可执行权限,运行,成功了。不知道nfs是不是也是同样的问题,也有可能是板子环境的问题,不过这次又学到了一点。

  以后,遇到难题,如果太晚了,就休息吧,休息一晚,第二天思路更清晰,效率更高。

转载于:https://www.cnblogs.com/yemeng/p/3462246.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值