c - 我无法让 Eclipse MinGW 和 Sqlite 一起使用 C 程序

标签 c eclipse sqlite mingw

所以我花了一整天的时间试图解决这个问题,可惜我失败了。我需要帮助!所以我安装了Eclipse和MinGW,这样我就可以编写C程序了。我对这一切都很陌生。我需要能够访问 sqlite 数据库。所以我下载了 sqlite amalgamation 并将其解压缩到 C:/sqlite3,它包含两个 .c 文件和两个 .h 文件。在示例中,我在网上看到它们包含 sqlite.h 头文件,如下所示:

#include <sqlite.h>

所以我认为我需要添加一个包含我的 sqlite 信息的文件夹。因此,我单击我的项目并选择“属性”>“C/C++ 常规”>“路径和符号”。选择“包含”选项卡并突出显示语言 GNU C 后,我添加包含目录 C:\sqlite3。到目前为止没有问题,我可以构建一个在控制台中打印我的名字的项目。

现在我从教程网站添加一些示例代码:

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

int main(int argc, char* argv[])
{
   sqlite3 *db;
   int rc;

   rc = sqlite3_open("test.db", &db);

   if( rc ){
      fprintf(stderr, "Can't open database: %s\n", sqlite3_errmsg(db));
      return(0);
   }else{
      fprintf(stderr, "Opened database successfully\n");
   }
   sqlite3_close(db);
}

我收到 3 个错误,声称对 sqlite3 函数的引用未定义。所以我想我需要在编译器中添加sqlite3的链接。所以现在我转到 Properties>C/C++ Build/Settings 并将 -lsqlite3 添加到 MinGW C Linker 命令行。现在,当我构建项目时,我的错误消失了,但我收到一个编译错误,内容如下:

c:/mingw/bin/../lib/gcc/x86_64-w64-mingw32/6.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lsqlite3

看起来它正在 MinGW 目录中查找 sqlite3 文件。我被困住了。我尝试将文件粘贴到 MinGW 目录中,但仍然不起作用。我知道我错过了一些对世界来说显而易见的东西,但我头上只剩下大约 5 根头发,确实需要一些洞察力。请帮助我使用 MinGW 设置 Eclipse 并访问 Sqlite。谢谢!

最佳答案

合并应该与其他源文件一起编译。只需将 .c 文件添加到您的项目中,就像它是您自己的源文件之一一样。

关于c - 我无法让 Eclipse MinGW 和 Sqlite 一起使用 C 程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38992400/

相关文章:

sqlite - 如何从子查询返回的一组值中检索最小值

java - 创建序列时出现 SQL 错误

eclipse - Eclipse 的坩埚连接器?

c - MPI_Bcasts 卡在奴隶上

c++ - 返回从 C++ 函数到 C 函数的指针

c - 是否可以使用 fopen 从 png 获取数据?

java - Eclipse 中 java 项目的多个源位置

java - 如何在 Eclipse 中运行和调试客户端-服务器项目?

python - 向现有模型添加字段在 Django 中不起作用

c++ - 阻止进程使用 WMI 启动?