Kylix3
Open Edition

Firma Inprise/Borland uvolnila pre Open Source programßtorov v poradφ u₧ tretiu verziu v²vojovΘho nßstroja Kylix3 Open Edition. ╚o je teda v balφku Kylix3 Open Edition novΘ? Novinkou na ktor· sa Φakalo, a ktor· firma Borland u₧ dßvnejÜie pris╛·bila je Kylix 3 (C++ IDE), samozrejme v balφku nßjdete aj nov· verziu Kylix3 (Delphi IDE).

instalace Instalace


internet http://www.borland.com

typ softwaru  demo  |   operaΦnφ systΘm  Win.9x/Me, Win.2k,.Win.XP  |   objem dat  33.MB  |   jazyk  anglicky  

 
Kylix3 Open edition û mß v porovnanφ s verziami Enterprise a Professional  obmedzen· funkΦnos¥. Ch²baj· komponenty na prßcu s databßzami, komponenty na vytvßranie internetov²ch aplikßcii a v²voj modulov pre server Apache. Nenßjdete tu novinky BizSnapÖ, WebSnapÖ, DataSnapÖ, VisiBroker«, AppServerÖ, taktie₧ ch²ba kni₧nica dbExpress pre r²chly a vysoko v²konn² prφstup k databßzam IBM DB2, Oracle 8i, MySQL a InterBase. Naopak, v²hodou Kylix3 Open Edition je to, ₧e je zadarmo. Zφskate tak funkΦnΘ v²vojovΘ prostredie s integrovan²m ladiacim nßstrojom, ktorΘ m⌠₧ete pou₧i¥ na v²voj jednoduch²ch nekomerΦn²ch aplikßciφ. Komponenty pre prßcu s databßzou si bu∩ naprogramujete sami alebo sk·ste h╛ada¥ na Internete. Jednou z hor·cich adries, ktorΘ vßm m⌠₧em doporuΦi¥ je adresa www.torry.net, kde nßjdete ve╛a r⌠znych komponentov rozdelen²ch do kateg≤riφ Components,  Applications, Database, Experts a Tools. Ak na uvedenej adrese nenßjdete to Φo h╛adßte sk·ste eÜte adresu  http://delphi.icm.edu.pl/ - Delphi Super Page alebo http://www.tempest-sw.com/freeware/.

InÜtalßcia produktu:

Ke∩₧e predpokladßm, ₧e Kylix3 Open Edition mßte u₧ vypßlen² na CD, zaΦneme t²m, ₧e si pripravφme inÜtalaΦnΘ s·bory, teda treba pripoji¥ CD mechaniku a rozbali¥ s·bor kylix3_open.tar.gz. Otvorte okno terminßlu a postupne vykonajte nasleduj·ce prφkazy:

mount ût iso9660 ûr /dev/cdrom /mnt/cdrom
mkdir /install
tar -xvzf /mnt/cdrom/kylix3_open.tar.gz ûC /install
umount /mnt/cdrom

Sk⌠r ne₧ zaΦnete inÜtalßciu produktu, m⌠₧ete pomocou programu v adresßri borpretest spusti¥ program ./testsystem, ktorΘho ·lohou je otestova¥ operaΦn² systΘm na prφtomnos¥ kni₧nφc potrebn²ch pre bezproblΘmovΘ spustenie Kylix3 Open Edition. PriΦom sa zis¥uje, akß je verzia jadra (musφ by¥ 2.2.0+), verzia kni₧nice GLIBC (musφ by¥ 2.2+, prφpadne opravenß verzia 2.1.2), X11 Server, prφtomnos¥ kni₧nice Libjpeg (6.2.0+) a nakoniec sa testuje verzia kni₧nice Libgtk (1.2.0+)  Ak mßte v systΘme nainÜtalovanΘ sprßvne verzie kni₧nφc v²stup programu  testsystem  by mal vyzera¥ nasledovne:

Borland Kylix System Compatibility Test

Checking loader....OK
Checking kernel >= 2.2....OK
Checking libc >= 2.1.2....OK
Checking libjpeg >= 6.2.0....OK

Looks GOOD !!!
This system should be able to run Borland Kylix!

V prφpade, ₧e test nedopadne vo vÜetk²ch bodoch OK, a mßte problΘm s kni₧nicou GLIBC, JPEG resp. Qt, treba naprφklad na adrese http://rpmfind.net/linux/RPM/ vyh╛ada¥ prφsluÜn² inÜtalaΦn² rpm balφk pre dan· kni₧nicu. Na inÜtalßciu kni₧nice pre distrib·ciu RedHat, m⌠₧ete pou₧i¥ program kpackage (KDE), prφpadne gnorpm (GNOME). Ak ste pokroΦil² u₧φvate╛, staΦφ pou₧i¥ prφkaz rpm s prepφnaΦom i. Ak hovorφme o oprave kni₧nφc nedß mi nespomen·¥ jednu informßciu. P⌠vodne firma Borland sprφstupnila na svojom portßli balφk s ve╛kos¥ou 333 MB. Tento obsahoval naviac adresßr patches, v ktorom sa nachßdzali opravnΘ balφΦky kni₧nφc Qt, JPEG a GLIBC pre Mandrake, RedHat, Suse. Tento balφk vÜak bol na web strßnke firmy Borland k dispozφcii len nieko╛ko dnφ. Firma zrejme pochopila, ₧e s¥ahovanie balφka 333 MB zrejme nie je ideßlnym rieÜenφm a tak uvolnila nov² balφk s ve╛kos¥ou 90,7 MB, ktor² neobsahuje adresßr patches s opravn²mi rpm balφkmi kni₧nφc Qt, JPEG a GLIBC. To som trochu odboΦil, vrߥme sa spΣ¥ k inÜtalßcii.

Ak teda test systΘmu skonΦil ·speÜne, m⌠₧ete bez obßv spusti¥ inÜtalßciu produktu Kylix3 Open Edition. Zariadite to prφkazom ./setup.sh alebo sh setup.sh. VzßpΣtφ sa vßm zobrazφ okno s LICENSE AGREEMENT, po ktorom nasleduje samotnß inÜtalßcia produktu Kylix2 (pozri obrßzok 1). InÜtalßtor umo₧≥uje nastavi¥, kam sa bude program inÜtalova¥, v ktorom adresßri sa vytvoria symbolickΘ linky, ktorΘ balφky sa maj· nainÜtalova¥ (oproti verzii Enterprise Edition nie je ve╛mi z Φoho vybera¥) a Φi si prajete vytvori¥ polo₧ku v menu KDE resp. GNOME. Po kliknutφ na tlaΦidlo Begin Install prebehne nainÜtalovanie programu. InÜtalßcia zaberie na disku pribli₧ne 170 MB (samozrejme to len v prφpade v²beru vÜetk²ch komponentov, ktorΘ inÜtalßtor pon·ka). Chcel by som vÜak upozorni¥ na jednu chybu, ktorß sa vßm m⌠₧e vyskytn·¥. V prφpade, ₧e vßm inÜtalßtor vypφÜe chybu Error -10 while installing, treba inÜtalßciu spusti¥ s parametrom -m (teda ./setup.sh ûm, resp. sh setup.sh ûm). 

Vodoznak

Ka₧dß aplikßcia vytvorenß programom Kylix3 Open Edition obsahuje tzv. "vodoznak", t.j. peΦiatku kompilßtora (pozri obrßzok 2). Tßto peΦiatka sa v₧dy zobrazφ pri spustenφ programu vytvorenΘho pomocou v²vojovΘho nßstroja Kylix 3 (C++ IDE) alebo Kylix3 (Delphi IDE). Ke∩ si uvedomφte, ₧e zφskate zadarmo profesionßlny program na pomerne jednoduchΘ vytvßranie aplikßciφ, dß sa to prehliadnu¥ aj ke∩ ja by som osobne uprednostnil umiestnenie tohoto vodoznaku naprφklad do menu, alebo na menej ruÜivΘ miesto.

Teraz vßs zrejme napadne otßzka. Dß sa zobrazovanie peΦiatky kompilßtora potlaΦi¥? Odpove∩ je û ßno, existuje sp⌠sob ako to urobi¥. Najsk⌠r si ukß₧eme ako postupova¥ pri GUI aplikßcii.

Pokia╛ GUI aplikßciu sp·Ü¥ate priamo v prostredφ Kylix3 (C++ IDE) alebo Kylix3 (Delphi IDE), treba vybra¥ v hlavnom menu polo₧ku Run/Parameters... a do okna ktorΘ sa zobrazφ (pozri obrßzok 3), do druhΘho riadku musφte doplni¥ prepφnaΦ ûns. Po kliknutφ na tlaΦidlo OK sa u₧ peΦiatka kompilßtora nezobrazφ.

Ak GUI aplikßciu chcete spusti¥ mimo prostredia Kylix3 (C++ IDE) alebo Kylix3 (Delphi IDE), musφte uvies¥ parameter ûns. Naprφklad ak chcete spusti¥ program hello, urobφte to takto:

./hello -ns

Druh²m typom aplikßcie s ktorou sa m⌠₧ete be₧ne stretn·¥ je konzolovß aplikßcia.

program conapp;
{$APPTYPE CONSOLE}
uses
  SysUtils;
begin
  { TODO -oUser -cConsole Main : Insert code here }
  WriteLn('');
  WriteLn('Hello world!');
  WriteLn('');
end.

V tomto prφpade sa samozrejme nezobrazuje ₧iadne, okno ke∩₧e ide o konzolov· aplikßciu, ale po spustenφ aplikßcie sa na konzolu vypφÜe text peΦiatky [This module must be distributed under the terms of the GNU General Public License (GPL), version 2. A copy of this license can be found at: http://www.borland.com/kylix/gpl.html]. Zobrazovanie peΦiatky kompilßtora potlaΦφte tak, ₧e riadok {$APPTYPE CONSOLE} jednoducho upravφte takto:

//{$APPTYPE CONSOLE}

Ak teraz prelo₧φte a spustφte vyÜÜie uveden² program, peΦiatka kompilßtora sa u₧ na konzole nezobrazφ.  

Komponenty

V Kylix3 Open Edition mßte k dispozφcii nasleduj·ce komponety (pozri obrßzok 4). Ako som u₧ spomenul v ·vode, ∩alÜie komponenty si m⌠₧ete naprogramova¥ sami alebo sk·ste prφsluÜn² komponent poh╛ada¥ na Internete.

STANDARD
Frames, MainMenu, PopupMenu, Label, Edit, Memo, Button, CheckBox, RadioButton, ListBox, ComboBox, ScrollBar, GroupBox, RadioGroup, Panel, ActionList.

ADDITIONAL
BitBtn, SpeedButton, MaskEdit, StringGrid, DrawGrid, Image, Shape, Bevel, ScrollBox, CheckListBox, Splitter, ControlBar, LcdNumber, Timer, PaintBox.

COMMON  CONTROLS
TabControl, PageControl, ImageList, TrackList, TrackBar, ProgressBar, TreeView, ListView, HeaderControl, StatusBar, ToolBar, TextViewer, TextBrowser, SpinEdit, IconView.

SYSTEM
DirectoryTreeView, FileListView, FileIconView, FileEdit, FileHistoryComboBox, FilterComboBox.

DIALOG
OpenDialog, SaveDialog, FontDialog, ColorDialog, FindDialog, ReplaceDialog. 

 

Vlastnosti Kylix3 Open Edition

Kylix3 obsahuje vstavan² assembler s podporou ·plnej inÜtrukΦnej sady 32-bitovΘho procesora Intel x86 (vrßtane inÜtrukciφ Pentium Pro, Pentium III, Pentium 4, MMX«, SIMD a Streaming SIMD Extensions (SSE) a AMD« 3DNow). Podporuje u₧φvate╛sk² dßtov² typ Variant, pou₧φvanie a tvorbu dynamicky zavßdzan²ch balφkov pre vyÜÜiu efektivitu aplikßcie, umo₧≥uje tvorbu zdie╛an²ch kni₧nφc (.so), vyhodnocovanie v²razov v direktφvach prekladaΦa a podporuje predkompilovanΘ hlaviΦkovΘ s·bory, pre r²chlejÜiu kompilßciu jazyka C++. Direktφva Deprecated sa starß o vyÜÜiu ochranu pri v²voji aplikßciφ. PomocnΘ direktφvy Platform a Library vßm u╛ahΦia v²voj multiplatformn²ch aplikßciφ. ╧alej mßte k dispozφcii strom objektov pre r²chlejÜiu navigßciu medzi komponentmi na formulßri, vizußlnych nßvrhßrov (diagramy), otvorenΘ Tools API pre integrßciu vaÜich ob╛·ben²ch nßstrojov, pomocnφka pre tvorbu konzolov²ch aplikßciφ , editor k≤du Borland AppBrowser s hypertextov²mi odkazmi, premennΘ prostredia vo vyh╛adßvacφch cestßch pre automatickΘ vyh╛adßvanie po₧adovan²ch s·borov, mapovanie klßves pre editor vrßtane Üt²lu mapovania Emacs, navigßciu v celom projekte pre lepÜie pochopenie k≤du a kni₧nice CLX, zoznam ·loh pre lepÜiu organizßciu prßce, dßtovΘ moduly pre centralizovan· dßtov· integritu a obchodnΘ pravidlß, vyspelΘho sprßvcu projektu, viac u₧φvate╛sk²ch konfigurßcii (profilov) u₧φvate╛skΘho rozlo₧enia pracovnej plochy.

Maximßlna znovupou₧ite╛nos¥ s objektovo orientovanou na komponentoch zalo₧enou architekt·rou v kni₧nici Borland CLX (Component Library for Cross-platform), vizußlna dediΦnos¥ a prepojovanie CLX formulßru pre ni₧Üiu potrebu k≤du a zjednoduÜenie ·dr₧by, depozitßr objektov pre uschovanie a znovupou₧itie formulßrov, dßtov²ch modulov a expertov, kni₧nica multiplatformn²ch komponentov pre Linux, prieskumnφk k≤du pre automaticky aktualizovanΘ odkazy medzi triedami zdrojov²ch s·borov vytvoren²ch v jazyku Delphi. Nßjdete tu tie₧ wizarda (pomocnφka) pre Üabl≤ny k≤du (jednoduchÜia tvorba k≤du), ∩alej pre dopl≥ovanie k≤du (sprßvna syntax), pre parametre k≤du (zobrazovanie zoznamu parametrov, proced·r, met≤d a udalostφ).

╚o sa t²ka ladenia, mßte k dispozφcii tieto vlastnosti: plnohodnotn² ladiaci prostriedok s farebn²m zv²raznen²m syntaxe, ladenie zdie╛an²ch objektov, detailn² preh╛ad modulov pre inÜpekciu modulov zaveden²ch do pamΣti, r²chle vykonßvanie programu do nßvratu z podprogramu, vzßjomnΘ prepojenie medzi ladiacimi oknami a editorom k≤du vrßtane schrßnky a met≤dy drag and drop, vyspelΘ body preruÜenia s dßtov²mi sp·Ü¥acφmi, plßvaj·cimi oknami, akciami a skupinami pre r²chlejÜiu a kompletnejÜiu kontrolu nad ladenφm, v²pis obsahu FPU s podporou MMX« pre lepÜie nφzko-·rov≥ovΘ ladenie, v²vojovΘ prostredie s podporou MBCS a kni₧nica CLX s podporou MBCS.

K uveden²m vlastnostiam eÜte treba prida¥ vyΦerpßvaj·cu online dokumentßciu pre r²chlu orientßciu, kontextov· pomoc, ktorß obsahuje prφkazy, dial≤gy, komponenty, k╛·ΦovΘ slovß a ∩alÜie informßcie. PoslednΘ Φo treba spomen·¥ je, ₧e Kylix3 Open Edition obsahuje r⌠zne ukß₧kovΘ aplikßcie pre r²chlejÜφ ·vod do programovania v Delphi a C++.

Sp·Ü¥anie aplikßciφ mimo prostredia IDE

Ke∩ budete chcie¥ spusti¥ GUI aplikßciu mimo prostredia Kylix 3 (C++ IDE) alebo Kylix3 (Delphi IDE) dostanete chybovΘ hlßsenie: Error while loading shared libraries: libqtintf-6.9-qt2.3.so cannot open shared object file: No such file or directory. Ak pou₧ijete prφkaz ldd meno_aplikßcie zobrazia sa vßm na obrazovke vÜetky kni₧nice, ktorΘ vßÜ program potrebuje pre svoju Φinnos¥. VßÜ program potom musφte s t²mito kni₧nicami aj distribuova¥.

/lib/libNoVersion.so.1 => /lib/libNoVersion.so.1 (0x40014000)
libqtintf-6.9-qt2.3.so => not found
libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x4002e000)
libpthread.so.0 => /lib/i686/libpthread.so.0 (0x40103000)
libdl.so.2 => /lib/libdl.so.2 (0x40117000)
libc.so.6 => /lib/i686/libc.so.6 (0x42000000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)

Ak sa pozriete na druh² riadok v²pisu nßjdete tam informßciu libqtintf-6.9-qt2.3.so => not found.

Tento problΘm sa dß rieÜi¥ tak, ₧e nastavφte premennΘ prostredia LD_LIBRARY_PATH a PATH, pomocou prφkazu export. Vytvorφme si jednoduch² script pomocou ktorΘho urobφte potrebnΘ nastavenia premenn²ch a spustφte aplikßciu z nßzvom Project1.

#!/bin/sh
export LD_LIBRARY_PATH=/usr/local/kylix3/bin
export PATH=
$PATH:/usr/local/kylix3/bin:/usr/local/kylix3/lib
./Project1

Po nastavenφ premenn²ch prostredia LD_LIBRARY_PATH a PATH je u₧ vÜetko v najlepÜom poriadku, Φoho d⌠kazom je aj nasleduj·ci v²pis:

/lib/libNoVersion.so.1 => /lib/libNoVersion.so.1 (0x40014000)
libqtintf-6.9-qt2.3.so => /usr/local/kylix3/bin/libqtintf-6.9-qt2.3.so (0x40017000)
libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x401d0000)
libpthread.so.0 => /lib/i686/libpthread.so.0 (0x402a5000)
libdl.so.2 => /lib/libdl.so.2 (0x402b9000)
libc.so.6 => /lib/i686/libc.so.6 (0x42000000)
libqt.so.2 => /usr/local/kylix3/bin/libqt.so.2 (0x402bc000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x4096f000)
libm.so.6 => /lib/i686/libm.so.6 (0x4097c000)
libSM.so.6 => /usr/X11R6/lib/libSM.so.6 (0x4099e000)
libICE.so.6 => /usr/X11R6/lib/libICE.so.6 (0x409a6000)
libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0x409bd000)
libstdc++-libc6.1-1.so.2 => /usr/lib/libstdc++-libc6.1-1.so.2 (0x409db000)

Zßver

Aj napriek nedostatkom, ktorΘ Kylix3 Open Edition obsahuje vßm ho m⌠₧em len odporuΦi¥, zφskate tak dva nßstroje Kylix 3 (C++ IDE) a Kylix3 (Delphi IDE) na r²chly v²voj aplikßciφ pod Linuxom. Na testovanie tohoto produktu bola pou₧itß distrib·cia Red Hat Linux release 7.3 (Valhalla) s jadrom 2.4.18-3. Ak Kylix3 Open Edition eÜte nemßte (Viz. toto Chip CD), m⌠₧ete ho kedyko╛vek zφska¥ na adrese www.borland.com/products/downloads/download_kylix.html, balφk mß ve╛kos¥ 90.7 MB. Pre jeho funkΦnos¥ eÜte potrebujete licenΦn² s·bor, ktor² treba nakopφrova¥ do adresßra u₧φvate╛a. S·bor vßm poÜle automatick² agent web strßnky www.borland.com elektronickou poÜtou po vyplnenφ dotaznφka.

Peter GaÜparoviΦ

PodporovanΘ distrib·cie OS Linux:
         Red HatÖ 7.3
         MandrakeÖ 8.2
         SuSE« 7.3

SystΘmovΘ po₧iadavky pre Kylix3 Open Edition:

KylixÖ 3 Open Edition (free)
ò Intel« Pentium« II/500 MHz
ò 256 MB RAM
ò 200 MB volnΘho miesta na disku pre plnou inÜtalßciu
ò CD-ROM mechanika
ò
Monitor s rozlφÜenφm VGA nebo vyÜÜφm
ò MyÜ alebo inΘ polohovacie zariadenie

Vysvetlivky:

IDE (Integrated Development Environment) û integrovanΘ v²vojovΘ prostredie, ktorΘ obsahuje previazan² editor, prekladaΦ (compiler), spojovacφ program (linker) a ladiaci nßstroj (debugger)

RAD (Rapid Application Development) û r²chly v²voj aplikßciφ. Pou₧φva sa v s·vislosti s vizußlnymi nßstrojmi pre tvorbu aplikßciφ.

GUI (Graphic User Interface) û grafickΘ u₧φvate╛skΘ rozhranie.

FPU (Floating Point Unit) û v²konnß jednotka procesora pre operßcie v pohyblivej rßdovej Φiarke.

MMX (MultiMedia eXtensions) û rozÜiruj·ce inÜtrukcie procesora pre zr²chlenie vektorov²ch a maticov²ch operßciφ.