Skocz do zawartości

Qt3+mysql


lszk

Rekomendowane odpowiedzi

Zbudowałem sobie paczke z tą bazą (wcześniej miałem ze źródeł), jednak z poziomu qt3 nie mogę się do niej dostać. Znalazłem więc taki opis na forum Slacka, jak dodać tą obsługe → link.

Stargałem więc sobie przez apta źródła dla tego qt i w katalogu tego pluginu wpisuje

qmake -o Makefile "INCLUDEPATH+=/usr/include/mysql" "LIBS+=-L/usr/lib/mysql -L/usr/lib/qt3/lib" mysql.pro

I się niby plugin buduje. Jedynny problem w tym, że wyskakuje błąd <_<

/usr/bin/ld: cannot find -lqt
collect2: ld returned 1 exit status
make: *** [../../../sqldrivers/libqsqlmysql.so] B³±d 1

Na forum już widziałem problemy z tym -lqt, ale to Fedory dotyczyło, dlatego mam nadzieje, że to jest drobny error podobny do tego z ~/.bashrc, co ostatnio pisałem ;)

 

[edit]

 

Już wiem, gdzie miałem błąd. Ta powyższa linijka powinna wyglądać tak

 

qmake -o Makefile "INCLUDEPATH+=/usr/include/mysql"
"LIBS+=-L/usr/lib/mysql -L/usr/lib/" mysql.pro

 

Czyli to jest już rozwiązane. Ale znowu mam inny problem. Ściągnąłem sobie w paczce ten art -> http://free.of.pl/q/qtmoux/qt3/qtsec/l2-07.php

Jednak mam problemy z jego odpaleniem (kiedyś chodziło). Po wpisaniu make wyskakuje

 

g++  -o mysql1 .obj/main.o .obj/form1.o .obj/moc_form1.o -L/usr/share/qt3/lib -L/usr/X11R6/lib -lqt-mt -lXext -lX11 -lm -lpthread
/usr/bin/ld: warning: libstdc++.so.5, needed by /usr/share/qt3/lib/libqt-mt.so, may conflict with libstdc++.so.6 

Jednak się skompiluje. Po jego odpaleniu

 

QSqlDatabase: QMYSQL3 driver not loaded       
QSqlDatabase: available drivers: 

 

I nie wiem, czemu się pluje o jego brak czy cuś, skoro go skompilowałem i umieściłem w /usr/lib/qt/plugins/sqldrivers/ :?:

Edytowane przez lszk
Odnośnik do komentarza
Udostępnij na innych stronach

Takie pytanie: dlaczego nie dociągniesz tego → http://packages.debian.org/unstable/libs/l...libqt3-mt-mysql ? IMHO będzie prościej niż ręczna kompilacja.

Bo to jest paczka z unstable ;-] Ona ma swoje zależności

Rozpakowanie libqt3-mt-mysql (z libqt3-mt-mysql_3.3.4-7_i386.deb) ...
dpkg: problemy z zale¿no¶ciami uniemo¿liwiaj± skonfigurowanie libqt3-mt-mysql:
libqt3-mt-mysql zale¿y od libc6 (>= 2.3.5-1); jednak¿e:
 Wersja libc6 w systemie to 2.3.2.ds1-22.
libqt3-mt-mysql zale¿y od libmysqlclient12; jednak¿e:
 Pakiet libmysqlclient12 nie jest zainstalowany.
libqt3-mt-mysql zale¿y od libqt3-mt (>= 3:3.3.4); jednak¿e:
 Pakiet libqt3-mt nie jest zainstalowany.
libqt3-mt-mysql zale¿y od libxinerama1; jednak¿e:
 Pakiet libxinerama1 nie jest zainstalowany.
dpkg: b³±d przetwarzania libqt3-mt-mysql (--install):
problemy z zale¿no¶ciami - pozostawiony nieskonfigurowany
Wyst±pi³y b³êdy podczas przetwarzania:
libqt3-mt-mysql

Jeżeli je spełnie, to wymieszam paczki z testinga i unstable, co nie jest zalecane. Musiałbym wtedy całkowicie przejść na sida, a tego nie chce ;-)

Skoro komuś na Slacku się dało, to tu też musi się dać ;-)

 

[edit]

 

Właściwie teraz widze, że w repach dla testinga też jest ten pakiet, ale również ma zależności → jeżeli je spełnie, to mój mysql z paczki pójdzie się walić ;]

apt-get -f install
Czytanie list pakietów... Gotowe
Budowanie drzewa zale¿no¶ci... Gotowe
Naprawianie zale¿no¶ci... Gotowe
Zostan± zainstalowane nastêpuj±ce dodatkowe pakiety:
 libmysqlclient12 mysql-common
Nastêpuj±ce pakiety zostan± USUNIÊTE:
 libqt3-mt-mysql mysql
Zostan± zainstalowane nastêpuj±ce NOWE pakiety:
 libmysqlclient12 mysql-common
0 zaktualizowanych, 2 nowo zainstalowanych, 2 do usuniêcia i 5 nie zaktualizowanych.
1 nie w pe³ni zainstalowanych lub usuniêtych.
Konieczne pobranie 332kB archiwów.
Po rozpakowaniu zostanie zwolnione 24,4MB miejsca na dysku.
Czy chcesz kontynuowaæ? [T/n] 

 

[edt2]

 

Ale czemu przy do usunięcia jest ta paczka <_<

ebian:/home/lszk# dpkg -l |grep libqt3-mt-mysql
iU  libqt3-mt-mysql               3.3.4-7                  MySQL database driver for Qt3 (Threaded)
debian:/home/lszk# 

Czyli jednak mam te paczke <_< Ale instalować teżją idzie, więc to chyba jakaś inna wersja. Ale i tak nie chodzi.

Odnośnik do komentarza
Udostępnij na innych stronach

Nic nie instalowałem na siłe, nie naśmieciłem w sysie (pilnuje tego), co do rekompilacji, to zobacze. Ale co mnie ciekawi → podałeś mi linka do wersji 3.3.4-7, którą nie chciało zainstalować przez zależności, a to ostatnie polecenie w tamtym poście wyświetliło obecność paczki w tej samej wersji :|

Spróbuje może jeszcze wszystko przez apta poinstalować i zobacze, czy ruszy wtedy*.

Gryzie mnie tylko, że tamta kompilacji tego modułu była wg. opisy ze strony producenta, czyli powinno w miare chodzić ;)

I jeszcze to mnie denerwuje (nawet bardziej)

/usr/bin/ld: warning: libstdc++.so.5, needed by /usr/share/qt3/lib/libqt-mt.so, may conflict with libstdc++.so.6

bo mam to przy kompilacji każdego progsa w qt. A nie moge żadnego wywalić, bo te paczki pociągają za sobą połowe systemu każda ;)

 

 

Albo lepiej spróbuje zbudować paczki przez apt-get -b source, ponieważ bardzo mi zależy na wpisie --with-charset=latin2, bo bez tego dostaje kur*** z tymi znaczkami polskimi ;) A to przynajmniej stworzy identyczne paczki (łącznie z nazwami), jak te z rep. I nie powinno być problemu <_< Chociaż znowu nie wiem, jak tam coś zmienić :/ Skakać po makefile'ach :/

Odnośnik do komentarza
Udostępnij na innych stronach

podałeś mi linka do wersji 3.3.4-7, którą nie chciało zainstalować przez zależności, a to ostatnie polecenie w tamtym poście wyświetliło obecność paczki w tej samej wersji :|

No tu Ci nei poradze, bo nie mam Debiana. Możesz w apt sprawdzić czy nie ma konfliktów w zależnościach?

 

Może ta paczka będzie działać → http://packages.debian.org/unstable/libs/libqt3-mysql ?

/usr/bin/ld: warning: libstdc++.so.5, needed by /usr/share/qt3/lib/libqt-mt.so, may conflict with libstdc++.so.6

Mam w systemie obie biblioteki libstd++.so.[56] i się o to nie pluje. Nie wiem o co tu za abrdzo biega :/

Albo lepiej spróbuje zbudować paczki przez apt-get -b source, ponieważ bardzo mi zależy na wpisie --with-charset=latin2, bo bez tego dostaje kur*** z tymi znaczkami polskimi ;)

A nie lepiej przerzucić się na UTF-8? ;-)

Odnośnik do komentarza
Udostępnij na innych stronach

Zrobiłem tak, jak wczoraj pisałem. Wyplewiłem wszystko z systemu i poinstalowałem przez apt. I teraz chodzi. Na p.c.o.l jeden użytkownik zasugerował mi, że to może być wina wersji kompilatora (qt3 poszło w gcc3, a plugin gcc4). Niemniej postaram się pociągnać tamten topic, może się dowiem, co źle zrobiłem. Chciałbym wiedzieć na przyszłość.

 

BTW. Może mi przy okazji wytłumaczysz, jak to jest z tym utf8 i polskimi znaczkami? Bo nie moge tego zrozumieć. Jak sobie ustawie na utf, to ich nie otrzymam → albo mi je źle wyświetla w phpmyadminie albo pod konsolą. Na latin2 nie mam takich problemów, dlatego chciałbym wiedziec <_<

Odnośnik do komentarza
Udostępnij na innych stronach

Jesli chodzi o UTF-8 to najlepiej będzie chyba zerknąć do Ubuntu - tam to jest OOTB. Przeklejanie konfigów z Fedory raczej nie będzie miało sensu, bo tutaj jest to trochę inaczej zrobione (w Debianie chyba nie ma /etc/sysconfig, ale sobie głowy nie dam uciąć).

 

Jesli chodzi o konsolę, to musisz ustawić jakąś czcionkę obsługującą UTF-8 (LatArCyrHeb*) oraz ładować mapę klawiatury z parametrem -u.

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...