eNotatki - jarek.blog.pyszny.eu

Wieki temu wspominałem o tym jak sprawić automagicznie by program pisany dla Qt dogadywał się z Firebirdem (plugins qsqlibase.dll). Środowisko MS Windows nie jest moim podstawowym środowiskiem pracy, więc jak ostatnio przyszło mi ponownie przerabiać temat to trochę miałem problem z przypomnieniem sobie jak to zrobić.

W sumie proces konfiguracji/instalacji nie jest trudny, poniższy opis dotyczy wersji Qt/GPL i oczywiście MS Windows 2k i nowszych (tak na przyszłość by znów sobie nie przypominać ;) )):

Wpierw trzeba zainstalować MinGW (Środowisko GCC dla Windows) - najlepiej pliki pobrać z SF (MinGW-[wersja].exe).

Po zainstalowaniu MinGW sprawdzić i ewentualnie dopisać do zmiennej PATH podkatalog bin oraz skopiować lub zmienić nazwę mingw32-make.exe (znajduje się ww. podkatalogu) do/na make.exe

Następnie należy pobrać i zainstalować Qt/GPL dla Windows (instalatorowi jeśli nie znajduje wskazać katalog z naszą wersją MinGW)

Dodać zmienną QTDIR (np. jeśli Qt został zainstalowany w katalogu c:\qt to zmienna nadać wartość QTDIR=c:\qt) i oczywiście dodać podkatalog bin do zmiennej PATH

wylogować się i zalogować ponownie - zmiennym środowiskowym zostaną nadane nowe wartości.

Ze strony Firebirda instalujemy serwer baz, o ile nie udostępniamy serwera na innym komputerze. Jeśli już mamy serwer (jak to jest w moim przypadku) wystarczy ściągnąć wersje skompresowaną zipem (potrzebujemy tylko plików z podkatalogu include oraz lib no i fbclient.dll).

Co by nie cudować później ze ścieżkami kopiujemy zawartość podkatalogu include firebirda (ib_util.h, ibase.h, iberror.h) do podkatalogu include MinGW oraz podobnie z podkatalogu lib (fbclient_ms.lib i ib_util_ms.lib) do lib MinGW, dodatkowo skopiować fbclient_ms.lib na gds32_ms.lib a na koniec jeszcze z podkatalogu bin (o ile nie jest już zainstalowany) fbclient.dll do binMinGW albo innego ze zmiennej PATH

Uruchamiamy konsole (cmd), wykonujemy
cd %QTDIR%\src\plugins\sqldrivers\ibase
qmake
make

po chwili powinniśmy uzyskać qsqlibase.dll
(dir %QTDIR%\plugins\sqldrivers), no i to tyle.


Uwaga: w przypadku komputera innego niż nasz musimy z programem exe (nie licząc oczywiście qsqlibase.dll) dostarczać bibliotekę fbclient.dll, najlepiej umieszczać ją w tym samym katalogu co program.


Wersje użyte w opisie:

  • MinGW - 5.1.3
  • Qt - 4.2.3
  • Firebird - 1.5.4

26 sierpnia, 2006

COBOL cz.II

Napisane w: Programowanie (0)

Mając chwilkę wolnego, przygotowałem sobie paczkę instalacyjną do znalezionego wcześniej OpenCOBOL-a. Następnie wpisałem nieśmiertelny program:


      * Sample COBOL program
       IDENTIFICATION DIVISION.
       PROGRAM-ID. witaj.
       PROCEDURE DIVISION.
       DISPLAY "Hello World!".
       STOP RUN.

po skompilowaniu i uruchomieniu moim oczom ukazał się znajomy widok:

$ cobc witaj.cob 
$ ./witaj
Hello World!

znaczy działa. Przy okazji trafiłem na jeszcze jednego COBOLa rozwijanego na zasadach opensource - TinyCOBOL oraz na kolejną mutacje BASICa - FreeBASIC.

14 sierpnia, 2006

Cobol

Napisane w: Programowanie (0)

OpenCobol - można zobaczyć i samemu popróbować jak to się kiedyś pisało (i pisze nadal) biznesowe programy, tylko jeszcze jakąś książkę do aktualnej wersji Cobola znaleźć ;)

POLE - Przeglądarka plików OLE Compound Document (np. MS Office). Czasem się przydaje do podglądania zawartości pliku typu doc od środka.

Jakarta POI podobnie jak wyżej tylko, że napisane w Jawie a nie w C++.

Znalezione w necie:

Jak wygląda rzeczywistość .... lepiej nie mówić ;)

Podejście drugie - tym razem połączenie do bazy - o dziwo poszło, tylko szkoda, że w GPLowej wersji dla Windows brak pluginów do Postgresqla i Firebirda. Trzeba sobie dokompilować albo ściągnąć.
Na pierwszy ogień poszedł Firebird i od razy problem z brakiem biblioteki gds32_ms. Po zagooglowaniu udało się znaleźć 'fbclient_ms.lib' i 'fbclient.dll' ( z Firebird 1.5.x). Mała zmiana nazwa, trochę automagii i po chwili gotowy plugin 'qsqlibase.dll'. Połączenie działa.
Teraz kolej na Postgresqla :)
Można oczywiście robić obejście poprzez ODBC, ale jak są stery natywne to po co?

05 lipca, 2005

QT4 i antyaliasing

Napisane w: Programowanie (0)

W końcu miałem czas i okazje przekompilować sobie QT4. Paczkowanie do rpma jak na razie sobie odpuściłem ;) może później. Jedynie co mnie zaskoczyło to "gryzienie" się z subpikselowym antyaliasingiem czcionek, ale po minimalnych zmianach w ustawieniach antyaliasingu działa (wystarczyło zmienić na inny tryb wygładzania subpiksesowelo) :) Swoją drogą ciekawe czy to coś QT4 czy w osłudze fontów jest nie tak a może wsio jest ok tylko ja coś zmaściłem wcześniej :P?
PS.
No i można testować tworzenie programów działających zarówno na Unix i Windows hmmm ;)
Od dawna devedge.netscape.com było kopalnią infomacji nt. JS/HTML/CSS. Niestety obecni właściciele domeny netscape.com zrezygnowali z utrzymania serwisu i pewnego dnia (już jakiś czas temu) wsio znikło :( .... no prawie, bo jak to w inecie, można prawie wszystko znaleźć tylko trzeba dobrze poszukać:) Najlepiej zacząć od archive.org.
 
SPAMowi mówimy nie BYKOM-STOP - Poprawna pisownia i ortografia w Internecie