Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Для новичков > MySQL


Автор: Kirgston 11.10.2010, 21:33
Доброго времени суток! Собственно надо осуществить коннект к МуСКЛ. Нашел либы http://tangentsoft.net/mysql++/ и потом стянул кажется сервер от сюда http://dev.mysql.com/downloads/mysql/ собственно орет что надо либы коих у меня с сервером не идут. (Какие точно либы сказать не могу, просто ругается компоновщик). Собственно подскажите пожалуйста что откуда брать? А то накручено у них там...

Автор: djamshud 12.10.2010, 10:05
Для какой операционной системы?

Если Linux. Если mysql-сервер на стороне, нужно скачать development libraries и может быть client. Потом плюсовую оболочку. Если сервер нужно поднять прямо тут же, то скачать еще и его. К тому же намного проще будет воспользоваться пакетным менеджером дистрибутива и поставить что-нибудь вроде mysql, mysql-client, mysql-devel.

Если Windows. У них на сайте я не нашел девелоперских библиотек, возможно они есть в msi-пакете - нужно смотреть.

Общее решение для всех ОС - скачать исходники и собрать самому. А потом уже накатить ++.

Автор: xvr 12.10.2010, 11:25
Цитата(djamshud @  12.10.2010,  10:05 Найти цитируемый пост)
Если Windows. У них на сайте я не нашел девелоперских библиотек, 
Раньше (в районе 4.x версии) они шли в общем дистрибутиве с сервером. Как сейчас - не знаю (думаю что и сейчас идут)


Автор: Kirgston 12.10.2010, 12:34
Хм... мне посоветовали сесть за "C Api" http://dev.mysql.com/downloads/connector/c/ . Собственно сел. Наваял себе маленький класс... и тут у меня вылетает:
Код

1>MySQL.obj : error LNK2019: ссылка на неразрешенный внешний символ _mysql_server_init@12 в функции "public: __thiscall mysql::mysql(void)" (??0mysql@@QAE@XZ)
1>MySQL.obj : error LNK2019: ссылка на неразрешенный внешний символ _mysql_server_end@0 в функции "public: __thiscall mysql::~mysql(void)" (??1mysql@@QAE@XZ)
1>MySQL.obj : error LNK2019: ссылка на неразрешенный внешний символ _mysql_real_connect@32 в функции "public: int __thiscall mysql::Connect(char *,char *,char *)" (?Connect@mysql@@QAEHPAD00@Z)
1>MySQL.obj : error LNK2019: ссылка на неразрешенный внешний символ _mysql_init@4 в функции "public: int __thiscall mysql::Connect(char *,char *,char *)" (?Connect@mysql@@QAEHPAD00@Z)
1>MySQL.obj : error LNK2019: ссылка на неразрешенный внешний символ _mysql_close@4 в функции "public: void __thiscall mysql::Disconnect(void)" (?Disconnect@mysql@@QAEXXZ)


Начал гуглить , там было написано что нужно подключить либо libmysql.lib либо mysqlclient.lib . Но вот мой StdAfx.h:
Код

#include <windows.h>
#include <string.h>
#include <SQL.H>
#include <SqlExt.H>
#include <Wininet.h>
#include <vector>
#include <fstream>
#include <CommDlg.h>
#include <ShellAPI.h>
#include <ShlObj.h>
#include <WinSock2.h>
#include <mysql.h>
#pragma comment(lib,"Wininet.lib")
#pragma comment(lib,"mysqlclient.lib")
#pragma comment(lib,"libmysql.lib")


Как видно они подключены. Попробовал через зависимости - аналогично

Автор: Sannis 12.10.2010, 15:09
А вы проверьте, есть ли у вас на компьютере такие файлы.
Скорее всего у вас даже папка с ними не прописаниа в "LIBRARYPATH" (точно не помню как в VS эта переменная называется).
Кроме того вызывает подозрение, что mysqlclient.lib у вас без lib в начале, хотя mysql_server_init всё равно не в ней определён.
Кроме того, libmysqlclient -- стандартная библиотека для MySQL, а вы вроде как Connector/C используете. Зачем, кстати?

Автор: Kirgston 12.10.2010, 22:33
Цитата(Sannis @  12.10.2010,  15:09 Найти цитируемый пост)
Скорее всего у вас даже папка с ними не прописаниа в "LIBRARYPATH"

Ну я уже не такой ламер =)) всё там есть.

Цитата(Sannis @  12.10.2010,  15:09 Найти цитируемый пост)
Кроме того вызывает подозрение, что mysqlclient.lib у вас без lib в начале,

То есть? Он у меня в папочке лежит я просто скопировал имя либы


Цитата(Sannis @  12.10.2010,  15:09 Найти цитируемый пост)
libmysqlclient -- стандартная библиотека для MySQL, а вы вроде как Connector/C используете. Зачем, кстати?

http://dev.mysql.com/doc/refman/5.1/en/windows-client-compiling.html

Добавлено через 13 минут и 8 секунд
Собственно вот прикрепляю проект ... может кто и подскажет

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)