【问题标题】:C++ / Mysql Connector : undefined reference to `get_driver_instance'C++ / Mysql 连接器:未定义对“get_driver_instance”的引用
【发布时间】:2011-11-22 21:24:54
【问题描述】:

我在这个论坛上发现了一些关于相同错误的主题,但我没有在其中找到解决方案。

我正在尝试在 Ubuntu 11.04 上使用 C++ 和 Mysql 连接器。 我的错误是(按照官方Mysql教程之后)

/tmp/ccDmH4pd.o: In function `main':
mysql.cpp:(.text+0xb): undefined reference to `get_driver_instance'
collect2: ld returned 1 exit status

这是我的代码:

int main(){     
    sql::Driver*        driver; // Create a pointer to a MySQL driver object
    sql::Connection*    dbConn; // Create a pointer to a database connection object
    sql::Statement*     stmt;   // Create a pointer to a Statement object to hold our SQL commands
    sql::ResultSet*     res;    // Create a pointer to a ResultSet object to hold the results of any queries we run

    driver = get_driver_instance();
    dbConn = driver->connect(server, username, password);


        delete dbConn;
        return 0;
    }

这是我的包括:

#include "mysql_driver.h"
#include "mysql_connection.h"

// Include the Connector/C++ headers
#include "cppconn/driver.h"
#include "cppconn/exception.h"
#include "cppconn/resultset.h"
#include "cppconn/statement.h"

提前谢谢大家

斗鸡

【问题讨论】:

  • 你是如何编译/链接的?

标签: c++ mysql undefined-reference connector


【解决方案1】:

get_driver_instance() 函数不在全局命名空间中,而是在 ::sql::mysql 中。所以你必须使用正确的名称:

::sql::Driver *driver = ::sql::mysql::get_driver_instance();

【讨论】:

  • 谢谢,现在问题仍然存在:
    undefined reference to `sql::mysql::get_driver_instance()'
    如果我检查:/usr/include/cppconn文件 driver.h 包含: /* 命名空间 sql */ extern "C" { CPPCONN_PUBLIC_FUNC sql::Driver * get_driver_instance();有什么想法吗?
  • 在我的代码中,我包括 driver/mysql_public_iface.h 和 driver/mysql_driver.h .. 然后:你的链接器/编译命令是什么?
  • 我不需要包含其他文件。我只是手动重新安装了 mysql_connector 而不是 apt-get 方式。并且存在兼容性问题,所以我不得不更改使用的默认cpp库或用另一个重新编译mysql_connector。
【解决方案2】:
LIBPATH = -L/usr/lib/ -lmysqlcppconn -lmysqlclient_r

【讨论】:

    猜你喜欢
    • 2011-04-21
    • 2013-04-06
    • 2011-03-27
    • 2019-04-02
    • 1970-01-01
    • 2019-01-22
    • 1970-01-01
    • 2018-01-01
    • 1970-01-01
    相关资源
    最近更新 更多