BerndPol Anne-MarieMahfouf Installering af &tdevelop; Installation Her finder du alle skridt som behøves for at kompilere og installere det integrerede udviklingsmiljø &tdevelop;: Hvordan man får fat på &tdevelop; koncentrerer sig om hvordan man henter den seneste kildekode for &tdevelop; fra svn. Krav for &tdevelop; giver en liste af programmer og biblioteker som du skal have installerede for at det skal lykkes at kompilere det integrerede udviklingsmiljø. Kompilering og installation af &tdevelop; leder dig gennem alle skridt for kompilering og installation af programmet. Hvordan man får fat på dokumentation af programmeringsgrænsefladen for &tdevelop; fortæller hvad en programmeringsgrænseflade er og hvordan du får fat på et så nyttigt værktøj for navigering i kildekoden for &tdevelop;. Hvordan man får fat på &tdevelop; få fat på &tdevelop; &tdevelop; få fat på &tdevelop; er tilgængelig i binær form fra mange forskellige &Linux;-distributioner såsom SuSE, RedHat med flere. De binære filer er pakkede på en bekvem måde, oftest RPM, for nemt at kunne installeres. Følg standardinstruktionerne som gives i distributionen for at installere. Du kan også få fat på kildekoden for &tdevelop;, kompilere og installere den selv. Kildekoden findes via projektets hjemmeside på http://www.tdevelop.org eller via &kde;'s FTP-sted. Hente dagsfriske udgaver af &tdevelop; fra svn svn Hvis du vil tage del i nuværende udvikling, er versioner fra det anonyme SVN-arkiv tilgængelige. Modulnavnet er tdevelop med svn co svn://anonsvn.kde.org/home/kde/branches/KDE/3.5/tdevelop. Oprindelig udtjekning fra svn udtjekning &tdevelop; svn udtjekning For at få en oprindelig udgave af &tdevelop; skal du hente den fra anonym svn. For denne såkaldte udtjekningshandling følges skridtene nedenfor. Vi antager vi at du ønsker at placere din kopi af &tdevelop; i mappen /kde3src/tdevelop undermappen af din hjemmemappe(~). # Opret målmappen om nødvendigt: ~> mkdir kde3src ~> cd kde3src ~/kde3src> svn co svn://anonsvn.kde.org/home/kde/branches/KDE/3.5/tdevelop ~/kde3src> cd tdevelop Når du er lykkedes at tjekke din version af &tdevelop; ud, kan du følge med i ændringerne ved at bruge opdateringsproceduren som vises i næste afsnit. Hold serverbelastningen lav. Vær venlig ikke at tjekke ud hver gang du vil have en ny version af &tdevelop; Brug svn update til dette formål. Nu kan du kompilere din version af &tdevelop; som vist i kapitlet Kompilering og installation af &tdevelop;. Hold din kopi af svn opdateret opdatér &tdevelop; svn opdatér Efter du har tjekket &tdevelop; ud fra svn som vist ovenfor (og det er lykkedes at kompilere den), vil du holde den aktuel for at få alle programrettelser med. Følg så skridtene nedenfor. (Vi antager igen at du har placeret din kopi af &tdevelop; i mappen kde3src.) Bemærk kommandoen up (= update) i stedet for co (hvilket betyder checkout). ~> cd kde3src ~/kde3src> cd tdevelop ~/kde3src> svn up Hold øje med meddelelserne som svn viser under opdateringssekvensen. De nøjagtige skridt i kompileringssekvensen afhænger af dem. Nu kan du kompilere en ny version af &tdevelop; som vist i kapitlet Særlige hensyn ved kompilering fra svn. Krav for &tdevelop; krav &tdevelop; krav GNU krav For at det skal lykkes at kompilere og bruge &tdevelop;, behøver du følgende programmer og biblioteker. De er tilgængelige på de fleste platforme som distributionspakke, og kan derved let installeres. Krævet gcc/g++ ≥ 2.95.3 (eller tilsvarende) gcc krav g++ krav Tilgængelig fra gcc.gnu.org &GNU; make (eller tilsvarende) make krav Tilgængelig fra www.gnu.org/software/make &perl; 5.004 (eller nyere) Perl krav Tilgængelig fra www.perl.com autoconf ≥ 2.52 (eller nyere) autoconf krav Tilgængelig fra www.gnu.org/software/autoconf automake ≥ 1.6 (eller nyerer) automake krav Tilgængelig fra www.gnu.org/software/automake flex 2.5.4 (eller nyere) flex krav Tilgængelig fra www.gnu.org/software/flex &Qt; ≥ 3.3.0 (eller nyere) Qt krav Tilgængelig fra www.trolltech.com/products/qt KDE ≥ 3.4.0 (eller nyere) KDE krav Tilgængelig fra www.kde.org Valgfrit: Værktøjet ctags til kildekodenavigering, fra http://ctags.sourceforge.net, som giver dig hurtig adgang til deklarationer og definitioner med nogle få enkle klik på et navn i editoren. ctags Oversætteren dot for grafiksprog, fra http:/www.graphviz.org. Værktøjet behøves sammen med &doxygen; nedenfor, hvis du vil vise klasseforholdene grafisk (hvilket stærkt anbefales). dot Dokumentationsværktøjet &doxygen;, fra http://www.doxygen.org, hvis du vil lave koncis og kraftfuld dokumentation af programmeringsgrænsefladen for dine projekter. doxygen Valgrind fra http://developer.kde.org/~sewardj/ hjælper dig med at finde hukommelseshåndteringsproblemer i dine programmer. valgrind SVN fra http://subversion.tigris.org/, hvis du vil bruge versionshåndteringssystemet SVN. svn krav Eventuelt andre oversættere og/eller værktøjer hvis du vil udvikle for et andet sprog eller platform end C++/&kde;, eller bruge en anden specialfunktion. Du kan i et vist omfang omgå behovet for &autoconf; ≥ 2.52 og &automake; ≥ 1.6. Fjern blot mappen admin i installationsmappen for &tdevelop;, og skriv: autoconf omgå versionsbehov automake omgå versionsbehov versionsbehov omgå behov for autoconf og automake (din tdevelop-mappe)> ln -s $KDEDIR/share/apps/tdelibs/admin admin i terminalen. Det gør at &tdevelop; bruger standardindstillingerne i &kde;'s admin-mappe i stedet. Vær forsigtig så du ikke blander forskellige versioner af &Qt;. Link altid &tdevelop; med samme version af &Qt; som &kde;-biblioteket kompileredes med. Ellers vil du formodentlig komme ud for meget mærkelig opførsel. Kompilering og installation af &tdevelop; &tdevelop; kompilering &tdevelop; installation Når alle krav er mødt, er du parat til at kompilere og installere &tdevelop;. Dette appendiks vil diskutere de nødvendige skridt til at gøre dette. Forberedende skridt fortæller dig om opsætning af rigtigt miljø. Kompilér &tdevelop; drejer sig om at få fat på &tdevelop; kilder fra svn, hvordan de skal forberedes for installationsprocessen, og viser endelig skridtene der er nødvendige for at kompilere og installere &tdevelop;. Nogle bemærkninger om configure tilvalg fortæller dig hvordan du kører &tdevelop; hvis det er blevet installeret på et andet sted end &kde;-mappen. Forberedende skridt preliminært Installation af &tdevelop; KDEDIR QTDIR LD_LIBRARY_PATH LIBRARY_PATH PATH Inden du påbegynder kompileringssekvensen, skal du sikre dig at alle biblioteker og værktøj er tilgængelige for byggesystemet. For at opnå dette, skal visse miljøvariabler indstilles rigtigt. Skridtene som skal udføres afhænger af hvilken skal du bruger i terminalen. For at undgå at indtaste alle sætningerne som indstiller de nødvendige miljøvariabler hver gang du vil kompilere, kan du placere dem i filen .bashrc eller .cshrc. På den måde indstilles miljøvariablerne rigtigt hver gang du starter skallen. Opsætning af miljøet for bash-skallen Hvis du bruger bash-skallen, tilføjes følgende linjer: export KDEDIR=(sti til din KDE-installation) export QTDIR=(sti til dit Qt-bibliotek) 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 Opsætning af miljøet for tcsh-skallen Hvis du bruger tcsh-skallen, tilføjes følgende linjer: setenv KDEDIR (sti til din KDE-installation) setenv QTDIR (sti til dit Qt-bibliotek) 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 Kompilér &tdevelop; make Installation af &tdevelop; kompilering &tdevelop; I følgende beskrivelse antager vi at du har placeret kildekoden for &tdevelop; i mappen ~/kde3src/tdevelop. Særlige hensyn ved kompilering fra svn Hvis du bruger en aktuel version af &tdevelop; fra svn, afhænger de første kompileringsskridt af om du netop har gjort en fuldstændig udtjekning, eller kun opdateret kildekoden. Efter en udtjekning fra svn Du skal initiere byggesystemet efter en ny udtjekning. Det samme gælder hver gang du skal starte igen fra begyndelsen. Skriv: ~/kde3src/tdevelop> make -f admin/Makefile.common svn-clean og derefter alle følgende skridt. Du har måske brug for adgang til svn-arkivet for oprydningen hvis nogen korrupte eller manglende filer skal genkonstrueres. svn-clean-kommandoen vil fjerne hver fil der ikke er i svn fra mappen! Sørg for at sikkerhedskopiere al værdifuld information før du udsteder denne oprydningskommando. Efter en opdatering fra svn Næste skridt afhænger af udskriften fra svn-opdateringssekvensen. Hvis du fik noget som ligner følgende (der kan være en U eller P markering i søjlen til venstre, begge betyder at filen er blevet ændret): U /en_mappe_sti/Makefile.am eller hvis du netop har lavet en fuldstændig udtjekning, skal du skrive: ~/kde3src/tdevelop> make -f Makefile.svn inden du fortsætter med alle følgende skridt. Grundlæggende kommandosekvens med <command >make</command > Når det grundlæggende byggesystem er indstillet på denne måde, skal du bestemme dig for hvilken slags &tdevelop;-system du vil bruge. Det gøres med følgende indstillingsskridt, som bygger den virkelige fil med navnet Makefile, som make kommandoen vil bruge. Du kan udelade flaget i følgende kommandolinjer med configure, hvis du ønsker at &tdevelop; skal installeres i &kde;'s standardmappe. Se kapitlet Nogle bemærkninger om flag til configure om dette. En version kompileret til fejlsøgning Hvis du vil holde styr på hvad programmet &tdevelop; gør når det kører, kan du bygge en version kompileret med fejlsøgning. Bed blot din configure om at gøre det: ~/kde3src/tdevelop> ./configure --enable-debug=full --prefix=(hvor-din-kde3-er) En version kompileret til distribution Hvis du kun vil bruge &tdevelop; som det er (mindre og hurtigere), er det nok med en version kompileret for distribution. Det er standarden i configure. ~/kde3src/tdevelop> ./configure --prefix=(hvor-din-kde3-er) Hvis du vil lave din egen dokumentation for programmeringsgrænsefladen for &tdevelop;, skal du tage yderligere et flag med i kommandoen configure: ~/kde3src/tdevelop> ./configure --(tilvalg-som-ovenfor) \ --with-tdelibsdoxy-dir=$KDEDIR/share/doc/HTML/en/tdelibs-apidocs Byg og installér &tdevelop; Kommandoen configure kontrollerer systemet og bygger en Makefile ifølge hvad den finder. Kommandoen make bruger normalt denne Makefile. Altså er ~/kde3src/tdevelop> make tilstrækkeligt. Om nødvendigt, så skaf rettigheder som systemadministrator ~/kde3src/tdevelop> su og angive systemadministratorens kodeord. Installér derefter programmet: ~/kde3src/tdevelop> make install Det er alt. Hvis du installerede &tdevelop; i &kde;'s standardmappe, kan du nu køre det integrerede udviklingsmiljø. Ellers er nogle yderligere skridt nødvendige, som vises i afsnittet Anden installationsmappe end standard nedenfor. Faktisk er der normalt tre &tdevelop;-programmer installeret: &tdevelop; integreret udviklingsmiljø — det er her du normalt kommer til at arbejde. Den fritstående &tdevelop; Assistent dokumentationsbrowser — isolerer alle de stærke dokumentationsfunktioner fra det integrerede &tdevelop; udviklingsmiljø i et separat værktøj. Dette er specielt nyttigt når du vil slå noget programmeringsdokumentation op, men ikke vil starte hele udviklingsmiljøet. &tdevelop; Designer — forbedrer &Qt;-User Interface Designer med &kde; specifikke kontroller og integrerer sig fint i &tdevelop; udviklingsmiljøet. Nogle bemærkninger om flag til <command >configure</command > Anden installationsmappe end standard &tdevelop; installation ikke standardmappe ikke standardmappe KDEDIRS kbuildsycoca Normalt forbereder configure til at installere det grafiske udviklingsmiljø i &kde;'s standardmappe. Det er nødvendigt, eftersom &tdevelop; antager at der er direkte adgang til visse værktøjer og delprogrammer som findes der. Hvis du vil bruge din egen installationsmappe, skal du fortælle det til configure med flaget : ~/kde3src/tdevelop> ./configure --prefix=(hvor-din-kde3-er) Der er et problem hvis du gør det. Du skal give mulighed for at &tdevelop; har adgang til nødvendige værktøjer og delprogrammer i &kde;'s mappe. (Du kan stadigvæk bruge det integrerede udviklingsmiljø uden at gøre det, men med meget begrænsede funktioner.) Du skal bruge en skal, og følgende kommando skal køres inden du kan starte &tdevelop; fra skallen. Husk at bruge flertal: Det er KDEDIRS, ikke blot KDEDIR) ~> export KDEDIRS=/usr/local/kde:/opt/kde3 ~> kbuildsycoca (Start nu &tdevelop;:) ~> tdevelop KDEDIRS miljøvariablen skal sættes til listen af aktive &kde; mapper på dit system. Vi bruger /usr/local/kde:/opt/kde3 blot som et eksempel. Mappen /usr/local/kde kan for eksempel indeholde en ufuldstændig udgave af &kde; som du kompilerede til fejlretningsformål og mappen /opt/kde3 kunne derudover indeholder standardudgaven af &kde; fra din distribution der bruges til hverdagsarbejde. I en tcsh-skal skal du indstille miljøvariablerne ved at bruge: ~> setenv KDEDIRS /usr/local/kde:/opt/kde3 Kommandoen kbuildsycoca (byg systemkontrolcache) søger efter biblioteker og gemmer deres sted og version i en cache, så &tdevelop; kan finde dem. Problemet er at det tager mærkbart med tid—og skal køres hver gang du bruger skallen til at starte &tdevelop; med en anden installationsmappe end standardmappen. Du vil kunne indtaste ovenstående kommando i et skalscript for at reducere anstrengelserne med at indtaste det. (Du vil også kunne indtaste linjerne i filen .bashrc eller .cshrc, men det er ikke ønskværdigt fordi så køres kbuildsycoca hver gang du bruger skallen.) Kommandoen kbuildsycoca kører ikke for systemadministratoren. Du skal kalde den som en anden bruger. (Men det er ikke en særlig god idé at udvikle som systemadministrator!) Hvordan man får fat i programmeringsgrænsefladen for &tdevelop; API &tdevelop; &tdevelop; API kompilering &tdevelop; API configure &tdevelop; API Programmeringsgrænsefladen, Application Program Interface på engelsk, ofte forkortet til API, er i virkeligheden en følge af beskrivelser (&ie; kaldmodeller) som et program bruger for at få adgang til operativsystem og andre tjenester. I vort tilfælde er en mere omfattende definition dog blevet anvendt. Programmeringsgrænsefladen for et &kde;- eller &Qt;-program er en abstraktion af klasser og metodegrænseflader, en oversigt som kan bruges som opslagsbog for navigation i kildekoden. Der er en version af den seneste programmeringsgrænseflade på KDevelops hjemmeside. Den opdateres automatisk hvert døgn så at du kan følge med. Desværre bruges denne version bedst kun til at læse via internettet. Du kan ligesågodt bygge din egen dokumentation af programmeringsgrænsefladen fra kildekoden for &tdevelop;. For at gøre det, skal du fortælle automake systemet hvor KDELIBS API findes på dit. Dette opnås med det særlige flag til configure-kommandoen når du forbereder at kompilere &tdevelop;'s kildekode: ~/kde3src/tdevelop> ./configure --(flag-som-sædvanligt) \ --with-tdelibsdoxy-dir=$KDEDIR/share/doc/HTML/en/tdelibs-apidocs (make erstatter den globale $KDEDIR med den egentlige &kde;-mappe). Udfør derefter kommandoen make som sædvanligt. Efter at det integrerede udviklingsmiljø &tdevelop; er bygget, har du mulighed for også at bygge programmeringsgrænsefladen. For at gøre det skal du skrive: ~/kde3src/tdevelop> make apidocs Dette bygger en Doxyfile i basismappen for &tdevelop;, som derefter behandles af programmet doxygen for at oprette en hel del .html-filer for programmeringsgrænsefladen. Når den ganske lange byggeproces for programmeringsgrænsefladen til sidst er klar, skal du installere programmeringsgrænsefladen præcis som du skal installere selve det integrerede udviklingsmiljø &tdevelop;. Få rettigheder som systemadministrator om nødvendigt med: ~/kde3src/tdevelop> su og angive systemadministratorens kodeord. Installér derefter dokumentationsfilerne: ~/kde3src/tdevelop> make install-apidox Når dette er gjort, informerer make dig om mappen hvor du til sidst kan kigge på indholdet i dokumentationen for programmeringsgrænsefladen. Bemærk adressen, eftersom du kan bruge den fra &konqueror; samt inde i &tdevelop;, hvis du har indstillet den egne kildekode for &tdevelop; som projektet at arbejde med. Du vil mest sandsynligt se en masse advarsler og/eller fejlmeddelelser under API byggekørslen for Doxygen. Bedst at ignorere dem, de er kun af interesse for &tdevelop;-udviklerne. Hvis API-generingen nogensinde bliver færdig, så vil .html API-filerne kunne bruges.