Я установил MySQL C Connector с официальным установщиком MySQL для Windows, однако после соединения с GCC он по-прежнему выдает неопределенные ошибки ссылок.
Я попытался переустановить и установить разные версии (а именно все версии 6.0 - 6.1. 1)Я попытался изменить все '\' на '/', я попытался дать дурное имя, которое затем вызвало ошибку 'lib not found', поэтому я уверен, что я даю правильный путь.
Команда GCC:
gcc mysql_test.c -Wall -o "project_path\target\debug\mysql_test.exe" -I"C:\Program Files\MySQL\MySQL Connector C 6.1\include" -L"C:\Program Files\MySQL\MySQL Connector C 6.1\lib" -lmysql
, которая выдает
d:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: C:\Users\UserPC\AppData\Local\Temp\cc479zw2.o:main.c:(.text+0x23): undefined reference to `mysql_init@4'
d:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: C:\Users\UserPC\AppData\Local\Temp\cc479zw2.o:main.c:(.text+0x44): undefined reference to `mysql_options@12'
d:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: C:\Users\UserPC\AppData\Local\Temp\cc479zw2.o:main.c:(.text+0x8d): undefined reference to `mysql_real_connect@32'
d:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../mingw32/bin/ld.exe: C:\Users\UserPC\AppData\Local\Temp\cc479zw2.o:main.c:(.text+0xa2): undefined reference to `mysql_error@4'
collect2.exe: error: ld returned 1 exit status
make: *** [Makefile:12: all] Error 1
, что, как мне показалось, приводит к ошибкам компоновки.
Это код, который я скопировалнепосредственно из документации:
#include <stdio.h>
#include <mysql.h>
int main() {
MYSQL db;
mysql_init(&db);
mysql_options(&db,MYSQL_READ_DEFAULT_GROUP,"prj_name");
if (!mysql_real_connect(&db,"i","correctly","set","these",0,NULL,0)) {
fprintf(stderr, "Failed to connect to database: Error: %s\n", mysql_error(&db));
}
return 0;
}
Я использую (обучение) C только месяц или около того, и это первый раз, когда мне нужно связать в библиотеке.
(ожидаемые результаты - это не сгенерированные ошибки и успешная компиляция.)
Как устранить эти ошибки компоновки?