sqlite3.h (error LNK2019: ссылка на неразрешенный внешний символ sqlite3_open_v2 в функции main)
Программа не компилируется в Microsoft Visual Studio, sqlite3.h подключил правильно.
#include <iostream>
#include <string>
#include <Windows.h>
#include <dpapi.h>
#include <lmcons.h>
#include <sqlite3.h>
using namespace std;
string getUserNameWindows() {
string userName;
char username[UNLEN + 1];
DWORD username_len = UNLEN + 1;
GetUserName((TCHAR*)username, &username_len);
for (auto ln : username) {
if (ln != 0 && ln != -52) {
userName += ln;
}
}
return userName;
}
int main() {
string user = getUserNameWindows();
string DBpath = "test.db";
sqlite3 *db;
int status = sqlite3_open_v2(DBpath.c_str(), &db, SQLITE_OPEN_READONLY, NULL);
if (status != SQLITE_OK) {
cout << "DB opened!!!";
} else cout << "DB error...";
system("pause");
return 0;
}
Вывод программы:
1>project.obj : error LNK2019: ссылка на неразрешенный внешний символ sqlite3_open_v2 в функции main.
1>C:\Users\win\Desktop\project\x64\Debug\project.exe : fatal error LNK1120: неразрешенных внешних элементов: 1
1>Сборка проекта "project.vcxproj" завершена с ошибкой.
========== Сборка: успешно выполнено — 0 , со сбоем — 1, в актуальном состоянии — 0, пропущено — 0 ==========
========== Прошло 00:05,340 ==========
Источник: Stack Overflow на русском