У меня есть пример кода с сайта sqlite.
#include <stdio.h>
#include <sqlite3.h>
int main(int argc, char* argv[]) {
sqlite3 *db;
char *zErrMsg = 0;
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);
}
Я поместил приведенный выше код в test12_sqlite_database.cpp и поместил заголовочный файл sqlite и исходный файл в каталог include.Затем я хочу построить этот код, используя cl.exe.Это команда построения:
cl /EHsc test12_sqlite_database.cpp /I include /link d:\sqlite\sqlite3.dll
Ошибка:
d:\sqlite\sqlite3.dll : fatal error LNK1107: invalid or corrupt file: cannot read at 0x360
После поиска в Интернете он сказал, что не может связаться с динамической библиотекой.Итак, как использовать cl, чтобы исходный код мог успешно скомпилироваться и использовать динамическую библиотеку?