Dzięki uprzejmości BSC mam okazję osobiście przekonać się o zaletach i wadach Kyliksa. Kylix wydaje mi się interesujący głównie z powodu pojawiających się informacjach o planach wypuszczenia na rynek Open Edition, czyli pełnej, nieokrojonej wersji, za pomoca której będzie można tworzyć wolne oprogramowanie. Rzecz jasna, można je także tworzyć przy użyciu wersji Server Development/Desktop, jakkolwiek jest to dość kosztowna opcja (ten pierwszy kosztuje niecałe $2000).

Pierwszą rzeczą, która mnie zdziwiła, jest konieczność zainstalowania nowszej wersji glibc, ze względu na błąd w wersjach obecnie powszechnie używanych. Podobno Kylix jest szczególnie na niego wrażliwy, dlatego bez aktualizacji nie jest możliwa nawet instalacja. Na płytce znajdują się odpowiednie łaty, źródła i gotowe binaria. Problem w tym, że programy kyliksowe… nie będą działać ze starszymi wersjami glibc (tj. starszymi niż 2.1.3-22B)… Oto, czego potrzebuje okienkowe (400-kilobajtowe!) „Hello world”:

  [arturs@darkstar test1]$ ldd Project1          /lib/libNoVersion.so.1 => /lib/libNoVersion.so.1 (0x40015000)          libqtintf.so => /usr/lib/libqtintf.so (0x4001f000)          libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x401a3000)          libpthread.so.0 => /lib/libpthread.so.0 (0x40247000)          libdl.so.2 => /lib/libdl.so.2 (0x4025b000)          libc.so.6 => /lib/libc.so.6 (0x4025f000)          libqt.so.2 => /usr/lib/libqt.so.2 (0x40354000)          /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)          libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x409eb000)          libSM.so.6 => /usr/X11R6/lib/libSM.so.6 (0x409fa000)          libICE.so.6 => /usr/X11R6/lib/libICE.so.6 (0x40a04000)          libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0x40a1c000)          libstdc++-libc6.1-1.so.2 => /usr/lib/libstdc++-libc6.1-1.so.2          (0x40a3b000)          libm.so.6 => /lib/libm.so.6 (0x40a7d000)  [arturs@darkstar test1]$  

Jak kiedyś zauważył Macias, daje się zauważyć opóźnienie w wyświetlaniu menu w samym Kyliksie – na szczęście nie w projektach utworzonych za jego pomocą. Jest to nieco irytujące, ale nie przeszkadza w pracy.
Nie byłbym sobą nie sprawdziwszy jak Kylix sprawuje się w kompilacji programów konsolowych. Nie jest tak źle – obawiałem się kilkusetkilobajtowego olbrzyma, a tu proszę:

  [arturs@darkstar test3]$ ll   razem 32   -rwxrwxr-x 1 arturs arturs 17300 kwi 10 15:23 Project2   -rw-rw-r-- 1 arturs arturs 174 kwi 10 15:23 Project2.conf   -rw-rw-r-- 1 arturs arturs 79 kwi 10 15:23 Project2.dpr   -rw-rw-r-- 1 arturs arturs 631 kwi 10 15:23 Project2.kof   [arturs@darkstar test3]$ ldd Project2 /lib/libNoVersion.so.1 => /lib/libNoVersion.so.1 (0x40015000)   libpthread.so.0 => /lib/libpthread.so.0 (0x4001f000)   libdl.so.2 => /lib/libdl.so.2 (0x40032000)   libc.so.6 => /lib/libc.so.6 (0x40036000)   /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)   [arturs@darkstar test3]$   

„ledwo” nieco ponad 17kB (odpowiednik skompilowany gcc – 11kB). Plik .conf zawiera opcje kompilatora, .kof opcje projektu, a .dpr to plik źródłowy ({$APPTYPE CONSOLE begin writeln(’Hi there’); end. ). Dodatkowo można jeszcze zaoszczędzić trochę miejsca wyłączając różne opcje kompilatora.
Jutro postaram się przedstawic pierwsze wrażenia z pracy z prostymi projektami.
Archiwalny news dodany przez użytkownika: arturs.
Kliknij tutaj by zobaczyć archiwalne komentarze.

Oznaczone jako → 
Share →