Difference between revisions of "Trinity desktop environment faq"

From Studiosg
Jump to navigationJump to search
(Aggiunto domande e risposte relative alla compilazione di TDE)
(Aggiunto domande e risposte inerenti l'ordine di compilazione ed i pacchetti di TDE)
Line 165: Line 165:
 
=== Perchè la Directory ''/tmp/build/'' È Vuota ? ===
 
=== Perchè la Directory ''/tmp/build/'' È Vuota ? ===
 
I file temporanei vengono cancellati una volta terminata la compilazione di ogni pacchetto per risparmiare spazio sul disco altrimenti il valore suggerito di 1 Gb non basterebbe.
 
I file temporanei vengono cancellati una volta terminata la compilazione di ogni pacchetto per risparmiare spazio sul disco altrimenti il valore suggerito di 1 Gb non basterebbe.
 +
 +
=== Quale È l'Ordine di Compilazione dei Pacchetti ? ===
 +
L'ordine di compilazione suggerito dagli sviluppatori è reperibile nelle [https://wiki.trinitydesktop.org/How_to_Build_TDE_Core_Modules#Suggested_Build_Order pagine del progetto]. L'ordine adottato dal build tree è:
 +
* '''Prerequisiti'''
 +
** tqt3
 +
** tqtinterface
 +
** arts
 +
** dbus-tqt
 +
** dbus-1-tqt
 +
** tqca
 +
** tqca-tls
 +
** libart-lgpl
 +
** libcaldav
 +
** libcarddav
 +
** sip4-tqt
 +
* '''Pacchetti base'''
 +
** tdelibs
 +
** tdebase
 +
* '''Prerequisiti per Python'''
 +
** tqscintilla
 +
** python-tqt
 +
* '''Librerie per Python'''
 +
** python-trinity
 +
** pytdeextensions
 +
* '''Ambiente di base'''
 +
** tdebindings
 +
** tdeaccessibility
 +
** tdeutils
 +
** tdemultimedia
 +
** tdenetwork
 +
** tdeadmin
 +
** tdeartwork
 +
** tdegames
 +
** tdetoys
 +
** tdeedu
 +
** tdegraphics
 +
** tdepim
 +
** tdesdk
 +
** tdevelop
 +
** tdeaddons
 +
** tdewebdev
 +
* '''Pacchetti di localizzazione''' (Solo se esplicitamente abilitati)
 +
* '''Librerie opzionali'''
 +
** mlt
 +
** mlt++
 +
** libtqt-perl
 +
** libtdeldap
 +
** libkexiv2
 +
** libkdcraw
 +
** libkipi
 +
** libksquirrel
 +
** kipi-plugins
 +
 +
=== Vengono Compilati Tutti i Pacchetti di TDE ? ===
 +
Praticamente si.
 +
 +
=== Vengono Compilati Tutti i Prerequisiti ? ===
 +
Tutti tranne '''avahi-tqt''', escluso perchè Slackware non comprende un pacchetto di '''avahi'''.
 +
 +
=== Vengono Compilati Tutti i Pacchetti Base ? ===
 +
Si, tutti.
 +
 +
=== Vengono Compilate Tutte le Librerie Opzionali e le Espansioni ? ===
 +
Si, tutte.
 +
 +
=== Vengono Compilate Tutte le Applicazioni ? ===
 +
No, praticamente nessuna. TDE include decine di applicazioni, ma io non ne uso praticamente nessuna perciò non ho mai provato a compilarle.
 +
 +
=== Hai Mai Provato a Compilare Qualcuna delle Applicazioni ? ===
 +
In passato sono riuscito a compilare '''k3b''', '''krename''' e '''ktorrent'''. Non ho però dati aggiornati in merito.
 +
 +
=== Dove Vengono Salvati i Pacchetti Compilati ? ===
 +
Una volta compilati i pacchetti vengono salvati nella directory ''/tmp'' dal build tree.
  
  

Revision as of 11:59, 17 November 2017

Benvenuti nella pagina Wiki di Simone Giustetti.


Lingue: English - Italiano


TDE - Domande Frequenti

Compilare i pacchetti di installazione di TDE per Slackware Linux è un'operazione lunga e irta di ostacoli se sottovalutata. Le maggiori difficoltà consistono nel numero di pacchetti, nelle dipendenze sia interne che esterne degli stessi, nell'ordine di compilazione ed installazione e in altri fattori minori che, se ignorati, possono causare non pochi grattacapi.

Compilo TDE dalla versione 3.5.13 e da un po' di anni metto a disposizione un build tree in grado di generare pacchetti di installazione di tutto l'ambiente di base e delle librerie addizionali. Come anticipato più sopra l'operazione è complicata e spesso mi pervengono richieste di aiuto o domande. Ho deciso di compilare un elenco delle domande più frequenti per facilitare chi desideri compilare la propria versione di TDE.

Cos'è un Build Tree ?

Si tratta di un insieme di script di compilazione raggruppati perchè sono collegati tra loro e servono per produrre pacchetti per un programma o un ambiente complesso. TDE ad esempio è costituito da decine di pacchetti che non è possibile compilare singolarmente perchè alcuni ne richiedono altri come dipendenze. I progetti molto strutturati usano uno script principale, che ha il compito di impostare le variabili globali di configurazione ed invocare quelli per i singoli pacchetti nell'ordine corretto. Gli script sono raccolti e distribuiti in un unico archivio perchè singolarmente sono inutili. Il build tree di TDE contiene tutto il necessario per compilare l'ambiente grafico nella sua interezza impostando pochi parametri di configurazione e lanciando un unico script.

Come Funziona il Build Tree di TDE ?

Le istruzioni in breve per usare gli script sono:

  • Scaricare l'archivio contente il build tree su una macchina su cui sia installato Slackware Linux.
  • Decomprimere l'archivio in una directory quale /usr/src/tde.
  • Scaricare gli archivi contenenti il codice sorgente di TDE.
  • Spostare gli archivi scaricati nelle rispettive directory ad esempio tdebase-R14.0.4.tar.bz2 in /usr/src/tde/base/tdebase/.
  • Modificare il file di configurazione TDE.options impostando l'architettura per cui sono destinati i pacchetti: i486, x86_64 o arm.
  • Lanciare lo script principale: sh /usr/src/tde/tde_build_script/bin/TDE.SlackBuild.
  • Attendere che la compilazione termini con il messaggio: "TDE full build successfully concluded".

Per maggiori dettagli si invita alla lettura degli articoli reperibili nel presente sito.

Quale Livello di Automatismo Garantisce il Build Tree ?

Gli script sono stati progettati per compilare nel corretto ordine ed installare tutti i pacchetti base, i prerequisiti e le librerie addizionali di TDE. Salvo errori, dovrebbe essere sufficiente lanciare lo script per ritrovarsi con un'installazione completa e funzionante di Trinity Desktop Environment quando avrà finito di girare.

Dove posso scaricarlo ?

La più recente versione del Trinity Desktop Environment disponibile al momento di scrivere la presente FAQ è 14.0.4 ed il relativo build tree può essere scaricato dal collegamento: TDE 14.0.4 Build Tree . In passato ho reso disponibili script di compilazione sia per l'intero ambiente grafico che per singoli pacchetti. Il build tree per la versione 14.0.1 di TDE può essere scaricato dal collegamento: TDE 14.0.1 Build Tree . Per versioni più datate ancora dovrete spulciare gli articoli relativi a TDE reperibili tra le pagine del sito.

Su Quale Architettura È Stato Testato il Build Tree ?

Utilizzo abitualmente il build tree per compilare il Trinity Desktop Environment ed alcune estensioni per architettura ARM, i486 e AMD64. Le macchine ARM utilizzate sono alcuni Raspberry Pi 2 e 3.

Funziona su Architettura ARM ?

Si.

Funziona su Architettura i486, i586 ?

Si.

Funziona su Architettura AMD64, x86_64 ?

Si.

Funziona per Sistemi Multi-Libreria ?

Si, ma produce solo i pacchetti a 64 bit. Non ho mai studiato quali pacchetti di compatibilità a 32 bit servano. Presumo tqt3, tqtinterface, arts e le altre librerie incluse nei prerequisiti, ma non posso fornire informazioni di prima mano in merito. Gli interessati dovranno sperimentare qual configurazione sia meglio per loro.

Quali Pacchetti Usi per il Multi-Libreria ?

Utilizzo i pacchetti messi a disposizione da Eric Hameleers (Alien BOB). Eric è un membro del gruppo che sviluppa Slackware ed i sui pacchetti seppur non inclusi nei rilasci ufficiali sono aggiornati regolarmente. Per maggiori dettagli potete consultare la pagina seguente . I pacchetti multi-libreria possono essere scaricati dal seguente sito .

Esistono Dipendenze per TDE ?

Si esistono un certo numero di dipendenze. Un elenco sufficientemente esaustivo è reperibile nella documentazione di TDE. All'elenco si aggiungono alcune dipendenze non proprio ovvie ed altre specifiche per Slackware Linux. Tra le dipendenze specifiche per Slackware:

  • Avahi: Opzionale. Le istruzioni e gli script per compilarlo sono disponibili nel sito SlackBuilds.org.
  • Imlib: Una libreria grafica necessaria per compilare tdegraphics. Slackware non include pi` un pacchetto di imlib, ma patch e script di compilazione sono reperibili nel sito SlackBuilds.org.
  • Libical: Richiesta per aggiungere il supporto iCal a tdepim. Un pacchetto aggiorntoè incluso nell'ultimo rilascio di Slackware.

Quali Linguaggi Supporta tdebindings ?

Il Trinity Desktop Environment è sviluppato in C++, ma include librerie di collegamento ad altri linguaggi di programmazione che consentono di creare applicazioni con il linguaggio preferito. Tdebindings è il pacchetto di TDE che contiene le librerie di collegamento per i linguaggi di programmazione. Tra i linguaggi supportati figurano:

  • Java.
  • Javascript.
  • Perl.
  • Python.
  • Ruby.

È Possibile Sviluppare Applicazioni in Java ?

Si. È necessario compilare il pacchetto tdebindings abilitando il supporto per il linguaggio Java. Lo script SlackBuild di compilazione incluso nel build tree abilita automaticamente Java se rileva un JDK installato sul sistema.

Quale Versione di Java È Supportata ?

Dipende dall'architettura. TDE installato su piattaforme Intel o AMD supporta sia JDK 7 che 8. Su piattaforma ARM invece è supportato JDK 7 per SlackwareARM fino alla versione 14.2 mentre la versione Current richiede JDK 8.

Come Si Installa un JDK ?

Non è questo il luogo per istruzioni dettagliate che sono reperibili nella documentazione di Slackware. Script Slackbuild pronti per l'uso sono come al solito reperibili nel sito www.slackbuilds.org.

Come Si Installa OpenJDK ?

Anche questo argomento esula dagli scopi della FAQ del build tree di TDE. Si consiglia di far riferimento alla documentazione di Slackware. I pacchetti messi a disposizione da Eric Hameleers (Alien BOB) sono reperibili nel suo repository. Esistono inoltre diversi script di compilazione reperibili presso il sito www.slackbuilds.org.

È Possibile Sviluppare Applicazioni in Perl ?

Si. È necessario compilare il pacchetto tdebindings abilitando il supporto per tale linguaggio. Lo script SlackBuild di compilazione incluso nel build tree abilita automaticamente Perl se rileva che il linguaggio sia installato sul sistema.

Quale Versione di Perl È Supportata ?

L'ultimo rilascio ufficiale di Slackware Linux include Perl 5.22 che sembra funzionare perfettamente con TDE.

È Possibile Sviluppare Applicazioni in Python ?

Si. È necessario compilare il pacchetto tdebindings abilitando il supporto per tale linguaggio. Lo script SlackBuild di compilazione incluso nel build tree abilita automaticamente Python se rileva che i pacchetti siano installati sul sistema.

Quale Versione di Python È Supportata ?

L'ultimo rilascio ufficiale di Slackware Linux include Python 2.7. Tdebindings sembra funzionare perfettamente con Python 2.7.

È Supportato Python 3 ?

Lo ignoro. Per installare Python 3 è possibile utilizzare gli script reperibili nel sito www.slackbuilds.org. Non essendo un programmatore Python non ho mai provato a compilare tdebindings con Python 3.

È Possibile Sviluppare Applicazioni in Ruby ?

Si. È necessario compilare il pacchetto tdebindings abilitando il supporto per tale linguaggio. Lo script SlackBuild di compilazione incluso nel build tree abilita automaticamente Ruby se rileva che il linguaggio sia installato sul sistema.

Quale Versione di Ruby È Supportata ?

L'ultimo rilascio ufficiale di Slackware Linux include Ruby 2.2 che sembra funzionare perfettamente con TDE.

Perchè il Build Tree Non Compila i Pacchetti di Localizzazione ?

I pacchetti di localizzazione richiedono molto tempo per essere compilati e occupano molto spazio su disco. Bisogna anche considerare che poche persone installano una cinquantina di lingue sul proprio sistema; la maggior parte degli utenti installa la lingua predefinita di TDE, l'inglese, e la propria lingua madre. Di conseguenza il build tree non compila automaticamente tutti i pacchetti di localizzazione: le istruzioni sono commentate e devono essere abilitate modificando lo script principale /usr/src/tde/tde_build_script/bin/TDE.SlackBuild.

Come si Installano i Pacchetti di Localizzazione ?

La compilazione e l'installazione dei pacchetti di localizzazione viene eseguita automaticamente dal build tree se vengono abilitate le istruzioni necessarie nello script principale: /usr/src/tde/tde_build_script/bin/TDE.SlackBuild. Per abilitare la compilazione dei pacchetti di localizzazione è necessario:

  1. Copiare chi archivi contenenti il codice sorgente nella directory /usr/src/tde/base/tde-i18n/.
  2. Rimuovere il commento dalla riga 320 dello script /usr/src/tde/tde_build_script/bin/TDE.SlackBuild come nell'esempio.
   SOURCE_SUBDIR=\".\"" > ./local.options
      # Build package
   #   bash ./${PKG}.SlackBuild
      if [[ 0 = ${?} ]]; then

Deve essere modificato in:

   SOURCE_SUBDIR=\".\"" > ./local.options
      # Build package
      bash ./${PKG}.SlackBuild
      if [[ 0 = ${?} ]]; then

Mi Serve Solo 1 Pacchetto di Localizzazione. Come Posso Modificare gli Script in Modo Che Compilino Solo Quello ?

Esistono 2 modi per far si che venga compilato un solo pacchetto di localizzazione. Il primo è anche il più semplice e consiste nel popolare la directory /usr/src/tde/base/tde-i18n/ con solo l'archivio contente la lingua desiderata. Il secondo metodo consiste nel modificare lo script /usr/src/tde/tde_build_script/bin/TDE.SlackBuild ed è sicuramente più complicato.

Supponendo di voler modificare definitivamente lo script si potrebbe modificare il ciclo for con cui vengono selezionati gli archivi rimuovendo l'asterisco. Ad esempio modificando la riga:

   for LC_PACK_PATH in ${TMP}/tmp-${PRGNAM}/${DIR_SRC}/${PRGNAM}-* ; do

in

   for LC_PACK_PATH in ${TMP}/tmp-${PRGNAM}/${DIR_SRC}/${PRGNAM}-nds ; do

verrà compilato sempre e solo il pacchetto di localizzazione tde-i18n-nds mentre tutti gli altri verrebbero ignorati.

Se invece si volesse rendere parametrico lo script bisognerebbe rimpiazzare l'asterisco con una variabile popolata attraverso la riga di comando oppure il file delle opzioni. Ad esempio utilizzando la variabile LOCALE come segue:

   for LC_PACK_PATH in ${TMP}/tmp-${PRGNAM}/${DIR_SRC}/${PRGNAM}-${LOCALE} ; do

ed aggiungendo le seguenti righe all'inizio dello script:

   LOCALE=${1}
   # Check for command line parameter.
   if [[ -z ${LOCALE} ]]; then
      echo "(EE) missing locale."
      exit -1
   fi

la variabile verrebbe popolata con il contenuto del primo parametro passato allo script /usr/src/tde/tde_build_script/bin/TDE.SlackBuild al lancio. Per compilare il pacchetto tde-i18n-nds ad esempio bisognerebbe invocare lo script come segue:

  sh /usr/src/tde/tde_build_script/bin/TDE.SlackBuild tde-i18n-nds

Dove Viene Installato TDE ?

Tutti i pacchetti che costituiscono TDE sono compilati in modo da essere installati nella directory /opt/trinity. In questo modo è possibile installare e far convivere TDE con KDE.

È Possibile Cambiare la Directory di Installazione ?

Si, modificando il file delle opzioni TDE.options. Il parametro da aggiornare è PREFIX. Ad esempio per installare TDE nella directory /usr/bin bisogna impostare il parametro come segue:

   PREFIX="/usr/bin"

Quanto Spazio sul Disco Occupa TDE ?

L'installazione dei pacchetti base, dei prerequisiti e delle librerie addizionali occupa circa:

  • 700 Mb per la versione a 32 bit.
  • 750 Mb per la versione a 64 bit.

Sono esclusi i pacchetti di localizzazione e le applicazioni.

In Quale Directory Viene compilato TDE ?

L'intero build tree genera i file temporanei nella directory /tmp/build/ mentre i pacchetti di installazione sono salvati nella directory /tmp/.

Quanto Spazio sul Disco Serve per Compilare Tutto ?

L'ambiente di base richiede circa 1 Gb di spazio sul disco per i file temporanei generati durante la compilazione dei pacchetti più grossi a cui si aggiungono 300 Mb per i pacchetti finiti. I pacchetti di localizzazione sono invece più onerosi. Compilarli tutti ha richiesto 4 Gb di spazio libero nella directory /tmp/. Non posso fornire informazioni sulle applicazioni e le estensioni perchè non ho mai provato a compilarle tutte.

Perchè la Directory /tmp/build/ È Vuota ?

I file temporanei vengono cancellati una volta terminata la compilazione di ogni pacchetto per risparmiare spazio sul disco altrimenti il valore suggerito di 1 Gb non basterebbe.

Quale È l'Ordine di Compilazione dei Pacchetti ?

L'ordine di compilazione suggerito dagli sviluppatori è reperibile nelle pagine del progetto. L'ordine adottato dal build tree è:

  • Prerequisiti
    • tqt3
    • tqtinterface
    • arts
    • dbus-tqt
    • dbus-1-tqt
    • tqca
    • tqca-tls
    • libart-lgpl
    • libcaldav
    • libcarddav
    • sip4-tqt
  • Pacchetti base
    • tdelibs
    • tdebase
  • Prerequisiti per Python
    • tqscintilla
    • python-tqt
  • Librerie per Python
    • python-trinity
    • pytdeextensions
  • Ambiente di base
    • tdebindings
    • tdeaccessibility
    • tdeutils
    • tdemultimedia
    • tdenetwork
    • tdeadmin
    • tdeartwork
    • tdegames
    • tdetoys
    • tdeedu
    • tdegraphics
    • tdepim
    • tdesdk
    • tdevelop
    • tdeaddons
    • tdewebdev
  • Pacchetti di localizzazione (Solo se esplicitamente abilitati)
  • Librerie opzionali
    • mlt
    • mlt++
    • libtqt-perl
    • libtdeldap
    • libkexiv2
    • libkdcraw
    • libkipi
    • libksquirrel
    • kipi-plugins

Vengono Compilati Tutti i Pacchetti di TDE ?

Praticamente si.

Vengono Compilati Tutti i Prerequisiti ?

Tutti tranne avahi-tqt, escluso perchè Slackware non comprende un pacchetto di avahi.

Vengono Compilati Tutti i Pacchetti Base ?

Si, tutti.

Vengono Compilate Tutte le Librerie Opzionali e le Espansioni ?

Si, tutte.

Vengono Compilate Tutte le Applicazioni ?

No, praticamente nessuna. TDE include decine di applicazioni, ma io non ne uso praticamente nessuna perciò non ho mai provato a compilarle.

Hai Mai Provato a Compilare Qualcuna delle Applicazioni ?

In passato sono riuscito a compilare k3b, krename e ktorrent. Non ho però dati aggiornati in merito.

Dove Vengono Salvati i Pacchetti Compilati ?

Una volta compilati i pacchetti vengono salvati nella directory /tmp dal build tree.


Per commenti, consigli, domande inviate una e-mail all'indirizzo studiosg [chiocciola] giustetti [punto] net.


Link esterni





Lingue: English - Italiano