👾
undefined reference to `sqlite3_column_table_name'
実行環境
Linux xxx.example.com 5.15.0-79-generic #86-Ubuntu SMP Mon Jul 10 16:07:21 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
内容
解決するのに思ったより時間が掛かったのとあまり記事にされてなかったので、残しておく目的です。
内容は「undefined reference to `sqlite3_column_table_name'」というエラーの解決。
本文
/usr/bin/ld: /usr/lib/libgdal.so.30: undefined reference to `sqlite3_column_origin_name'
/usr/bin/ld: /usr/lib/libgdal.so.30: undefined reference to `sqlite3_column_table_name'
collect2: error: ld returned 1 exit status
make[2]: *** [CMakeFiles/08_opencv_resize_blur.dir/build.make:154: 08_opencv_resize_blur] Error 1
make[1]: *** [CMakeFiles/Makefile2:335: CMakeFiles/08_opencv_resize_blur.dir/all] Error 2
make: *** [Makefile:91: all] Error 2
まずはsqlite3のself-compileのファイルをダウンロードする。
URL: https://www.sqlite.org/download.html
wget -O sqlite-autoconf-3470200.tar.gz https://www.sqlite.org/2024/sqlite-autoconf-3470200.tar.gz
tar -zxvf sqlite-autoconf-3470200.tar.gz
cd ./sqlite-autoconf-3470200
nano sqlite3.c
#define SQLITE_ENABLE_COLUMN_METADATA
をsqlite3.c
に加えます。
*/
#define SQLITE_CORE 1
#define SQLITE_AMALGAMATION 1
#ifndef SQLITE_PRIVATE
# define SQLITE_PRIVATE static
#define SQLITE_ENABLE_COLUMN_METADATA
#endif
/************** Begin file sqliteInt.h ***************************************/
/*
↑こんな感じです。
./configure
make
sudo make install
参考サイト
1.http://source.online.free.fr/Linux_HowToCompileSQLite.html
2.https://github.com/SRombauts/SQLiteCpp/issues/3#issuecomment-24891084
Discussion