在不安装sqlite3的时候使用sqlite3数据库以及问题/usr/bin/ld: skipping incompatible.....的解决
在没有安装sqlite3的linux机器上,怎么在不安装的情况下使用sqlite3的数据库呢:
其中只需要2个文件即可:
数据库的动态库libsqlite3.so,sqlite3.h.
另外,一些系统可能会需要sqlite3ext.h
操作方法:
- 先找到libsqlite3.so,sqlite3.h两个文件,放在工程文件夹下(任意方便的位置,在编译的时候链接即可)
- 指定位置链接并编译
那么在编译时加上动态库的链接,并且指定为当前路径
gcc test.c $(HEADDIR)/sqlite3.h -o main -L$(DIR) -lsqlite3
其中:
- -L: 说明在后面的路劲下寻找对应的文件
- $(DIR) :替换成动态库所在的位置
如果觉得每次编译编译麻烦,可以写一个简单的Makefile进行自动化编译,可以参考makefile的编写
如果在编译的时候出现问题:
/usr/bin/ld: skipping incompatible.....
说明目前找到的这个动态库与当前的系统的版本不对应,需要寻找和目前系统对应的动态库替换哦
可以使用命令:
objdump -p libmylib.a | more
查看这个库的版本,是不是和自己系统的版本对应哦