编译我的项目时找不到 sqlite3

Dan*_*elY 2 c eclipse-cdt shared-libraries

我正在用 c 语言开发一个小项目,该项目使用 sqlite3 与数据库一起使用。我正在使用 Eclipse CDT。这是相关的代码片段:

#include <sqlite3.h>
int main(int argc, char * argv[]) {
    if (argc < 2) {
        fprintf(stderr,"Error: database name not specified!\n");
        return 1;
    }

    struct sqlite3* db;
    sqlite3_open("movies.db", db);

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我的项目目录中还有我的文件“sqlite3.so”。当我尝试编译它时,出现“找不到-lsqlite3”错误。

我已在链接器中添加了该文件(在项目属性中),但仍然收到此错误。我能做些什么?

谢谢

Roh*_*kar 5

我很确定这现在对你有用,或者你已经完全忘记了这一点。无论如何,由于没有公认的答案,我正在写一个。

当您安装时sqlite3,不会安装开发所需的标头和库。您必须将它们与软件包分开安装libsqlite3-dev。所以下面的命令应该可以解决问题。

sudo apt-get install libsqlite3-dev
Run Code Online (Sandbox Code Playgroud)

请记住,Linux 上的大多数第三方软件(尤其是 Ubuntu)都是这种情况。因此,如果您需要 ssl 库,请从包中安装它libssl-dev

希望这可以帮助。