Ошибка mysql " неразрешенный внешний символ _mysql_init@4"

проблема такая: если не спровоцировать ошибку написав не mysql_init(), а например _mysql_init, то пишет что ошибок не обнаружено , но при самой компиляции выдаёт ошибку. Если же спровоцировать, то вместе с ошибкой "идентификатор не определён" появляется ошибка "ссылка на неразрешенный внешний символ _mysql_init@4 " причём не только на mysql_init() но и на mysql_real_connect(). Не могу понять почему выдаёт ошибку. Я поместил ссылку на папку в которой находится libmysql.dll и другие библиотеки в "Дополнительные каталоги" Вот код:

#include <iostream>
#include <mysql.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#define SERVER    "localhost"
#define USER   "root"
#define PSW  ""
#define DB  "test"
#define PORT 3307

using namespace std;

int main()
{
    MYSQL *connect = _mysql_init(NULL);

    connect = mysql_real_connect(connect, SERVER, USER, PSW, DB,PORT,NULL,0);
    if (!connect) {
        return 0;
    }
    

    return 0;
}

Заранее спасибо.


Ответы (1 шт):

Автор решения: valecop

Так, после дня поисков в инете и методом проб и ошибок, я нашёл решение.

Кроме ссылок на lib и include нужно добавить в саму папку проекта файлы libmysql.lib , libmysql.dll, mysqlclient.lib и mysqlclient.dll

и в самой программе добавить эти две строки: #pragma comment(lib, "libmysql.lib") #pragma comment(lib, "mysqlclient.lib")

если же и так выдаёт ошибку , то попробуйте поменять 86-битную версию на 64

→ Ссылка