<appendix id="kdevelop-install">

<appendixinfo>
  <authorgroup>
    <author
><firstname
>Bernd</firstname
> <surname
>Pol</surname
></author>
    <author
><firstname
>Anne-Marie</firstname
><surname
>Mahfouf</surname
></author>
    <!-- ROLES_OF_TRANSLATORS -->
  </authorgroup>
</appendixinfo>

<title
>Installare &kdevelop;</title>

<indexterm zone="kdevelop-install">
  <primary
>installazione</primary
></indexterm>

<para
>In questo capitolo saranno illustrate tutte le fasi per la compilazione e l'installazione di &kdevelop;: <itemizedlist>
  <listitem
><para
><link linkend="kdevelop-install-howto"
>Come ottenere &kdevelop;</link
> illustra lo scaricamento dei sorgenti più recenti di &kdevelop; con svn. </para
></listitem>
  <listitem
><para
><link linkend="requirements"
>I requisiti di &kdevelop;</link
> che comprendono i programmi e le librerie che devono essere installate per compilare con successo l'IDEA. </para
></listitem>
  <listitem
><para
><link linkend="compile-and-install"
>Compilazione e installazione di &kdevelop;</link
> che spiega la procedura di compilazione e installazione. </para
></listitem>
  <listitem
><para
><link linkend="make-api"
>Come ottenere la documentazione API di &kdevelop;</link
> indica cosa è un'API e come ottenere un tale strumento per navigare attraverso i sorgenti di &kdevelop;. </para
></listitem>
</itemizedlist>
</para>

<sect1 id="kdevelop-install-howto">
<title
>Come ottenere &kdevelop;</title>

<indexterm zone="kdevelop-install-howto">
  <primary
>ottenere &kdevelop;</primary
></indexterm>
<indexterm zone="kdevelop-install-howto">
  <primary
>&kdevelop;</primary>
  <secondary
>ottenere</secondary
></indexterm>

<para
>&kdevelop; è disponibile in formato binario in molte distribuzioni &Linux; come SuSE, RedHat e altre. Questi file sono impacchettati in formati comodi da installare, principalmente RPM. Per installarli seguire le istruzioni standard fornite con la propria distribuzione. </para>
<para
>Si possono anche ottenere i sorgenti di &kdevelop;, compilarli ed installarli personalmente. Possono essere trovati attraverso la home page del progetto <ulink url="http://www.kdevelop.org"
> http://www.kdevelop.org</ulink
> o attraverso il <ulink url="http://download.kde.org"
>sito ftp di &kde;</ulink
>. </para>

<sect2 id="howto-svn">
<title
>Scaricare gli snapshot giornalieri di &kdevelop; con svn</title>

<indexterm zone="howto-svn">
  <primary
>svn</primary
></indexterm>

<para
>Se si vuole rimanere sempre aggiornati con lo sviluppo corrente,sono disponibili gli snapshot attraverso il deposito anonymous svn.</para>
<para
>Il nome del modulo è <emphasis
>kdevelop</emphasis
> at <filename class="directory"
> svn co svn://anonsvn.kde.org/home/kde/branches/KDE/3.5/kdevelop</filename
>. </para>

<sect3 id="howto-svn-co">
<title
>Controllo iniziale svn</title>

<indexterm zone="howto-svn-co">
  <primary
>checkout</primary
></indexterm>
<indexterm zone="howto-svn-co">
  <primary
>&kdevelop;</primary>
  <secondary
>svn</secondary>
  <tertiary
>checkout</tertiary
></indexterm>

<para
>Per ottenere una versione iniziale di &kdevelop; la si deve scaricare (questa è la cosiddetta operazione di <emphasis
>checkout</emphasis
>) da un anonymous svn. Seguire questa procedura. </para>

<note
><para
>In seguito si presumerà che si voglia installare la propria copia di &kdevelop; nella sottodirectory <filename class="directory"
>kde3src</filename
> della propria directory home <filename class="directory"
>~</filename
>. </para
></note>

<informalexample
><simplelist>
  <member
># Creare la directory di destinazione, se necessario: </member>
  <member
><prompt
>~&gt; </prompt
> <userinput
>mkdir kde3src</userinput
> </member>
  <member
><prompt
>~&gt; </prompt
> <userinput
>cd kde3src</userinput
> </member>
  <member
><prompt
>~/kde3src&gt; </prompt
> <userinput
>svn co svn://anonsvn.kde.org/home/kde/branches/KDE/3.5/kdevelop</userinput
> </member>
  <member
><prompt
>~/kde3src&gt; </prompt
> <userinput
>cd kdevelop</userinput
> </member>
</simplelist
></informalexample>

<note
><para
>Una volta effettuato il checkout della versione di &kdevelop; si può stare al passo con i cambiamenti usando la procedura di aggiornamento che sarà mostrata nella prossima sezione.  </para
></note>

<important
><para
>Mantenere basso il carico sul server. <emphasis
>Si prega di non effettuare il checkout tutte le volte che si vuole aggiornare &kdevelop;!</emphasis
>: usare invece il comando svn update. </para
></important>

<para
>Ora si può compilare la propria versione di &kdevelop; come mostrato nel capitolo <link linkend="compile-and-install"
>Compilazione e installazione di &kdevelop;</link
>. </para>

</sect3
> <!-- howto-svn-co -->

<sect3 id="howto-svn-up">
<title
>Mantenere la propria copia svn aggiornata</title>

<indexterm zone="howto-svn-up">
  <primary
>aggiornamento</primary
></indexterm>
<indexterm zone="howto-svn-up">
  <primary
>&kdevelop;</primary>
  <secondary
>svn</secondary>
  <tertiary
>aggiornamento</tertiary
></indexterm>

<para
>Dopo aver fatto il checkout (e compilato con successo) &kdevelop; da svn come mostrato prima, può essere mantenuto aggiornato in modo da installare tutte le patch. Seguire questa procedura. (Anche in questo caso si presume che si abbia la propria copia di &kdevelop; nella directory <filename class="directory"
>kde3src</filename
>).  </para>
<para
>Notare il comando <command
>up</command
> (= <emphasis
>update</emphasis
>) al posto del comando <command
>co</command
> (che indica <emphasis
>checkout</emphasis
>). </para>

<informalexample
><simplelist>
  <member
><prompt
>~&gt; </prompt
> <userinput
>cd kde3src</userinput
> </member>
  <member
><prompt
>~/kde3src&gt; </prompt
> <userinput
>cd kdevelop</userinput
> </member>
  <member
><prompt
>~/kde3src&gt; </prompt
> <userinput
>svn up</userinput
> </member>
</simplelist
></informalexample>

<note
><para
>Tenere sotto controllo i messaggi che sono prodotti da svn durante la sequenza di aggiornamento. Da essi dipende l'esatta sequenza di compilazione.  </para
></note>

<para
>Ora si può compilare una nuova versione di &kdevelop; come mostrato nel capitolo <link linkend="compile-and-install-make-svn"
>Considerazioni speciali per la compilazione svn</link
>. </para>
</sect3
> <!-- howto-svn-up -->

</sect2
> <!-- howto-svn -->

</sect1
> <!-- howto -->

<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->

<sect1 id="requirements">
<title
>Requisiti di &kdevelop;</title>

<indexterm zone="requirements">
  <primary
>requisiti</primary
></indexterm>
<indexterm zone="requirements">
  <primary
>&kdevelop;</primary>
  <secondary
>requisiti</secondary
></indexterm>
<indexterm zone="requirements">
  <primary
>GNU</primary>
  <secondary
>requisiti</secondary
></indexterm>

<para
>Per compilare con successo e usare &kdevelop; sono necessari i seguenti programmi e librerie. Sono disponibili per la maggior parte delle distribuzioni e facili da installare. </para>

<itemizedlist>
<title
>Requisiti:</title>
  <listitem>
  <para
><application
>gcc/g++</application
> &ge; 2.95.3 (o compatibile) <indexterm>
      <primary
>gcc</primary>
      <secondary
>requisiti</secondary
></indexterm>
    <indexterm>
      <primary
>g++</primary>
      <secondary
>requisiti</secondary
></indexterm>
  </para>
  <para
>Disponibile nel sito <ulink url="gcc.gnu.org"
>gcc.gnu.org</ulink
> </para>
  </listitem>
  <listitem>
  <para
><application
>&GNU; make</application
> (o compatibile) <indexterm>
      <primary
>make</primary>
      <secondary
>requisiti</secondary
></indexterm>
  </para>
  <para
>Disponibile nel sito <ulink url="www.gnu.org/software/make"
>www.gnu.org/software/make</ulink
> </para>
  </listitem>
  <listitem>
  <para
>&perl; 5.004 (o maggiore) <indexterm>
      <primary
>Perl</primary>
      <secondary
>requisiti</secondary
></indexterm>
  </para>
  <para
>Disponibile nel sito <ulink url="www.perl.com"
>www.perl.com</ulink
> </para>
  </listitem>
  <listitem>
  <para
><application
>autoconf</application
> &ge; 2.52 (o maggiore) <indexterm>
      <primary
>autoconf</primary>
      <secondary
>requisiti</secondary
></indexterm>
  </para>
  <para
>Disponibile nel sito <ulink url="www.gnu.org/software/autoconf"
>www.gnu.org/software/autoconf</ulink
> </para>
  </listitem>
  <listitem>
  <para
><application
>automake</application
> &ge; 1.6 (o maggiore) <indexterm>
      <primary
>automake</primary>
      <secondary
>requisiti</secondary
></indexterm>
  </para>
  <para
>Disponibile nel sito <ulink url="www.gnu.org/software/automake"
>www.gnu.org/software/automake</ulink
> </para>
  </listitem>
  <listitem>
  <para
><application
>flex</application
> 2.5.4 (o maggiore) <indexterm>
      <primary
>flex</primary>
      <secondary
>requisiti</secondary
></indexterm>
  </para>
  <para
>Disponibile nel sito <ulink url="www.gnu.org/software/flex"
>www.gnu.org/software/flex</ulink
> </para>
  </listitem>
  <listitem>
  <para
>&Qt; &ge; 3.3.0 (o maggiore) <indexterm>
      <primary
>Qt</primary>
      <secondary
>requisiti</secondary
></indexterm>
  </para>
  <para
>Disponibile nel sito <ulink url="www.trolltech.com/products/qt"
>www.trolltech.com/products/qt</ulink
> </para>
  </listitem>
  <listitem>
  <para
><application
>KDE</application
> &ge; 3.4.0 (o maggiore) <indexterm>
      <primary
>KDE</primary>
      <secondary
>requisiti</secondary
></indexterm>
  </para>
  <para
>Disponibile nel sito <ulink url="www.kde.org"
>www.kde.org</ulink
> </para>
  </listitem>
</itemizedlist>

<itemizedlist>
<title
>Opzionali:</title>
  <listitem
><para
>Lo strumento di navigazione dei sorgenti <emphasis
><application
>ctags</application
></emphasis
>, scaricabile da <ulink url="http://ctags.sourceforge.net"
>http://ctags.sourceforge.net</ulink
>, che fornisce un veloce accesso alle dichiarazioni e alle definizioni attraverso dei semplici clic su un nome nell'editor. <indexterm
><primary
>ctags</primary
></indexterm>
  </para
></listitem>
  <listitem
><para
><emphasis
><application
>dot</application
></emphasis
>, un compilatore di linguaggio grafico <ulink url="http://www.graphviz.org"
>http:/www.graphviz.org</ulink
>. Se si vuole avere una visualizzazione grafica delle relazioni tra classi (altamente raccomandata), è necessario utilizzare questo strumento insieme a &doxygen;. <indexterm
><primary
>dot</primary
></indexterm>
  </para
></listitem>
  <listitem
><para
>Lo strumento per la documentazione <emphasis
>&doxygen;</emphasis
> <ulink url="http://www.doxygen.org"
> http://www.doxygen.org</ulink
>, necessario se si vuole generare una potente e precisa documentazione API dei propri progetti. <indexterm
><primary
>doxygen</primary
></indexterm>
  </para
></listitem>
  <listitem
><para
><emphasis
><application
>valgrind</application
></emphasis
> <ulink url="http://developer.kde.org/~sewardj/"
>http://developer.kde.org/~sewardj/</ulink
> aiuta a trovare i problemi di gestione della memoria nelle proprie applicazioni. <indexterm
><primary
>valgrind</primary
></indexterm>
  </para
></listitem>
  <listitem
><para
><emphasis
><application
>svn</application
></emphasis
> dal sito <ulink url="http://subversion.tigris.org/"
>http://subversion.tigris.org/</ulink
> se si vuole usare il versioning system svn. <indexterm>
      <primary
>svn</primary>
      <secondary
>requisiti</secondary
></indexterm>
  </para
></listitem>
  <listitem
><para
>Altri compilatori e/o strumenti nel caso si voglia sviluppare in un altro linguaggio/piattaforma diverso da C++/&kde; oppure usare qualche funzione speciale. </para
></listitem>
</itemizedlist>

<note>
<orderedlist>
  <listitem>
    <para
>Si può aggirare il vincolo per &autoconf; &ge; 2.52 e &automake; &ge; 1.6 così: rimuovere la directory <filename class="directory"
>admin</filename
> nella directory di installazione di &kdevelop; e scrivere <indexterm>
      <primary
>autoconf</primary>
      <secondary
>aggirare vincolo versione</secondary
></indexterm>
    <indexterm>
      <primary
>automake</primary>
      <secondary
>aggirare vincolo versione</secondary
></indexterm>
    <indexterm>
      <primary
>versione necessaria</primary>
      <secondary
>aggirare autoconf/automake</secondary
></indexterm>
    </para>
    <informalexample
><simplelist>
      <member
><prompt
>(directory-di-kdevelop)&gt; </prompt
> <userinput
>ln -s $KDEDIR/share/apps/kdelibs/admin admin</userinput
></member>
    </simplelist
></informalexample>
    <para
>alla console. Questo farà sì che &kdevelop; usi le impostazioni standard nella directory <filename class="directory"
>admin</filename
> di &kde;. </para>
  </listitem>
  <listitem>
    <para
>Si presti attenzione a <emphasis
>non mescolare versioni diverse di &Qt;</emphasis
>. Collegare sempre &kdevelop; alla stessa versione delle librerie &Qt; con cui sono state compilate le librerie &kde;, altrimenti probabilmente si otterranno comportamenti <emphasis
>anomali</emphasis
>.  </para>
  </listitem>
</orderedlist>
</note>

</sect1
> <!-- requirements -->

<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->

<sect1 id="compile-and-install">
<title
>Compilazione e installazione di &kdevelop;</title>

<indexterm zone="compile-and-install">
  <primary
>&kdevelop;</primary>
  <secondary
>compilazione</secondary
></indexterm>
<indexterm zone="compile-and-install">
  <primary
>&kdevelop;</primary>
  <secondary
>installazione</secondary
></indexterm>

<para
>Quando tutti i requisiti sono stati soddisfatti, si può compilare e installare &kdevelop;. Questa appendice esaminerà le fasi di questa procedura. </para>
<itemizedlist>
  <listitem
><para
>Nelle <link linkend="compile-and-install-preliminaries"
>fasi preliminari</link
> viene spiegato come impostare le variabili d'ambiente appropriate. </para
></listitem>
  <listitem
><para
>La <link linkend="compile-and-install-make"
>compilazione di &kdevelop;</link
> comprende lo scaricamento dei sorgenti da svn e la procedura di compilazione e installazione. </para
></listitem>
  <listitem
><para
>Le <link linkend="compile-and-install-options"
>opzioni di configure</link
> permettono di eseguire &kdevelop; anche se viene installato in una posizione diversa dalla directory di &kde;. </para
></listitem>
</itemizedlist>

<sect2 id="compile-and-install-preliminaries">
<title
>Fasi preliminari</title>

<indexterm zone="compile-and-install-preliminaries">
  <primary
>preliminari</primary>
  <secondary
>Installazione di &kdevelop;</secondary
></indexterm>
<indexterm zone="compile-and-install-preliminaries">
  <primary
>KDEDIR</primary
></indexterm>
<indexterm zone="compile-and-install-preliminaries">
  <primary
>QTDIR</primary
></indexterm>
<indexterm zone="compile-and-install-preliminaries">
  <primary
>LD_LIBRARY_PATH</primary
></indexterm>
<indexterm zone="compile-and-install-preliminaries">
  <primary
>LIBRARY_PATH</primary
></indexterm>
<indexterm zone="compile-and-install-preliminaries">
  <primary
>PATH</primary
></indexterm>

<para
>Prima di addentrarsi nella sequenza di compilazione è necessario assicurarsi che siano disponibili tutte le librerie e gli strumenti per make. Per realizzarlo è necessario che alcune variabili d'ambiente siano impostate correttamente. Le procedura dipende dalla shell usata. </para>

<note
><para
>Per evitare di scrivere tutti i comandi necessari ad impostare le variabili d'ambiente ogni volta che si compila, dovrebbero essere inseriti nel proprio file <filename
>.bashrc</filename
> o <filename
>.csgrc</filename
>. In questo modo le variabili d'ambiente verranno impostate correttamente ogni volta che viene avviata la shell. </para
></note>

<sect3 id="compile-and-install-preliminaries-bash">
<title
>Impostare le variabili per la shell bash</title>

<para
>Se si usa la shell bash aggiungere le linee seguenti: </para>

<informalexample
><simplelist>
  <member
><userinput
>export KDEDIR=</userinput
>(percorso dell'installazione di KDE)</member>
  <member
><userinput
>export QTDIR=</userinput
>(percorso della libreria Qt)</member>
  <member
><userinput
>export LD_LIBRARY_PATH=$QTDIR/lib:$KDEDIR/lib:$LD_LIBRARY_PATH</userinput
></member>
  <member
><userinput
>export LIBRARY_PATH=$QTDIR/lib:$KDEDIR/lib:$LIBRARY_PATH</userinput
></member>
  <member
><userinput
>export PATH=$QTDIR/bin:$KDEDIR/bin:$PATH</userinput
></member>
</simplelist
></informalexample>
<para
></para>

</sect3
> <!-- compile-and-install-preliminaries-bash -->

<sect3 id="compile-and-install-preliminaries-tcsh">
<title
>Impostare le variabili per la shell tcsh</title>

<para
>Se si usa la shell tcsh aggiungere le linee seguenti: </para>
<para>
<informalexample
><simplelist>
  <member
><userinput
>setenv KDEDIR </userinput
>(percorso dell'installazione di KDE)</member>
  <member
><userinput
>setenv QTDIR </userinput
>(percorso della libreria Qt)</member>
  <member
><userinput
>setenv LD_LIBRARY_PATH=$QTDIR/lib:$KDEDIR/lib:$LD_LIBRARY_PATH</userinput
></member>
  <member
><userinput
>setenv LIBRARY_PATH $QTDIR/lib:$KDEDIR/lib:$LIBRARY_PATH</userinput
></member>
  <member
><userinput
>setenv PATH $QTDIR/bin:$KDEDIR/bin:$PATH</userinput
></member>
</simplelist
></informalexample>
</para>

</sect3
> <!-- compile-and-install-preliminaries-tcs -->

</sect2
> <!-- compile-and-install-preliminaries -->

<sect2 id="compile-and-install-make">
<title
>Compilare &kdevelop;</title>

<indexterm zone="compile-and-install-make">
  <primary
>make</primary>
  <secondary
>Installazione di &kdevelop;</secondary
></indexterm>
<indexterm zone="compile-and-install-make">
  <primary
>compilare</primary>
  <secondary
>&kdevelop;</secondary
></indexterm>

<note
><para
>Si presume che in seguito la propria copia dei sorgenti di &kdevelop; sarà messa nella directory <filename class="directory"
>~/kde3src/kdevelop</filename
>. </para
></note>

<sect3 id="compile-and-install-make-svn">
<title
>Considerazioni speciali per la compilazione svn</title>

<para
>Se si usa uno snapshot da svn;, le fasi iniziali della compilazione dipendono dal fatto che si sia eseguito di un checkout completo oppure un aggiornamento dei soli sorgenti. </para>

<variablelist>
<varlistentry>
<term id="compile-and-install-make-svn-co"
>Dopo un checkout svn</term>
<listitem>
<para
>Si dovrebbe <emphasis
>inizializzare il sistema make</emphasis
> dopo un recente checkout. Questo è vero anche ogni volta che si deve ricominciare da zero. Scrivere: </para>

<informalexample
><simplelist
><member
><prompt
>~/kde3src/kdevelop&gt; </prompt
> <userinput
>make -f admin/Makefile.common svn-clean</userinput
> </member
></simplelist
></informalexample>
<para
>e dopo seguire <emphasis
>tutte le fasi seguenti</emphasis
>. </para>
<note
><para
>Se si deve ricostruire qualche file danneggiato o mancante, potrebbe essere necessario avere accesso al deposito svn. </para
></note>
<important
><para
>Il comando <command
>svn-clean</command
> <emphasis
>rimuoverà tutti i file</emphasis
> non presenti in svn della directory! Assicurarsi di effettuare un backup di tutte le informazioni importanti prima di inviare questo comando. </para
></important>
</listitem>
</varlistentry>

<varlistentry>
<term id="compile-and-install-make-svn-up"
>Dopo un aggiornamento svn</term>
<listitem>
<para
>La fase seguente dipende dall'output della sequenza di aggiornamento di svn. Se si riceve qualcosa di simile (notare il contrassegno U o P a sinistra, che indica il cambiamento del file): </para>

<screen
>U /percorso_directory/Makefile.am
</screen>
<para
>oppure se si è eseguito un checkout completo si deve scrivere: </para>
<informalexample
><simplelist
><member
><prompt
>~/kde3src/kdevelop&gt; </prompt
> <userinput
>make -f Makefile.svn</userinput
> </member
></simplelist
></informalexample>
<para
>prima di procedere con <emphasis
>tutte le fasi successive</emphasis
>. </para>
</listitem>
</varlistentry>
</variablelist>
</sect3
> <!-- compile-and-install-make-svn -->

<sect3 id="compile-and-install-make-basic">
<title
>Sequenza dei principali comandi <command
>make</command
></title>

<para
>Una volta che il sistema make è impostato si deve decidere che tipo di &kdevelop; si vuole usare. Questo viene fatto nella seguente fase di compilazione che costruisce i <filename
>Makefile</filename
> usati dal comando <command
>make</command
>. </para>

<note
><para
>Se si vuole che &kdevelop; venga installato nella directory di default di &kde; si può tralasciare l'opzione <option
>--prefix</option
> nelle seguenti linee di comando di <command
>configure</command
>. Vedere il capitolo <link linkend="compile-and-install-options"
>Alcune note sulle opzioni di configure</link
>. </para
></note>

<variablelist>
<varlistentry>
<term
>Versione compilata con il supporto per il debug</term>
<listitem>
<para
>Se si vuole tenere traccia di cosa succede a &kdevelop; a runtime si potrebbe compilare una versione con il supporto per il debug, indicandolo a <command
>configure</command
> così: </para>

<informalexample
><simplelist
><member
><prompt
>~/kde3src/kdevelop&gt; </prompt
> <userinput
>./configure --enable-debug=full --prefix=</userinput
>(dove-si-trova-kde3) </member
></simplelist
></informalexample>
</listitem>
</varlistentry>

<varlistentry>
<term
>Una versione compilata release</term>
<listitem>
<para
>Se si desidera solo usare &kdevelop; così com'è sarà sufficiente una versione release (più piccola e più veloce). É la versione di default.</para>

<informalexample
><simplelist
><member
><prompt
>~/kde3src/kdevelop&gt; </prompt
> <userinput
>./configure --prefix=</userinput
>(dove-si-trova-kde3) </member
></simplelist
></informalexample>

<note>
<para
>Se si vuole costruire la propria <link linkend="make-api"
>documentazione API</link
> per &kdevelop;, si deve includere anche un'altra opzione nel comando <command
>configure</command
>: </para>
<informalexample
><simplelist>
  <member
><prompt
>~/kde3src/kdevelop&gt; </prompt
> <userinput
>./configure --</userinput
>(opzioni come sopra) <userinput
>\</userinput
></member
> <member
><userinput
>--with-kdelibsdoxy-dir=$KDEDIR/share/doc/HTML/en/kdelibs-apidocs</userinput
></member>
</simplelist
></informalexample>
</note>
</listitem>
</varlistentry>

<varlistentry>
<term
>Compilare e installare &kdevelop;</term>
<listitem>
<para
><command
>configure</command
> controllerà il sistema e costruirà un file <filename
>Makefile</filename
> in base a quello che rileverà. Il comando <command
>make</command
> per default userà questo <filename
>Makefile</filename
>. Quindi </para>

<informalexample
><simplelist
><member
><prompt
>~/kde3src/kdevelop&gt; </prompt
> <userinput
>make</userinput
> </member
></simplelist
></informalexample>
<para
>È sufficiente. A questo punto, se necessario, ottenere i diritti dell'utente root con: </para>
<informalexample
><simplelist
><member
><prompt
>~/kde3src/kdevelop&gt; </prompt
> <userinput
>su</userinput
> </member
></simplelist
></informalexample>
<para
>e inserire la password di root. Quindi installare l'applicazione: </para>
<informalexample
><simplelist
><member
><prompt
>~/kde3src/kdevelop&gt; </prompt
> <userinput
>make install</userinput
> </member
></simplelist
></informalexample>
<para
>Questo è tutto. Se &kdevelop; è stato installato nella directory di default di &kde; si può avviare l'IDE. In caso contrario devono essere eseguiti ulteriori comandi come mostrato nella sezione <link linkend="compile-and-install-options-dir"
>Directory di installazione non di default</link
>. </para>

<note>
  <para
>In realtà vengono generalmente installate tre applicazioni relative a &kdevelop;: </para>
  <itemizedlist>
    <listitem
><para
>L'IDE di &kdevelop; &mdash; è l'applicazione che si usa normalmente per lavorare.</para
></listitem>
    <listitem
><para
>L'Assistente di &kdevelop; &mdash; racchiude in una applicazione separata tutti gli strumenti per la documentazione di &kdevelop;. È utile quando si vuole consultare qualche argomento relativo alla programmazione senza dover avviare l'IDE.</para
></listitem>
    <listitem
><para
>Il Designer di &kdevelop; &mdash; espande il Designer &Qt; con elementi specifici di &kde; e si integra facilmente con l'IDE di &kdevelop;.</para
></listitem>
  </itemizedlist>
</note>
</listitem>
</varlistentry>
</variablelist>


</sect3
> <!-- compile-and-install-make-basic -->
</sect2
> <!-- compile-and-install-make -->


<sect2 id="compile-and-install-options">
<title
>Alcune note sulle opzioni di <command
>configure</command
></title>

<sect3 id="compile-and-install-options-dir">
<title
>Directory di installazione non di default</title>

<indexterm zone="compile-and-install-options-dir">
  <primary
>&kdevelop;</primary>
  <secondary
>installazione</secondary>
  <tertiary
>directory non di default</tertiary
></indexterm>
<indexterm zone="compile-and-install-options-dir">
  <primary
>directory non di default</primary
></indexterm>
<indexterm zone="compile-and-install-options-dir">
  <primary
>KDEDIRS</primary
></indexterm>
<indexterm zone="compile-and-install-options-dir">
  <primary
>kbuildsycoca</primary
></indexterm>

<para
>Per default <command
>configure</command
> predispone l'installazione dell'<acronym
>IDE</acronym
> nella directory di default di &kde;. Questo è necessario perché &kdevelop; accede direttamente ad alcuni strumenti e componenti che risiedono lì. Se si vuole usare una propria directory di installazione, lo si deve indicare a <command
>configure</command
> attraverso l'opzione <option
>--prefix</option
>: </para>
<informalexample
><simplelist
><member
><prompt
>~/kde3src/kdevelop&gt; </prompt
> <userinput
>./configure --prefix=</userinput
>(dove-si-trova-kde3) </member
></simplelist
></informalexample>
<para
>Come controindicazione si deve fornire a &kdevelop; un sistema per accedere agli strumenti e ai componenti necessari situati nella directory di &kde;. (Si può sempre usare l'IDE senza farlo, ma le sue capacità saranno molto limitate).  </para>
<para
>Accedere alla shell ed eseguire i seguenti comandi prima di avviare &kdevelop; al prompt. </para>

<note
><para
><emphasis
>Assicurarsi di usare il plurale:</emphasis
> è <quote
><envar
>KDEDIRS</envar
></quote
>, non <quote
><envar
>KDEDIR</envar
></quote
> </para
></note>

<informalexample
><simplelist>
  <member
><prompt
>~&gt; </prompt
> <userinput
>export KDEDIRS=/usr/local/kde:/opt/kde3</userinput
> </member>
  <member
><prompt
>~&gt; </prompt
> <userinput
>kbuildsycoca</userinput
> </member>
  <member
>(Ora avviare &kdevelop;:) </member>
  <member
><prompt
>~&gt; </prompt
> <userinput
>kdevelop</userinput
> </member>
</simplelist
></informalexample>

<note
><simplelist>
  <member
>La variabile d'ambiente <envar
>KDEDIRS</envar
> deve essere impostata con <emphasis
>l'elenco delle directory &kde;</emphasis
> del proprio sistema. Sono state usate le directory </member>
  <member
><filename class="directory"
>/usr/local/kde</filename
>:<filename class="directory"
>/opt/kde3</filename
></member>
  <member
>solo come esempio.</member>
  <member
>La directory <filename class="directory"
>/usr/local/kde</filename
> potrebbe ad esempio contenere una versione incompleta di &kde; compilata per effettuare il debug, e la directory <filename class="directory"
>/opt/kde3</filename
> potrebbe contenere la versione &kde; standard della propria distribuzione usata per il lavoro di tutti i giorni.</member>
</simplelist
></note>

<para
>Nella shell tcsh si deve impostare la variabile d'ambiente così: </para>
<informalexample
><simplelist
><member
><prompt
>~&gt; </prompt
> <userinput
>setenv KDEDIRS /usr/local/kde:/opt/kde3</userinput
> </member
></simplelist
></informalexample>
<para
>Il comando <command
>kbuildsycoca</command
> (<quote
>build system control cache</quote
>) cerca le librerie e conserva in cache le loro posizioni e versioni in modo che &kdevelop; le possa trovare. Questa operazione può portare via parecchio tempo - e deve essere fatto ogni volta che si avvia la shell. Si potrebbero mettere i comandi sopra in uno script della shell per risparmiare fatica. </para>
<para
>(Non è consigliabile inserire questi comandi nel file <filename
>.bashrc</filename
> o <filename
>.cshrc</filename
>, poiché <command
>kbuildsycoca</command
> verrebbe eseguito ogni volta che si chiama la shell). </para>

<note
><para
>Il comando <command
>kbuildsycoca</command
> non viene eseguito come root, quindi deve essere avviato da un utente non root. (Dopo tutto non è <emphasis
>affatto una buona idea</emphasis
> sviluppare applicazioni come utente root!) </para
></note>
</sect3
> <!-- compile-and-install-options-dir -->

<!-- ### put a sect3 with other configuration options here -->

</sect2
> <!-- compile-and-install-options -->

</sect1
> <!-- compile-and-install -->

<sect1 id="make-api">
<title
>Come ottenere la documentazione API di &kdevelop;</title>

<indexterm zone="make-api">
  <primary
>API</primary>
  <secondary
>&kdevelop;</secondary
></indexterm>
<indexterm zone="make-api">
  <primary
>&kdevelop;</primary>
  <secondary
>API</secondary
></indexterm>
<indexterm zone="make-api">
  <primary
>compilare</primary>
  <secondary
>&kdevelop;</secondary>
  <tertiary
>API</tertiary
></indexterm>
<indexterm zone="make-api">
  <primary
>configure</primary>
  <secondary
>&kdevelop; API</secondary
></indexterm>

<para
>API è l'abbreviazione di <quote
>Application Program Interface</quote
>. In realtà una interfaccia di programmazione delle applicazioni è una serie di descrizioni (cioè un insieme di chiamate) con le quali una applicazione accede al sistema operativo e ad altri servizi. In questo contesto tuttavia viene adottata una definizione più ampia: le API di una applicazione &kde; o &Qt; sono un riassunto delle interfacce delle classi e dei metodi, un sommario da usare come dizionario per navigare tra i sorgenti. </para>
<para
>L'ultima versione delle API è presente nel <ulink url="http://http://www.kdevelop.org/HEAD/doc/api/html/index.html"
>sito web di KDevelop</ulink
>. Sono automaticamente aggiornate ogni 24 ore.  </para>
<para
>Se non si possiede sempre un accesso a Internet si può anche costruire la documentazione API dai sorgenti di &kdevelop;. Per farlo si deve indicare al sistema automake la posizione delle API di KDELIBS nel proprio sistema. Questo può essere fatto con la speciale opzione <option
>--with-kdelibsdoxy-dir</option
> del comando <command
>configure</command
> quando si stanno compilando i sorgenti di &kdevelop;: </para>

<informalexample
><simplelist>
  <member
><prompt
>~/kde3src/kdevelop&gt; </prompt
> <userinput
>./configure --</userinput
>(solite-opzioni)<userinput
> \</userinput
> </member>
  <member>
    <userinput
>--with-kdelibsdoxy-dir=$KDEDIR/share/doc/HTML/en/kdelibs-apidocs</userinput>
  </member>
</simplelist
></informalexample>

<para
>(<command
>make</command
> sostituirà <varname
>$KDEDIR</varname
> con l'attuale directory di &kde;). Poi chiamare il comando <command
>make</command
> <link linkend="compile-and-install-make-basic"
>come al solito</link
>. Dopo che l'IDE &kdevelop; è stato compilato si avrà l'opzione di compilare anche le API. Per questo si deve scrivere </para>
<informalexample
><simplelist
><member
><prompt
>~/kde3src/kdevelop&gt; </prompt
> <userinput
>make apidocs</userinput
> </member
></simplelist
></informalexample>

<para
>Questo costruirà nella directory di base di &kdevelop; un <filename
>Doxyfile</filename
> che verrà successivamente elaborato dall'applicazione <application
>Doxygen</application
> per costruire una serie di file <filename
>.html</filename
>. Quando il processo della costruzione delle API giunge alla fine (su un sistema lento potrebbe durare più di un'ora) dovranno essere installate, in modo simile all'installazione di &kdevelop;. Se necessario ottenere i diritti di superutente con </para>

<informalexample
><simplelist
><member
><prompt
>~/kde3src/kdevelop&gt; </prompt
> <userinput
>su</userinput
> </member
></simplelist
></informalexample>

<para
>e inserire la password di root. Quindi installare i file API con </para>

<informalexample
><simplelist
><member
><prompt
>~/kde3src/kdevelop&gt; </prompt
> <userinput
>make install-apidox</userinput
> </member
></simplelist
></informalexample>

<para
>Una volta fatto, <command
>make</command
> indicherà la directory dove si potranno vedere i contenuti della documentazione delle API. Prendere nota dell'indirizzo, in modo da poterlo usare con &konqueror; e all'interno di &kdevelop;. </para>

<note
><para
>Si vedranno molto probabilmente molti avvertimenti e/o messaggi d'errore durante la costruzione delle API effettuata con <application
>Doxygen</application
>. Conviene ignorarli, essendo di interesse solo per gli sviluppatori di &kdevelop;. Se la generazione delle API giunge alla fine con successo, si potranno usare i file <filename
>.html</filename
>. </para
></note>

</sect1
> <!-- make-api -->

</appendix
> <!-- kdevelop-install -->
