3

我正在关注本教程,了解如何在 c\c++ 中实现 SQLite。但是,在编译以下代码时:

#include <stdio.h> 
#include <sqlite3.h>

int main(int args, char* argv[]){
    sqlite *db;
    char *zErrMsg = 0;
    int rc;   
    rc = sqlite3_open("database_1.db", &db);
    if(rc){
      fprintf(stderr, "Can't open databse: %s\n", sqlite3_errmsg(db));
      exit(0);
    }else{ 
      fprintf(stderr, "Opened database successfully\n");
    }
    sqlite3_close(db);
}

我收到以下错误:C1083:无法打开包含文件:'sqlite3.h':没有这样的文件或目录。

问题是什么以及如何解决。

注意: sqlite 是按照此指南下载和安装的。

4

3 回答 3

4

确保您的编译器实际上可以看到 sqlite3 包含。

在 gcc 中,您会执行以下操作:

g++ main.cpp -I<path_to_sqlite3>

如果没有“-I”参数,编译器将无法看到您的#include。

如果 sqlite3.h 文件与“main.cpp”文件位于同一目录中 - 将包含更改为:

#include "sqlite3.h"

如果您不确定其中的区别,请阅读:#include < > 和“”之间的区别

于 2013-08-12T11:58:51.920 回答
2

确保您已将包含库头的文件夹添加到附加包含目录中。请参阅http://msdn.microsoft.com/en-us/library/73f9s62w.aspx

于 2013-08-12T12:01:31.550 回答
2

看起来您需要安装 libsqlite3-dev:

sudo apt-get install libsqlite3-dev
于 2014-12-14T18:14:51.347 回答