Mysql с C ++ ошибка: неопределенная ссылка на mysql_init - PullRequest
4 голосов
/ 10 марта 2012
#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 ]

5 голосов
/ 16 мая 2014

Это только для сред Linux:

В разделе «Параметры сборки проекта»> вкладка «Настройки компоновщика»> «Другие» параметры компоновщика " add -lmysqlclient

enter image description here

Вам также потребуется добавить mysql-connector-c-6.1.3-linux-glibc2.5-x86_64 / include / в «Поиск в каталогах» > «Компилятор»

enter image description here

Вам также нужно добавить mysql-connector-c-6.1.3-linux-glibc2.5-x86_64 / lib / в «Поиск в каталогах» > «Линкер»

enter image description here

Для окон:

-lmysql

Библиотеку MySQL Connector можно найти здесь: http://dev.mysql.com/downloads/connector/c/

2 голосов
/ 10 марта 2012

скомпилируйте ваше приложение с помощью команды ниже

gcc -o test  -L/usr/lib/mysql -lmysqlclient test.c
0 голосов
/ 11 марта 2012

Настройка -> Компилятор и отладчик -> Поиск в каталогах -> Линкер, затем Добавить и вставить /usr/lib/mysql/

...