今天我在编译sqlite3的代码时,出现对应的API找不到,未定义的现象,所以以此记录,累积经验。如下图:
其实这不是sqlite3安装的问题,而是在gcc编译的时候找不到对应的库或者头文件。
解决办法:
方法一:gcc testdate.c -o testdate -lsqlite3
如果方法一不行的话,请尝试另一种方法。
方法二:gcc testdate.c -o testdate -lsqlite3 -L/usr/local/lib -I/usr/local/include -static -lpthread
编译参数介绍如下。
-lsqlite3:用于链接SQLite的开发库。
-lpthread:用于链接多线程库。
-L/usr/local/lib:指示SQLite中链接库的路径,默认路径为/usr/local/lib,当然这个要根据自己的实际安装路径进行 配置。
-I/usr/local/include:用于指示SQLite中sqlite3.h头文件所在的目录,默认路径为/usr/local/include,这个要根据自
己的实际安装路径进行配置。
-static:用于静态编译,如果不加该选项,有时会提示无法找到动态链接库。这个选项根据自己的环境是否加上。