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

Beh*_*ari 4 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;
}
Run Code Online (Sandbox Code Playgroud)

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

undefined reference to mysql_init
Run Code Online (Sandbox Code Playgroud)

mysql_config --libs在链接器选项和mysql_config --cflags编译器选项中使用过。

我读过某个地方,我应该添加一些库,例如libmysql.lib,但我在PC上找不到此文件(我使用的是Ubuntu 11.04 64bit)。

小智 5

这仅适用于Linux环境:

在“项目构建选项”>“链接器设置”选项卡>“其他链接器选项”下,添加-lmysqlclient

在此处输入图片说明

您还需要 在“搜索目录” > “编译器”中添加mysql-connector-c-6.1.3-linux-glibc2.5-x86_64 / include /

在此处输入图片说明

您还需要 在“搜索目录” > “链接器”中添加mysql-connector-c-6.1.3-linux-glibc2.5-x86_64 / lib /

在此处输入图片说明

对于Windows:

-lmysql

可以在以下位置找到MySQL连接器库: http : //dev.mysql.com/downloads/connector/c/


Beh*_*ari 1

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