openwrt Relocations in generic ELF (EM: 3)和syntax error: unexpected "("错误的解决方法

本文记录了解决在Linux环境下使用GCC编译程序时遇到的syntax error和Relocations in generic ELF(EM:3)错误的过程。作者首先发现错误源于不同平台间执行文件格式的差异,随后通过修改makefile中的编译器设置为开发板专用的mips-openwrt-linux-gcc,并执行make clean清理旧的编译文件,最终成功解决了问题。

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

自己写的程序,最开始的时候是在linux的平台下直接进行编译,使用的GCC。将程序运行在开发板的终端的时候,出现了,syntax error: unexpected "(",经过排查是编译的环境的问题。不同的平台,执行文件的格式是不同的。直接修改了makefile文件,将

CC=mips-openwrt-linux-gcc(这个是我的开发板上的平台环境)

在进行make编译的时候,出现了

Relocations in generic ELF (EM: 3)的错误,一脸懵逼。苦哈哈的上网搜索一下,原来我最开始生成的文件,没有make clean 

文件夹中任然存在相应的*.o文件,这样影响到了下一次编译。

使用make clean 清除相应的*.o 和 可执行文件。

make 一下,编译通过,移植到开发板上。运行一下,奈斯,又解决了一个新问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值