libgdal.so.20:对‘sqlite3_column_origin_name’未定义的引用

我有个mtcnn-ncnn工程,以前编译都正常,后面加入了数据库sqlite管理,再去掉了sqlite配置,然后编译就报错了
//usr/lib/libgdal.so.20:对‘sqlite3_column_origin_name’未定义的引用
//usr/lib/libgdal.so.20:对‘sqlite3_column_table_name’未定义的引用
collect2: error: ld returned 1 exit status

百度和谷歌了很久,方法都没用,也卸载重新安装过sqlite3,libgdal,opencv等,都不行。
最后原因是我安装sqlite3是下载的源码编译安装了,安装脚本有自动修改系统配置
sqlite-autoconf-3300100.tar.gz

所以我进到源码目录

sqlite-autoconf-3300100$ sudo make uninstall
 ( cd '/usr/local/bin' && rm -f sqlite3 )
 ( cd '/usr/local/include' && rm -f sqlite3.h sqlite3ext.h )
 /bin/bash ./libtool   --mode=uninstall rm -f '/usr/local/lib/libsqlite3.la'
libtool: uninstall: rm -f /usr/local/lib/libsqlite3.la /usr/local/lib/libsqlite3.so.0.8.6 /usr/local/lib/libsqlite3.so.0 /usr/local/lib/libsqlite3.so /usr/local/lib/libsqlite3.a
 ( cd '/usr/local/share/man/man1' && rm -f sqlite3.1 )
 ( cd '/usr/local/lib/pkgconfig' && rm -f sqlite3.pc )

卸载完再去mtcnn源码执行make,就能正常编译过了。神坑。

你可能感兴趣的:(踩坑记录)