[DELPHI,KYLIX]Problem z uruchomieniem aplikacji

0

Napisałem w Kylixie aplikacje, która łączy się z MYSQL na tym samym komputerze. Jeśli uruchamiam program z pod Kylixa to wszystko jest OK. Ale jeśli chcę uruchomić skompilowany już program normalnie w Linuxie to pojawia mi się komunikat "No dynamic library from the list libmysqlclient.so found.". Klikam ok, program uruchamia się ale nie pobiera nic z bazy danych. Używam komponentu Zeosdb. Znalazlem informacje, że trzeba do pliku /etc/lc.so.conf dodac kilka sciezek, ale to nic nie pomoglo. Bardzo prosze o podpowiedź

0

Może tutaj coś znajdziesz : http://adrian_haczyk.w.interia.pl/index.html

0

Brakuje ci bibliotek !!
Musisz je ściągnąć ze strony A. Haczyka
musisz je odpowiednio podlinkować. Mam ten sam problem. Jeżeli coś przeoczysz to skrypt odpalający program po prostu nie zadziała. Wszystko zależy od tego gdzie zainstalowałeś Kylixa, jeżeli na root'cie to wtedy należy uwzględnić zmianę ścieżek do bilbliotek. A informacje na stronie Haczyka też tak do końca nie dają satysfakcji, mimo iż zrobisz wszystko według ustalonego schematu(Koleś trochę namieszał). Dlatego na razie sobie odpuściłem Kylixa na recz Delphi.
Biblioteki potrzebne do odpalenia programu poza Kylxem są odpowiednikiem VCL w Delphi. Różnica jest ogromna. W Delphi wystarczy Porject>>Options >> odznaczenie odpowiednich bibliotek. A tu z kolei żeby odpalić Twój program na innym kompie będziesz musiał dodać 15MB skompresowanych bibliotek (5MB tar.gz). Czyli twoja aplikacja będzie trochę większa niż się spodziewasz. :(
Żaden Linux nie ma jeszcze dodawanych w standardzie tych bibliotek, więc żeby coś zainstalować będą one wymagane, ale na szczęście nie każdorazowo.

0

Hm.. strona pana Haczyka niestety nie działa :(. Ja Kylixa niestety nie mogę sobie odpuścić bo aplikacja w nim napisana jest częścią mojej pracy dyplomowej.

0

http://adrian_haczyk.w.interia.pl/biblioteki.htm
oto zawartość arta
Jeśli masz zainstalowanego Kylix 3 Open Edition, to sam możesz
zrobić sobie biblioteki Kyliksa.

1 Zakładam że masz zainstalowanego Kyliksa 3 w /home/user/kylix3

2 W katalogu /home/user/kylix3/bin masz następujące pliki:

  • libborqt-6.9.0-qt2.3.so
  • libborqt-6.9-qt2.3.so
  • libqtintf-6.9.0-qt2.3.so
  • libqtintf-6.9-qt2.3.so
  • libqt.so.2
  • libqt.so.2.3.0

3 Stwórz gdzieś folder kylix3 np. w /home/user/bib_kylix/kylix3.

4 Kopiuj wyżej wypisane pliki do /home/user/bib_kylix/kylix3.

5 Spakuj katalog /home/user/bib_kylix/kylix3 do pliku
/home/user/bib_kylix/kylix3.tar.gz i gotowe.

Pozostaje mieć nadzieję że czasopisma zajmujące się Linuksem, zaczną
ort! biblioteki Kyliksa do CD-

0

to się jeszcze może przydać
2 Czemu moja aplikacja nie działa poza Kylixsem?
W katalogu instalacjnym Kylixsa jest folder bin.(u mnie /home/user/kylix3/bin)
Przeloguj się na root-a dopisz do /etc/ld.so.conf linie /home/user/kylix3/bin.
I uruchom polecenie /sbin/ldconfig.
3 Jak uruchomić program na innym kompie, czyli profesjonalna instalacja?
To co zrobiliśmy powyrzej:

  • dopisanie bibliotek kylixsa do listy bibliotek (lista bibliotek -> /etc/ld.so.conf)
  • aktualizacja listy bibliotek (aktualizator -> /sbin/ldconfig)

WNIOSEK: Kylix jest jak Visual Basic bez bibliotek nieruszy.

Jednak nie będziemy instalować kylixsa na każdym kompie, wystarczy skopiować jego okrojone biblioteki(5 MB),
a następnie rozpakować do /usr/local/lib/kylix3 i możemy przeprowadzić instalacje np. przy pomocy skryptu powłoki.

-------------------------cut here--------------------------
#!/bin/sh

przeciętny plik instalacyjny aplikacjii kylixsa install.sh

BIBLIOTEKA=/usr/local/lib/kylix3
PREFIX=/usr/local/bin

sprawdza czy /usr/local/lib/kylix3 jest w spisie bibliotek

GREP_RESULT=grep /usr/local/lib/kylix3 /etc/ld.so.conf

jeśli nie ma to dopisuje

if [ -z "$GREP_RESULT" ]; then
echo >> /etc/ld.so.conf
echo $BIBLIOTEKA >> /etc/ld.so.conf
fi

  1. kopiuje program do /usr/local/bin ,coś w stylu Windowsowskiego C:\Program Files.
  2. po tym zabiegu wystarczy zrobić Alt+F2 -> programik i program działa.
    cp programik $PREFIX

aktualizuje liste bibliotek

/sbin/ldconfig

to wszystko

-------------------------cut here--------------------------

Jedyne co trzeba zmienić to linie cp (nasza_aplikacja) $PREFIX i zapisać plik jako install w folderze
z naszą aplikacją, następnie dodać plik READ ME !!!, w dobrym guście byłoby załączenie
kodu źródłowego naszej aplikacjii.

http://adrian_haczyk.w.interia.pl/pliki/Hello_World.tar.bz2 ścieżka do przykłądowego programu(u mnie nie chodziło!!!)

Możesz jeszcze się zdać na polski spryt , który mamy we krwi :)
osoba, która będzie sprawdzała działanie programu - musi posiadać Kyliksa
co za tym idzie nie koniecznie musi sprawdzić działanie samej aplikacji
czyli możesz pokazać sam kod źródłowy - a resztę niech sobie sam skompiluje i oceni działanie programu :P
(czaisz bazę? ;D)

0

To wszysto co piszecie jest OK w przypadku jeśli program nie chce się w ogóle uruchomić, Natomiast mój się uruchamia tyle tylko że z komunikatem: "No dynamic library from the list libmysqlclient.so found." i nie pobiera nic z bazy danych :(

1 użytkowników online, w tym zalogowanych: 0, gości: 1