带有C ++错误的Mysql:对mysql_init的未定义引用

时间:2012-03-10 10:55:01

标签: c++ mysql codeblocks

#include <stdlib.h>
#include <mysql.h>

#include <my_global.h>


int main (int argc, char *argv[])
{

MYSQL *conn;
MYSQL_RES *res;
MYSQL_ROW row;

char *server = "127.0.0.1";
char *user = "root";
char *password = "1386";
char *database = "OurDB";

conn = mysql_init(NULL);

/* Connect to database */
if (!mysql_real_connect(conn, server,user, password, database, 0, NULL, 0))
{
    fprintf(stderr, "%s\n", mysql_error(conn));
    exit(0);
}

  return 0;
}

我在代码块中遇到链接器错误:

undefined reference to mysql_init

我在链接器选项中使用了mysql_config --libs,在编译器选项中使用了mysql_config --cflags

我在某处读到了我应该添加一些像libmysql.lib这样的库,但我在我的电脑上找不到这个文件(我使用的是Ubuntu 11.04 64bit)。

3 个答案:

答案 0 :(得分:5)

仅适用于Linux环境:

  

&#34;项目构建选项&#34; &GT; &#34;链接器设置&#34;标签&gt;在&#34;其他   链接器选项&#34; 添加-lmysqlclient

enter image description here

您还需要添加 mysql-connector-c-6.1.3-linux-glibc2.5-x86_64 / include / &#34;搜索目录&#34; &gt;的&#34;编译&#34;

enter image description here

您还需要添加 mysql-connector-c-6.1.3-linux-glibc2.5-x86_64 / lib / &#34;搜索目录&#34; &gt;的&#34;接头&#34;

enter image description here

对于Windows:

<强> -lmysql

可在此处找到MySQL Connector库: http://dev.mysql.com/downloads/connector/c/

答案 1 :(得分:2)

使用命令bellow

编译您的应用程序
gcc -o test  -L/usr/lib/mysql -lmysqlclient test.c

答案 2 :(得分:0)

设置 - &gt;编译器和调试器 - &gt;搜索目录 - &gt;链接 然后添加并插入/usr/lib/mysql/