gpt4 book ai didi

c++ - Microsoft Visual Studio C++ 2013 链接错误(使用 SQLite 包装器时)

转载 作者:行者123 更新时间:2023-11-28 06:33:50 27 4
gpt4 key购买 nike

这是我的主循环:

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


using namespace std;

int main()
{
sqlite3 *database;
sqlite3_open("db.sql", &database);

return 0;
}

当我编译它时,它抛出一个链接错误。错误如下:

1>Students.obj : error LNK2028: unresolved token (0A000451) "extern "C" int __cdecl sqlite3_open(char const *,struct sqlite3 * *)" (?sqlite3_open@@$$J0YAHPBDPAPAUsqlite3@@@Z) referenced in function "int __cdecl main(void)" (?main@@$$HYAHXZ)
1>Students.obj : error LNK2019: unresolved external symbol "extern "C" int __cdecl sqlite3_open(char const *,struct sqlite3 * *)" (?sqlite3_open@@$$J0YAHPBDPAPAUsqlite3@@@Z) referenced in function "int __cdecl main(void)" (?main@@$$HYAHXZ)
1

我该如何解决?我应该说在 Microsoft Visual Studio 2013 中,我禁用了预编译头文件,在 Linker->additional 目录中为我的 SQL.sql 添加了一个目录,还添加了我的头文件和 cpp 文件到 aditional #include 目录。

最佳答案

您需要在您的项目中包含 sqlite3 附带的源文件。 (或者,您可以创建一个包含在项目中的库,但这是一个稍微复杂的答案。)

无论如何,是的,您可能有一个名为“sqlite.c”的文件——只需将其包含在您的项目中,以便它也能编译。您可能还有其他一些错误/警告需要解决;但是,我认为这将解决 Unresolved external 问题。

如果您有 .lib 或 .dll 文件而不是实际源代码,那么您只需要以类似方式将它们包含在您的项目中。

关于c++ - Microsoft Visual Studio C++ 2013 链接错误(使用 SQLite 包装器时),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27087804/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com