После создания решения с cmake я столкнулся лицом к лицу с 1400 ошибками в Visual Studio во время сборки. Основная проблема заключается в том, что, похоже, никто не компилирует соединитель и просто использует предварительно скомпилированную библиотеку для своих проектов, более того, в Windows. Вот некоторые из ошибок, кажется, что timespec переопределяется еще раз, прежде всего в, а затем второй раз в my_global.h, ошибках и определениях ниже.Компиляция MySQL-коннектора с Visual Studio 2015 Win64
Итак, вопрос в том, как я могу исправить ошибки 1400?
Или, по крайней мере, некоторые советы, как избавиться от переопределения, были бы БОЛЬШИМ!
time.h #ifndef _CRT_NO_TIME_T структура TimeSpec { time_t tv_sec; // Seconds -> = 0 long tv_nsec; // Наносекунды - [0, 999999999] }; #endif my_global.h
struct timespec {
union ft64 tv;
/* The max timeout value in millisecond for native_cond_timedwait */
long max_timeout_msec;
};
Ошибка C2011 'TimeSpec': 'структура' типа переопределение (компиляции исходного файла C: \ Users \ DDubinin \ Downloads \ MySQL-разъем-с-6.1.6-Src \ mysys \ my_mess.c) mysys c: \ users \ ddubinin \ downloads \ mysql-connector-c-6.1.6-src \ include \ my_global.h 660
Ошибка C2039 'tv': не является членом команды ' timespec '(компиляция исходного файла C: \ Users \ DDubinin \ Downloads \ mysql-connector-c-6.1.6-src \ mysys \ my_malloc.c) mysys c: \ users \ ddubinin \ downloads \ mysql-connector-c-6.1 .6-src \ include \ my_global.h 681
Ошибка C2227 слева от '-> tv' должна указывать на класс/struct/union/generic type (компиляция исходного файла C: \ Users \ DDubinin \ Downloads \ mysql-connector-c-6.1.6-src \ libmysql \ authentication_win \ handshake.cc) auth_win_client c: \ users \ ddubinin \ downloads \ mysql-connector-c-6.1.6-src \ include \ my_global.h 681
Ошибка C2227 слева от '-> max_timeout_msec' должна указывать на класс/struct/union/generic type (компиляция исходного файла C: \ Users \ DDubinin \ Downloads \ mysql-connector-c-6.1.6-src \ libmysql \ authentication_win \ plugin_client.cc) auth_win_client c: \ users \ ddubinin \ downloads \ mysql -connector-c-6.1.6-src \ include \ my_global.h 682
На самом деле, я загрузил источник для MySQL Connector C++ и создал источники на своих компьютерах. Помните, что вы должны позаботиться о том, чтобы весь проект был 64-битным или целым проектом 32-битным. Используйте «Dependency Checker» для проверки DLL. –
Я предлагаю загрузить исходный код с сайта MySQL, а не GitHub. –
Забыл уточнить, мне нужен MySQL Connector/C, а не C++. – SimpleCold