eclipse编译linux arm动态库

本文详细介绍了如何安装和配置交叉编译链,以arm-linux-gnueabihf-gcc为例,讲解了生成动态库、静态库及可执行程序的方法,并解决了如relocation R_ARM_MOVW_ABS_NC等常见编译问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

0.交叉编译链的安装和配置:

详见:https://blog.youkuaiyun.com/markton1990/article/details/86073551

以使用arm-linux-gnueabihf-gcc为例。

1.动态库/静态库/可执行程序的切换

1.1 C/C++ Build->Build Artifact,在artifact type处,可以设置是生成可执行文件,静态库,动态库。

2.使用交叉编译工具链

2.1 C/C++ Build->GCC C Compiler,在Command处,填写arm-linux-gnueabihf-gcc。
2.2 C/C++ Build->GCC C Compiler->Miscellaneous,在other flags处,加上-fPIC。

3 GCC C Linker
3.1 在Command处,填写arm-linux-gnueabihf-gcc。

3.2 在Libraries处,添加所依赖的库(如果是生成动态库,若依赖系统库,需手动添加进去,如果生成的静态库,则不需要)。

 

可能遇到的问题:

1)arm平台编译动态库报 relocation R_ARM_MOVW_ABS_NC:2.2是这个问题的解决方法。

2)relocation R_X86_64_32S against `base' can not be used when making a shared object; recompile with -fPIC:2.2是其解决方法。

2)eclipse出现的错误:Relocations in generic ELF (EM: 40):是由于编译链使用混淆,3.1是其解决方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值