Я хочу использовать libmysqlclient для кросс-проекта, скомпилированного для Windows через mingw.Для того, чтобы связать мою программу, мне нужен «mysqlclient.a», но я не могу его получить.
Я пытался создать make-файлы для mingw в windows для клиента mysql, но шаг настройки не удался.
Я наконец смог его собрать ... используя mingw в Windows.
Вот шаги:
- Установить cygwin
- Установите пакеты make, gcc, g ++, cmake и cygidn в ваш cygwin
- Загрузите и распакуйте исходный код libmysql
- Отредактируйте файл strings / dtoa.c и замените все вхождения
dtoa
на что-тоеще как _dtoa
для предотвращения конфликтов - cd для базы пакета
- тип cmake -G "Unix Makefiles" в mingw
- make
- make install
- отредактируйте C: \ cygwin \ usr \ local \ mysql \ include \ mysql.h и добавьте
#include <winsock.h> /* Bug win32 */
после #define _mysql_h
- Вы можете получить свои файлы в "C: \ cygwin \"usr \ local \ mysql "
Я получаю" libmysqlclient.a "и" liblibmysql.dll.a "и связываю с ними свою программу, но все равно получаю ошибку компоновщика,В чем дело ?Но я все еще получаю ошибку связывания!
strings libmysqlclient.a | grep _mysql_ping
возвращает результат, в то время как компоновщик жалуется на неопределенную ссылку на `_mysql_ping @ 4 '