Instalace MySQL++ do CygWin - linkování

Pepa Chmel

Instalace MySQL++ do CygWin - linkování
« kdy: 24. 08. 2010, 14:15:09 »
Ahoj.
Pracuju ve win, kde mám další projekty, na kterých potřebuju zároveň pracovat. Potřebuju vyvinout server pracující do budoucna pod linuxem (na hostingu).
Zvolil jsem teda Cygwin, na kterém jsem TCPIP serverovou část už rozchodil. Potřebuji ale i přístup do MySql. Podařilo se mě po celodenním boji (hromady chyb, jako chybějící knihovny a děsně dlouhá instalace) Nainstalovat do produkčního prostředí MySQL knihovny. Přeložit a spustit základní operace, tka se dá předpokládat, že je to rozběhlé v pořádku.

Ale už jsem si vylámal zuby na instalaci knihovny MySQL++ i mysql-connector-c++.

Kde první sveřepě tvrdí že se má linkovat k mysqlpp, když tam ta knihovna prostě není.
Druhý se zase nedokáže přeložit, proze mu chybí knihovna MySql, kterážto tama ale evidentně je.

Jestli s tím máte někdo zkušenost, moc prosím o radu.
Podrobnější informace s radostí dodám, ale nevím co přesně je potřeba.
Pepa.


aaa

Re: Instalace MySQL++ do CygWin - linkování
« Odpověď #1 kdy: 24. 08. 2010, 14:37:08 »
a co tak nainstalovat si virtualizovany linux ?

Pepa Chmel

Re: Instalace MySQL++ do CygWin - linkování
« Odpověď #2 kdy: 24. 08. 2010, 15:18:44 »
virtualizovany linux - to jsem taky uvažoval. Nicméně teď bych rád dořešil tuto variantu.

Martin Proks

Re: Instalace MySQL++ do CygWin - linkování
« Odpověď #3 kdy: 24. 08. 2010, 15:32:17 »
Mozna by pomohl odcitovat chybove hlaseni linkeru. Nejsem v tomhle prilis zbehly, jen jsem pouzil Mr. Googla a mysqlpp neni knihovna, ale C++ class a ta nemusi byt zrovna v mysqlpp.a, .lib nebo .so, ale treba v uplne jine knihovne ktera patri k mysql. Zkus se pomoci 'nm' podivat do jiz sestavenych mysql knihoven a koukni odkud je a zkus to pridat mezi linker flagy... Zkratka to vypada na nejakou chybku v cestach v makefiles...

Pepa Chmel

Re: Instalace MySQL++ do CygWin - linkování
« Odpověď #4 kdy: 24. 08. 2010, 15:59:58 »
Mozna by pomohl odcitovat chybove hlaseni linkeru. Nejsem v tomhle prilis zbehly, jen jsem pouzil Mr. Googla a mysqlpp neni knihovna, ale C++ class a ta nemusi byt zrovna v mysqlpp.a, .lib nebo .so, ale treba v uplne jine knihovne ktera patri k mysql. Zkus se pomoci 'nm' podivat do jiz sestavenych mysql knihoven a koukni odkud je a zkus to pridat mezi linker flagy... Zkratka to vypada na nejakou chybku v cestach v makefiles...


Ano vypadá. Ale hlásí to i jejich vlastní make, po té co proběhne jejich vlastní make install

$ make
/home/Uživatel/mysql++-3.1.0/bk-deps g++ -c -o ssqls2parse_parsev2.o -Ilib -I.
-I/usr/local/include/mysql -g -O2 ./ssx/parsev2.cpp
rm -f libmysqlpp_ssqls2parse.a
ar rcu libmysqlpp_ssqls2parse.a ssqls2parse_parsev2.o
ranlib libmysqlpp_ssqls2parse.a
/home/Uživatel/mysql++-3.1.0/bk-deps g++ -c -o ssqlsxlat_genv2.o -Ilib      -I/u
sr/local/include/mysql -g -O2 ./ssx/genv2.cpp
/home/Uživatel/mysql++-3.1.0/bk-deps g++ -c -o ssqlsxlat_main.o -Ilib      -I/us
r/local/include/mysql -g -O2 ./ssx/main.cpp
g++ -o ssqlsxlat.exe ssqlsxlat_genv2.o ssqlsxlat_main.o    -L. -lmysqlclient   -
L/usr/local/lib/mysql -Wl,--enable-auto-import  -lmysqlpp -lmysqlpp_ssqls2parse
-lintl
./libmysqlpp_ssqls2parse.a(ssqls2parse_parsev2.o): In function `_ZN7ParseV26Opti
on10parse_boolERKSs':
/home/Uživatel/mysql++-3.1.0/./ssx/parsev2.cpp:579: undefined reference to `mysq
lpp::internal::str_to_lwr(std::basic_string<char, std::char_traits<char>, std::a
llocator<char> >&)'




Martin Prokš

Re: Instalace MySQL++ do CygWin - linkování
« Odpověď #5 kdy: 25. 08. 2010, 08:48:46 »
Pisu ciste z hlavy, nemam tu ani C++ ani sql zdrojaky, takze lovim jen z toho co jsi tu psal.

Zajimava je ta posledni radka, respektive:
*** undefined reference to `mysqlpp::internal::str_to_lwr ***

To ukazuje na to, ze neni nalezena tato metoda. Koukni se do ./ssx/parsev2.cpp zda tam je ta metoda a vubec ten objekt definovan. Vic takhle z fleku bez zdrojaku a compileru asi nelze vymyslet.

Snad jen obligatni dotaz - i kdyz predpokladam ze v tomhle asi problem urcite nebude - cetl jsi INSTALL.txt nebo co tam je a postupoval jsi podle toho? Jestli jsi treba neprehledl nejaky konfiguracni krok pred sestavovanim...

Jinak uz fakt nevim.

Pepa Chmel

Re: Instalace MySQL++ do CygWin - linkování
« Odpověď #6 kdy: 25. 08. 2010, 11:35:41 »
Pisu ciste z hlavy, nemam tu ani C++ ani sql zdrojaky, takze lovim jen z toho co jsi tu psal.

Zajimava je ta posledni radka, respektive:
*** undefined reference to `mysqlpp::internal::str_to_lwr ***

To ukazuje na to, ze neni nalezena tato metoda. Koukni se do ./ssx/parsev2.cpp zda tam je ta metoda a vubec ten objekt definovan. Vic takhle z fleku bez zdrojaku a compileru asi nelze vymyslet.

Snad jen obligatni dotaz - i kdyz predpokladam ze v tomhle asi problem urcite nebude - cetl jsi INSTALL.txt nebo co tam je a postupoval jsi podle toho? Jestli jsi treba neprehledl nejaky konfiguracni krok pred sestavovanim...

Jinak uz fakt nevim.

README i README-Cygwin jsem četl. A postupoval dle toho. Ja myslím, že je evidentní, že se nespárovaly moje přeložený soubory s přeloženou knihovnou, která tama není. Prostě nevznikla. Ale nevím co s tím.

Prostě jsem to vzdal a šmudlím to aspoň v nativnim C z MySQL, kteréžto funguje. Štve mě, že to co už někdo naprogramoval si programuju znova sám, a ani ne tak dobře, protože na to nemám čas, který jsem ztratil nepovedenýma instalacema :(