C ++和SQLite编译错误:“对sqlite3_open的未定义引用”

时间:2013-06-26 20:43:25

标签: c++ eclipse sqlite

我正在尝试在Windows上开始使用Eclipse CDT上的SQLite。

#include <iostream>
#include <string>
#include "sqlite3/sqlite3.h"

int main(){
    sqlite3 *db;
    sqlite3_stmt *res;

    const char *errMSG;
    const char *tail;

    int error = sqlite3_open("test.db",&db);
    if (error){
        std::cout << "Could not open db." << std::endl;
        sqlite3_close(db);
        //system("pause");
        return 0;
    }

    std::string query = "SELECT * FROM test";

    error = sqlite3_prepare_v2(db, query.c_str(), query.length(), &res, &tail);

    if (error != SQLITE_OK){
        std::cout << "Could not prepare SQL" << std::endl;
        sqlite3_close(db);
        //system("pause");
        return 0;
    }

    while (sqlite3_step(res) == SQLITE_ROW){
        std::cout << "Name: " << sqlite3_column_text(res,0) << std::endl;
        std::cout << "NUmber: " << sqlite3_column_text(res,1) << std::endl << std::endl;
    }

    sqlite3_finalize(res);
    sqlite3_close(db);
    //system("pause");
    return 0;
}

这是编译代码的行: g++ "-LD:\SQLite3\lib" -o sqliteTest00.exe main.o -lsqlite3 包括lsqlite3。但是当我构建项目时,我将获得 undefined reference to 'sqlite3_open" 'sqlite3_close' 以及其余 'sqlite3_prepare_v2' 命令的 'sqlite3_ 。知道这个文件或链接器有什么问题吗?

0 个答案:

没有答案