mipsel-openwrt-linux-gcc交叉编译时找不到库文件的解决办法
来源:互联网 发布:有mac版的lol 编辑:程序博客网 时间:2024/05/04 06:33
1、在学习《linux程序设计》的时候利用ubuntu14.04系统自带的dbm数据库对一个CD程序想要交叉编译,然都一直到mips架构下的WRTnode2P, 但是在交叉编译的时候找不到libgdbm库,在WRTnode.cc中也找不到对应的库文件(有一个libgdbm,但是版本吗大不相同)。于是找到从网上下载源码,因为dbm相关的函数都是用C语言开发的,可以自行交叉编译得到相应的可执行文件。
从网上下载源代码的命令:
sudo apt-get source libgdbm-dev
现在有2个源文件,一个头文件
app_ui.c access.c access.h。access.c access.h中包含dbm的函数的文件,将下载的源代码的文件夹放入到与app_ui.c 相同的目录下
gdbm的源代码就在gdbm-1.8.3中
makefile 书写 (还不是很简练,makefile刚刚学会制作)
all: app_uiobjs = app_ui.o access.o dbmdelete.o dbmrdonly.o findkey.o gdbmfetch.o gdbmsync.o\ dbmdirfno.o dbmseq.o gdbmclose.o gdbmopen.o \ getopt.o bucket.o dbmfetch.o dbmstore.o \ gdbmdelete.o gdbmreorg.o global.o close.o dbminit.o \ delete.o gdbmerrno.o gdbmseq.o hash.o update.o \ dbmopen.o falloc.o gdbmexists.o gdbmsetopt.o seq.o version.o\ dbmclose.o dbmpagfno.o fetch.o gdbmfdesc.o gdbmstore.o store.o#INCLUDE=/usr/include/gdbmINCLUDE=-I./gdbm-1.8.3LIBS=-lgdbm# On some distributoions you may need to change the above line to include# the compatability library, as shown below.#LIBS=-lgdbm_compat -lgdbm#CC = gccCC = mipsel-openwrt-linux-gcc%.o: $(CC) $(INCLUDE) -c *.c ./gdbm-1.8.3/*.capp_ui: $(objs)# $(CC) -o $@ $(objs) -lgdbm $(CC) -o app_ui $(objs)
在make编译的时候可能会出现有多个main函数的错误(可能包含测试文件),在目录下删除包含main函数的 *.o 文件再次make 就可以得到可执行文件app_ui。 经过测试可以在WRTnode下运行。
0 0
- mipsel-openwrt-linux-gcc交叉编译时找不到库文件的解决办法
- MT7620 交叉编译 mipsel-openwrt-linux-gcc
- openwrt下mipsel-openwrt-linux-gcc交叉编译-lmysqlclient
- mipsel-linux-gcc 交叉编译libxml2
- mipsel-linux-uclibc编译vlc找不到live555的解决办法
- linux 交叉编译找不到库文件
- eclipse 交叉编译环境调试找不到文件的解决办法
- 制作mipsel-linux交叉编译工具
- 制作mipsel-linux交叉编译工具1
- 制作mipsel-linux交叉编译工具2
- 制作mipsel-linux交叉编译工具3
- mipsel-linux交叉编译SDL1.2.14
- 交叉编译Pjsip for mipsel linux
- 制作mipsel-linux交叉编译工具
- mipsel-linux-uclibc交叉编译libz
- mipsel-linux-uclibc交叉编译libogg
- mipsel-linux-uclibc交叉编译 libbzip2
- mipsel-linux-uclibc交叉编译opus
- Hibernate注解方法使用总结
- java核心技术读书笔记<一>之数据类型,变量,运算符,字符串,控制流程,大数值,数组
- J2EE---必备对象认识
- Linux AIO
- Angular-Ui-Router
- mipsel-openwrt-linux-gcc交叉编译时找不到库文件的解决办法
- 欢迎使用CSDN-markdown编辑器
- Java中BIO,NIO,AIO的理解
- CSS学习笔记
- 升级攻略
- CocoaPods安装和使用教程
- Java反射及其在开发数据库上面的运用
- SmsMessage类createFromPdu(byte[] pdu)
- VS2008引入头文件包含目录和lib库目录