我正在创建一个具有本机C代码和sqlite数据库的android应用程序。 当我从我的jni文件夹进行ndk-build时,我收到以下错误。
undefined reference to `sqlite3_open'
peard.c:(.text+0x588): undefined reference to `sqlite3_exec'
peard.c:(.text+0x5f8): undefined reference to `sqlite3_exec'
peard.c:(.text+0x668): undefined reference to `sqlite3_exec'
peard.c:(.text+0x6d8): undefined reference to `sqlite3_prepare_v2'
peard.c:(.text+0x720): undefined reference to `sqlite3_column_count'
peard.c:(.text+0x734): undefined reference to `sqlite3_step'
peard.c:(.text+0x774): undefined reference to `sqlite3_column_text'
peard.c:(.text+0x78c): undefined reference to `sqlite3_column_name'
peard.c:(.text+0x800): undefined reference to `sqlite3_close'
我也尝试与-lsqlite3命令一起运行,但是不起作用。 感谢。
答案 0 :(得分:1)
我通过在我的Android.mk文件中将sqlite3.c源文件添加到我的依赖文件列表来解决了这个问题。特别感谢hirschhomsalz。
纳瑞恩。
答案 1 :(得分:0)
您需要构建或安装sqlite3
(以及您项目所依赖的所有其他非标准库) for android ,并使用-L
和{构建项目{1}}参数指向sqlite库和标题的arm版本。