我正在一个项目中,在其中创建一个C库(通过Makefile编译),然后编写另一个C程序(使用上述C库)并进行编译。我在linux x86_64系统中完成了以上所有操作,并且它起作用了。不幸的是,我不得不在使用openwrt环境的设备中做所有这些事情。对openwrt不太熟悉,我所做的是将我在linux中创建的库放置在openwrt的lib文件夹中并试图对其进行编译,但是因为openwrt的linux的体系结构不相同,它引发了以下错误

无法读取符号:无法识别文件格式

现在,我的问题是。我如何为openwrt环境创建上述库。我需要使用makefile,交叉编译器(如果是,是哪个)还是使用其他选项?

最佳答案

从OpenWrt的维基百科页面(https://en.wikipedia.org/wiki/OpenWrt):

OpenWrt构建系统...


  提供集成的交叉编译器工具链(gcc,ld,uClibc等)


是的,您需要交叉编译,请按照以下说明进行操作:

https://wiki.openwrt.org/doc/devel/crosscompile

但是,您将需要了解OpenWrt盒的体系结构...

关于c - 为openwrt环境创建一个库,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36619780/

10-11 19:00