BerndPol Anne-MarieMahfouf &tdevelop;i paigaldamine paigaldamine Käesolevas peatükis räägime sammudest, mida on vaja ette võtta &tdevelop;i IDE kompileerimiseks ja paigaldamiseks: &tdevelop;i hankimine kõneleb peamiselt &tdevelop;i uusima lähtekoodi allalaadimisest SVN-ist. &tdevelop;i nõuded toob ära programmid ja teegid, mida on paigaldada IDE edukaks kompileerimiseks. &tdevelop;i kompileerimine ja paigaldamine käib samm-sammult läbi kogu rakenduse kompileerimise ja paigaldamise protsessi. &tdevelop;i &API; dokumentatsiooni hankimine selgitab, mis on API ja kuidas hankida see väga kasulik töövahend &tdevelop;i lähtekoodifailides liikumiseks. &tdevelop;i hankimine &tdevelop;i hankimine &tdevelop; hankimine &tdevelop; on binaarpaketina saadaval paljudes &Linux; distributsioonides (näiteks SuSE, RedHat ja nii edasi). Binaarpaketid on mõnes käepärases vormingus, näiteks RPM, mis muudab nende paigaldamise üsna lihtsaks. Järgida tuleb lihtsalt distributsiooni tarkvara paigaldamise üldisi reegleid. &tdevelop;i lähtekoodi võib aga hankida, kompileerida ja paigaldada ka ise. Lähtekoodi leiab projekti koduleheküljelt http://www.tdevelop.org või &kde; FTP-saidilt. &tdevelop;i igapäevaste hetkeversioonide hankimine SVN-ist svn Kui soovid käia ühte jalga arenduse hetkeseisuga, võid kasutada SVN-i hoidla hetkeversioone (snapshot). Mooduli nimi on tdevelop ja selle asukoht svn co svn://anonsvn.kde.org/home/kde/branches/KDE/3.5/tdevelop. Esialgne SVN-i väljavõte väljavõtmine &tdevelop; svn väljavõtmine &tdevelop;i esialgse versiooni hankimiseks tuleb see alla laadida anonüümse SVN-iga. Selleks väljavõtmise toiminguks talita järgmiselt. Me eeldame, et sa tahad paigutada &tdevelop;i kataloogi kde3src oma kodukataloogis (~). # Vajaduse korral loo sihtkataloog: ~> mkdir kde3src ~> cd kde3src ~/kde3src> svn co svn://anonsvn.kde.org/home/kde/branches/KDE/3.5/tdevelop ~/kde3src> cd tdevelop Kui oled &tdevelop;i edukalt hoidlast välja võtnud, võid selle alati värskena hoida uuendamist kasutades, mida tutvustame järgmises osas. Ürita serverit mitte liigselt koormata. Palun ära tee väljavõtet iga kord, kui tahad hankida &tdevelop;i uusimat versiooni! Kasuta selle asemel SVN-i uuendamise võimalust. Nüüd võid &tdevelop;i kompileerida nii, nagu seda selgitab osa &tdevelop;i kompileerimine ja paigaldamine. SVN-i versiooni hoidmine värskena uuendamine &tdevelop; svn uuendamine Kui oled &tdevelop;i SVN-ist edukalt välja võtnud (ja kompileerinud), soovid arvatavasti seda värskena hoida, et näha, kuidas arendustegevus edasi kulgeb. Selleks järgi järgmisi samme (me eeldame taas, et &tdevelop; asub kataloogis kde3src). Pane tähele käsu up (= update ehk uuendamine) kasutamist käsu co (mis tähendab checkout ehk väljavõte) asemel. ~> cd kde3src ~/kde3src> cd tdevelop ~/kde3src> svn up Jälgi uuendamise ajal SVN-i teateid. Sellest sõltuvad ka kompileerimise ajal vajalikud sammud. Nüüd võid uue &tdevelop;i versiooni kompileerida nii, nagu seda õpetab tegema peatükk SVN-i kompileerimise iseärasused. &tdevelop;i nõuded nõuded &tdevelop; nõuded GNU nõuded &tdevelop;i edukaks kompileerimiseks ja kasutamiseks on vajalikud järgmised programmid ja teegid. Enamikul platvormidel käivad need juba distributsiooniga kaasas ja peaks olema paigaldatud või vähemalt väga lihtsasti paigaldatavad. Nõutavad: gcc/g++ ≥ 2.95.3 (või ühilduv) gcc nõuded g++ nõuded Saadaval: gcc.gnu.org &GNU; make (või ühilduv) make nõuded Saadaval: www.gnu.org/software/make &perl; 5.004 (või uuem) Perl nõuded Saadaval: www.perl.com autoconf ≥ 2.52 (või uuem) autoconf nõuded Saadaval: www.gnu.org/software/autoconf automake ≥ 1.6 (või uuem) automake nõuded Saadaval: www.gnu.org/software/automake flex 2.5.4 (või uuem) flex nõuded Saadaval: www.gnu.org/software/flex &Qt; ≥ 3.3.0 (või uuem) Qt nõuded Saadaval: www.trolltech.com/products/qt KDE ≥ 3.4.0 (või uuem) KDE nõuded Saadaval: www.kde.org Lisavõimalused: Lähtekoodis liikumise tööriist ctags (saadaval: http://ctags.sourceforge.net), mis lubab kõigest paari klõpsuga redaktoris liikuda vajalikele deklaratsioonidele ja definitsioonidele. ctags Graafikakeele kompilaator dot (saadaval: http:/www.graphviz.org). Seda läheb vaja allpool mainitud &doxygen;i jaoks, kui soovid esitada graafiliselt klasside seoseid (mis on väga soovitatav). dot Dokumentatsioonitööriist &doxygen; (saadaval: http://www.doxygen.org), millega saab oma projektist genereerida kokkuvõtliku ja võimsa API dokumentatsiooni. doxygen valgrind (saadaval: http://developer.kde.org/~sewardj/) aitab tuvastada rakenduses esinevaid mälukasutusprobleeme. valgrind svn (saadaval: http://subversion.tigris.org/), kui soovid kasutada versioonikontrollisüsteemi SVN. svn nõuded Mis tahes kompilaator ja/või tööriist, kui soovid arendada muus keeles või muu platvormi jaoks kui C++/&kde; või kui kasutad midagi spetsiaalset. Teatud määral saab mööda minna nõudest &autoconf; ≥ 2.52 ja &automake; ≥ 1.6 järele. Eemalda lihtsalt oma &tdevelop;i paigalduskataloogist kataloog admin ja anna käsk autoconf versiooninõudest möödahiilimine automake versiooninõudest möödahiilimine versiooninõue möödahiilimine autoconf/automake'i korral (sinu-tdevelopi-kataloog)> ln -s $KDEDIR/share/apps/tdelibs/admin admin See sunnib &tdevelop;i kasutama &kde; kataloogis admin määratud standardseadistusi. Pane tähele, et sa ei segaks &Qt; versioone. Lingi &tdevelop; alati selle &Qt; versiooniga, millega on kompileeritud sinu &kde; teek. Vastasel juhul võid kohata mitmeid väga kummalisi ilminguid. &tdevelop;i kompileerimine ja paigaldamine &tdevelop; kompileerimine &tdevelop; paigaldamine Kui kõik nõuded on rahuldatud, võid asuda &tdevelop;i kompileerimise ja paigaldamise kallale. Järgnevalt tutvustamegi selleks vajalikke samme. Eelnevad sammud räägib sobiva keskkonna loomisest. &tdevelop;i kompileerimine käsitleb &tdevelop;i lähtekoodi hankimist SVN-ist, selle ettevalmistamist paigaldamiseks ning esitab sammud, mida on vaja &tdevelop;i kompileerimiseks ja paigaldamiseks. Mõned märkused configure võtmete kohta vaatleb, kuidas panna tööle &tdevelop;, kui see on paigaldatud kuhugi mujale kui &kde; kataloogi. Eelnevad sammud eelnevad sammud &tdevelop;i paigaldamine KDEDIR QTDIR LD_LIBRARY_PATH LIBRARY_PATH PATH Enne kompileerimise kallale asumist tuleb kontrollida, et süsteemis on ikka olemas kõik vajalikud teegid ja tööriistad. Selleks tuleb korrektselt määrata mõned keskkonnamuutujad. Milliseid konkreetseid samme astuda, sõltub sellest, millist shelli sa kasutad. Et mitte käsitsi kirjutada kogu aeg kõiki lauseid, mis loovad vajalikud keskkonnamuutujad, võiks need lisada faili .bashrc või .cshrc. Nii määratakse keskkonnamuutujatele sobiv väärtus alati, kui shelli käivitad. Keskkonna loomine Bashi shellile Kui kasutad Bashi shelli, lisa järgmised read: export KDEDIR=(sinu KDE paigalduse asukoht) export QTDIR=(sinu Qt teegi asukoht) export LD_LIBRARY_PATH=$QTDIR/lib:$KDEDIR/lib:$LD_LIBRARY_PATH export LIBRARY_PATH=$QTDIR/lib:$KDEDIR/lib:$LIBRARY_PATH export PATH=$QTDIR/bin:$KDEDIR/bin:$PATH Keskkonna loomine Tcsh shellile Kui kasutad Tcsh shelli, lisa järgmised read: setenv KDEDIR (sinu KDE paigalduse asukoht) setenv QTDIR (sinu Qt teegi asukoht) setenv LD_LIBRARY_PATH=$QTDIR/lib:$KDEDIR/lib:$LD_LIBRARY_PATH setenv LIBRARY_PATH $QTDIR/lib:$KDEDIR/lib:$LIBRARY_PATH setenv PATH $QTDIR/bin:$KDEDIR/bin:$PATH &tdevelop;i kompileerimine make &tdevelop;i paigaldamine kompileerimine &tdevelop; Järgnevalt eeldame, et oled &tdevelop;i lähtekoodi paigutanud kataloogi ~/kde3src/tdevelop. SVN-i kompileerimise iseärasused Kui kasutad &tdevelop;i hetkeversiooni SVN-ist, sõltuvad esimesed kompileerimissammud sellest, kas oled teinud täieliku väljavõtte või ainult lähtekoodi uuendanud. Pärast SVN-i väljavõtet Pärast esimest väljavõtet tuleb initsialiseerida ehitussüsteem. Seda tuleb õieti teha alati, kui soovid kõike algusest peale alustada. Anna käsk: ~/kde3src/tdevelop> make -f admin/Makefile.common svn-clean ja seejärel kõik järgnevad sammud. Sul on vajalik ligipääs SVN-i hoidlasse puhastamiseks, kui seal tuleb taastada vigaseid või puuduvaid faile. Käsk svn-clean eemaldab kataloogist kõik failid, mida ei leidu SVN-is! Kontrolli eelnevalt, et oleksid teinud varukoopia mis tahes väärtuslikust infost. Pärast SVN-i uuendamist Järgmine samm sõltub SVN-i uuendamisel nähtud teadetest. Kui näed midagi sellist (vasakpoolses veerus võib olla kas U või P, mis mõlemad annavad märku, et faili on muudetud): U /mingi_kataloogi_asukoht/Makefile.am või kui tegid täieliku väljavõtte, tuleb sul anda käsk: ~/kde3src/tdevelop> make -f Makefile.svn enne kui asud kõigi järgnevate sammude juurde. Käsu <command >make</command > põhisammud Kui ehitussüsteem on põhimõtteliselt paigas, tuleb otsustada, millist &tdevelop;i süsteemi sa soovid kasutada. Seda saab teha järgneva konfigureerimissammu käigus, millega luuakse tegelikud Makefile'id, mida käsk make kasutab. Sa võid loobuda võtmest järgnevates configure näidetes, kui paigaldad &tdevelop;i &kde; vaikekataloogi. Täpsemalt räägib sellest osa Mõned märkused configure võtmete kohta. Silumisega kompileeritud versioon Kui soovid hoida silma peal, mida &tdevelop;i rakendus teeb käitusajal, tuleks ehitada silumisega kompileeritud versioon. Selleks anna vastav käsklus käsule configure: ~/kde3src/tdevelop> ./configure --enable-debug=full --prefix=(sinu-kde3-asukoht) Väljalaskeks kompileeritud versioon Kui soovid kasutada &tdevelop;i nii nagu ta on (väiksem ja töötab kiiremini), piisab väljalaskeks mõeldud versioonist. Vaikimisi configure seda teebki. ~/kde3src/tdevelop> ./configure --prefix=(sinu-kde3-asukoht) Kui soovid ehitada omaenda API dokumentatsiooni &tdevelop;ile, tuleb käsule configure anda veel üks võti: ~/kde3src/tdevelop> ./configure --(võtmed-nagu-eespool) \ --with-tdelibsdoxy-dir=$KDEDIR/share/doc/HTML/en/tdelibs-apidocs &tdevelop;i ehitamine ja paigaldamine Käsk configure kontrollib süsteemi ja ehitab vastavalt leitule mõned Makefile'id. Käsk make kasutab vaikimisi peamist Makefile'i. Sestap on piisav ~/kde3src/tdevelop> make Vajaduse korral võta endale administraatori (root) õigused käsuga ~/kde3src/tdevelop> su ja anna administraatori parool. Seejärel paigalda rakendus: ~/kde3src/tdevelop> make install Ja ongi kõik. Kui paigaldasid tdevelop;i &kde; vaikekataloogi, võid IDE kohe käivitada. Vastasel juhul on vajalikud mõned lisasammud, mida tutvustab osa Enda määratud paigalduskataloog. Õigupoolest paigaldatakse tavaliselt kolm &tdevelop;ile tuginevat rakendust: &tdevelop;i IDE — koht, kus sa tavaliselt tööd teed. Iseseisev &tdevelop;i abiline ehk dokumentatsioonisirvija — see koondab kogu &tdevelop;i IDE võimsa dokumentatsioonitööriista omaette rakendusse. See on kasuks, kui soovid lihtsalt uurida dokumentatsiooni, aga ei taha kogu IDE-t käivitada. &tdevelop;i disainer — see täiustab &Qt; kasutajaliidese disainerit &kde; spetsiifiliste elementidega ning põimub kenasti &tdevelop;i IDE-ga. Mõned märkused <command >configure</command > võtmete kohta Enda määratud paigalduskataloog &tdevelop; paigaldamine enda määratud paigalduskataloog enda määratud paigalduskataloog KDEDIRS kbuildsycoca Vaikimisi valmistab configure ette IDE paigaldamise &kde; vaikekataloogi. See on vajalik selleks, et &tdevelop; eeldab otseligipääsu teatud tööriistadele ja komponentidele, mis asuvad just seal. Kui soovid kasutada enda määratud paigalduskataloogi, pead selle käsule configure teatavaks tegema võtmega : ~/kde3src/tdevelop> ./configure --prefix=(sinu-kde3-asukoht) Siin on üks probleem. Nimelt pead nüüd tagama, et &tdevelop; ikka pääseks töötamise ajal ligi &kde; kataloogis paiknevatele tööriistadele ja komponentidele (sa võid muidugi IDE-t kasutada ka ilma selleta, aga see piirab rängalt funktsionaalsust). Ava shell ja anna järgmised käsud enne &tdevelop;i käivitamist. Pane tähele mitmust: õige on KDEDIRS, mitte aga KDEDIR ~> export KDEDIRS=/usr/local/kde:/opt/kde3 ~> kbuildsycoca (Nüüd käivita &tdevelop;:) ~> tdevelop Keskkonnamuutuja KDEDIRS peab vastama sinu süsteemi aktiivsete &kde; kataloogide nimekirjale. Me kasutame /usr/local/kde:/opt/kde3 ainult näitena. Kataloog /usr/local/kde võib näiteks sisaldada ebatäielikku &kde; versiooni, mille oled kompileerinud silumise huvides, ning kataloog /opt/kde3 võib lisaks sisaldada sinu distributsiooni standardset &kde; versiooni, mida kasutatakse igapäevatöös. Tcsh shellis tuleb keskkonnamuutujad määrata käsuga: ~> setenv KDEDIRS /usr/local/kde:/opt/kde3 Käsk kbuildsycoca (build system control cache ehk ehitussüsteemi kontrollimise puhver) otsib teeke ja puhverdab nende asukoha ning versiooni, et &tdevelop; need üles leiaks. Kuid see võtab tublisti aega — ning see tuleb käivitada iga kord, kui käivitad shelli, et panna &tdevelop; tööle mittestandardsest kataloogist. Seepärast soovitame eeltoodud käsud lisada shelliskripti, et sa ei peaks neid kogu aeg käsitsi sisestama. (Need read võib lisada ka failile .bashrc või .cshrc, kuid see pole soovitatav, sest kbuildsycoca käivitatakse sel juhul alati, kui avad shelli.) Käsk kbuildsycoca ei tööta administraatori õigustes. See tuleb välja kutsuda mitteadministraatorist kasutaja õigustes. (Pealegi ei ole üldse hea mõte tegelda tarkvara arendamisega administraatori õigustes!) &tdevelop;i API dokumentatsiooni hankimine API &tdevelop; &tdevelop; API kompileerimine &tdevelop; API configure &tdevelop;i API API tähendab Application Program Interface ehk programmi- või rakendusliides. Õigupoolest sisaldab API rida kirjeldusi (&ie; nimekonventsioone), mida kasutades rakendus saab kasutada operatsioonisüsteemi ja teisi teenuseid. Meie kontekstis on sellel aga laiem tähendus. &kde; või &Qt; rakenduse API on klasside ja meetodite kokkuvõte, mida saab kasutada oma moodi sõnaraamatuna lähtekoodis liikumisel. Uusima API versiooni leiab KDevelopi koduleheküljelt. Seda uuendatakse automaatselt iga 24 tunni järel, nii et see on alati maksimaalselt värske. Paraku on see versioon kõige paremini loetav ainult internetis. Kui sul puudub pidev interneti kasutamise võimalus, võid &tdevelop;i lähtekoodist ehitada omaenda API dokumentatsiooni. Selleks peab automake'i süsteemile ütlema, kust sinu süsteemis leida KDELIBS'i API. Selleks anna spetsiaalne võti käsule configure &tdevelop;i lähtekoodi kompileerimiseks valmistudes: ~/kde3src/tdevelop> ./configure --(tavalised-võtmed) \ --with-tdelibsdoxy-dir=$KDEDIR/share/doc/HTML/en/tdelibs-apidocs (make asendab globaalse muutuja $KDEDIR siin kirja pandud tegeliku &kde; kataloogi määratlusega.) Seejärel anna käsk make nagu tavaliselt. Pärast &tdevelop;i IDE ehitamist on sul võimalus ehitada ka API. Selleks tuleb anda käsk ~/kde3src/tdevelop> make apidocs See ehitab Doxyfile'i sinu &tdevelop;i baaskataloogis, mida omakorda asub töötlema rakendus Doxygen, mis ehitab terve rea .html-vormingus API faile. Kui see üsna kaua aega võttev API ehitamise protsess (aeglasemates arvutites võib kesta ka üle tunni) lõpuks mäele jõuab, tuleb APIpaigaldada samamoodi nagu &tdevelop;i IDE. Vajaduse korral võta endale administraatori (root) õigused käsuga ~/kde3src/tdevelop> su ja anna administraatori parool. Seejärel paigalda API failid: ~/kde3src/tdevelop> make install-apidox Kui see tehtud, annab make teada kataloogi, kus võid lõpuks näha API dokumentatsiooni sisu. Jäta see aadress meelde: sa võid seda kasutada nii &konqueror;is kui ka &tdevelop;is, eriti kui kavatsed &tdevelop;is neid oma rakenduse loomise ajal uurida. Tõenäoliselt näed terve hulga hoiatusi ja/või veateateid, kui Doxygen API dokumentatsiooni ehitab. Neid on kõige mõistlikum ignoreerida, sest need pakuvad peamiselt huvi ainult &tdevelop;i arendajatele. Kui API tekitamine lõpuks edukalt lõpule jõuab, on .html-vormingus API failid kasutamiseks valmis.