linux 驱动报错: /home/plg/pwm_test: not found || Accessing a corrupted shared library

运行驱动程序时报错<`>!

在友善之臂mini2440开发板运行简单的pwm驱动程序出现报错!

  1. 问题初现
    #####如标题#####

在这里插入图片描述
2.初步分析
<n~n>’
百度发现还是有人遇到过这个问题,初步分析为缺少某个.a(库)文件,只要cp在对应执行环境下的/lib文件下即可解决这个问题。但是…我在ubutun 18.04 上复制出来到开发板上面之后执行时竟然又出现了新的报错!
时候不早了, 先留着吧<`>’

3.解决方案

古人说: 人丑就要对读书
这句话传下来自然是有他自己的道理的哈哈.
今早起床开始看书结果看到一个知识点后发现可能能用这个解决问题!!!

下面来干货了:

<`>编译程序正常用法:

$ arm-linux-gcc    code.c   -o   code

这种编译方法为动态编译,即查找所需库是否加载到内核,若否,则加载,之后直接调用内核中的库进行动态编译,这种方法的
优点:编译结果文件占用内存小(体积小,节省空间),对于内存小的机器能够存取更多文件代码
缺点: 如果目标环境缺少对应的库则会产生执行错误,即不能运行改可执行文件
.
.
.
(以上就是咱们出现问题的原因!)
.
.
.

解决方案

arm-linux-gcc -static code.c -o code

和以上区别 参数-static

代表意义: 使编译为静态编译

.静态编译: 即直接调用对应的库,使库和可执行文件结合,即可执行文件本身包含所需的所有库

优点: 执行可执行文件时不需要其他依赖项,能解决缺少库等问题

缺点: 本身包含所有所需的库,文件体积大,对内存小的机器很不友好

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值