Komodo / KomodoEdit
Questo readme spiega come iniziare a costruire, usare e sviluppare con il sorgente di base di Komodo Edit.
Sebbene il sorgente principale di Komodo Edit sia ospitato sotto questo repository, potresti anche voler controllare i repository dei singoli componenti/addon sottohttps://github.com/Komodo nel caso tu voglia contribuire solo ad uno specifico componente. Questo ti farà risparmiare un po’ di tempo e fastidio perché non dovrai costruire l’intero progetto.
Indice
- Screenshot
- Download
- Feedback
- Costruire Komodo
- Costruire su Windows
- Costruire su Mac
- Costruire su Linux
- Costruire con Docker
- Costruire Complicazioni
Screenshot
Download
È possibile scaricare Komodo Edit qui.
Feedback
Ci sono diversi modi per entrare in contatto con gli sviluppatori di Komodo:
Github: https://github.com/Komodo/KomodoEdit
Forum: http://forum.komodoide.com/
Bug Tracker: https://github.com/Komodo/KomodoEdit/issues
IRC: irc://irc.mozilla.org/#komodo
Liste di posta elettronica: komodo-discuss & komodo-beta & komodo-announce
Costruire Komodo
Nota che questi sono passi semplificati del processo di costruzione, per una guida più approfondita controlla (obsoleto) BUILD.txt.
Costruire su Windows
- Prequisiti
- Passi di costruzione
Prerequisiti
-
Python >=2.7 (ma non ancora Python 3.x). Puoi installare ActivePython da qui.
-
Visual C++ 11.0 (aka Visual Studio 2012) e tutti i Platform SDK per costruire Mozilla con vc11 come descritto qui.
-
Installa la versione 1.9.0 del pacchetto “MozillaBuild-$ver.exe” nella directory predefinita (cioè “C:\mozilla-build”).
- Una volta installato rimuovi le directory wget e hg
- Scarica la versione 2.2.0 e installala in una directory temporanea, poi copia la directory wget dalla 2.2 alla 1.9 install directory
-
Installa il Perl <= 5.22
-
Installa Mercurial
Vedi http://developer.mozilla.org/en/docs/Windows_Build_Prerequisites per maggiori dettagli sui prerequisiti di compilazione di Windows. Comunque, seguire gli abovesteps dovrebbe essere sufficiente per far costruire Komodo.
Passi per la costruzione
-
Checkout Komodo Edit:
git clone https://github.com/Komodo/KomodoEdit.git
-
Utilizzando la riga di comando, entra nella tua directory di checkout ed esegui:
cd mozilla setenv-moz-msvc11.bat python build.py configure -k 11.10 python build.py distclean all
Questo configurerà e costruirà Mozilla e può richiedere da 30 minuti a diverse ore per essere completato (dipende dalle tue specifiche). Per la maggior parte delle macchine moderne dovrebbe essere circa un’ora.
-
Dopo che mozilla è stato costruito con successo, torna alla directory principale del repo e costruisci komodo:
cd .. set PATH=util\black;%PATH% bk configure -V 11.10.0-devel # --without-binary-dbgp-clients bk build
Questo dovrebbe richiedere molto meno tempo che costruire Mozilla.
-
Una volta che la compilazione è stata completata puoi semplicemente eseguire Komodo eseguendo
bk run
Dopo aver fatto qualsiasi modifica al sorgente dovrai nuovamente eseguire bk build
, o semplicemente bk build && bk run
per tornare rapidamente in Komodo. Le build successive dovrebbero essere molto più veloci, dato che molti dei dati compilati sono memorizzati nella cache.
Costruire su Mac
- Prequisiti Mac
- Passi per la costruzione
Prerequisiti Mac
-
Python >=2.7 (ma non ancora Python 3.x). Puoi installare ActivePython da qui.
Se preferisci le build di Python da python.org dovrebbero essere sufficienti.
-
Xcode 6.4 (SDK 10.9 & 10.10). Per 8.0 vedi sotto. Puoi ottenere la versione 6.4 dal sito di download degli sviluppatori.
-
MacOSX10.10.sdk o precedente
-
IDE SOLO SDK 10.8 per Code Intel. Può essere trovato in Xcode 5.1.1
-
Se hai/avete bisogno di altre versioni di Xcode installate allora potete usare
xcode-select
per cambiare l’Xcode attivo:$ xcode-select -s /Path/To/Xcode\ 6.4.app/
-
Xcode Command Line Tools.
Aprire le preferenze di Xcode, poi nella scheda Download, selezionare e installare il Command Line Tools.
-
MacPorts. (Nota: anche Fink può funzionare, ma la maggior parte dei test di compilazione e delle istruzioni è fatta con MacPorts.)
-
autoconf v2.13. Una volta che hai installato MacPorts devi solo eseguire
sudo port install autoconf213
-
assicurarti di usare clang o gcc 4.2 (o superiore)
Vedi http://developer.mozilla.org/en/docs/Mac_OS_X_Build_Prerequisitesfor maggiori dettagli sui prerequisiti di compilazione di Mac OS X. Tuttavia, seguire i passi sopra descritti dovrebbe essere sufficiente per far costruire Komodo.
Prerequisiti di Xcode 8
Officialmente non supportiamo Xcode 8, tuttavia è possibile costruire Komodounder Xcode 8 usando un nuovo passo extra.
- Copia gli SDK 10.8 e 10.9 da una vecchia installazione di XCode, dovrebbero essere in:Xcode.app/Contents/Developer/Platforms/macOSX.platform/
- Imposta MinimumSDKVersion a 10.9 in Xcode.app/Contents/Developer/Platforms/macOSX.platform/Info.plist
- Assicurati di usare ccache 3.1 (versioni successive si romperanno)
- Configura Mozilla con
--options=disable-webrtc
Passi di costruzione
-
Checkout Komodo Edit:
git clone https://github.com/Komodo/KomodoEdit.git
-
Utilizzando il terminale, entra nella tua directory di checkout ed esegui:
1) cd komodo/mozilla 2) python build.py configure -k 10.10 3) python build.py all or python build.py distclean all (to delete and re-download Mozilla again)
Questo configurerà e costruirà Mozilla e può richiedere da 30 minuti a diverse ore per essere completato (dipende dalle tue specifiche). Per la maggior parte delle macchine moderne dovrebbe essere circa un’ora.
** Costruire con GCC 5.0 e superiori **
Se stai usando GCC 5.0, la compilazione potrebbe fallire. Se lo fa, ci sono modifiche che devono essere fatte a due file. Tuttavia, se stai eseguendo una build pulita per la prima volta, devi permettere che questa parte della build fallisca per prima. Questo perché i file sono nella parte di Mozilla che deve essere scaricata per prima.
Questi file devono essere cambiati:
- /KomodoEdit/mozilla/build/moz3500-ko9.10/mozilla/configure.in
@@ -7509,8 +7509,6 @@ eval $(CXX="$CXX" HOST_CXX="$HOST_CXX" $PYTHON -m mozbuild.configure.libstdcxx) AC_SUBST(MOZ_LIBSTDCXX_TARGET_VERSION) AC_SUBST(MOZ_LIBSTDCXX_HOST_VERSION)+ CXXFLAGS="$CXXFLAGS -D_GLIBCXX_USE_CXX11_ABI=0"+ HOST_CXXFLAGS="$HOST_CXXFLAGS -D_GLIBCXX_USE_CXX11_ABI=0"fi
Si veda il bug #1153109 nel database dei bug di Mozilla per maggiori informazioni.
- /KomodoEdit/mozilla/build/moz3500-ko9.10/mozilla/dom/ipc/Blob.cpp
@@ -3874,7 +3874,7 @@// Make sure we can't overflow.if (NS_WARN_IF(UINT64_MAX - aLength < aStart)) { ASSERT_UNLESS_FUZZING();- return nullptr;+ return false;}ErrorResult errorResult;@@ -3883,7 +3883,7 @@if (NS_WARN_IF(aStart + aLength > blobLength)) { ASSERT_UNLESS_FUZZING();- return nullptr;+ return false;}
Si veda il porting a GCC 5 per maggiori informazioni.
-
Dopo che mozilla è stato costruito con successo, torna alla directory principale del repo e costruisci komodo:
cd .. export PATH=`pwd`/util/black:$PATH # Komodo's "bk" build tool git submodule update --init git submodule update --remote bk configure -V 10.10.0-devel bk build
Questo dovrebbe richiedere molto meno tempo che costruire Mozilla.
-
Una volta che la compilazione è stata completata puoi semplicemente eseguire Komodo eseguendo
bk run
Dopo aver fatto qualsiasi modifica al sorgente dovrai nuovamente eseguire bk build
, o semplicemente bk build && bk run
per tornare rapidamente in Komodo. Le build successive dovrebbero essere molto più veloci in quanto molti dei dati compilati sono memorizzati nella cache.
Costruire su Linux
Istruzioni Linux
Costruire con Docker
Il modo più semplice per iniziare è usare la nostra immagine Docker, questa ti fornirà una build di Komodo basata su Ubuntu 12.04.
Dopo aver clonato il repository basta navigare in {repo}/util/docker
e fare il checkout ./docklet --help
Per usare l’immagine docker è necessario, naturalmente, avere Docker installato e avere l’inoltro X11 abilitato nel proprio client SSH (dovrebbe funzionare di default sulla maggior parte delle distro Linux).
Preparare l’immagine Docker
- Costruire l’immagine docker:
./util/docker/docklet image
- Avvia il tuo contenitore:
./util/docker/docklet start
- SSH nel tuo contenitore per iniziare a lavorare:
./util/docker/docklet ssh
I tuoi file di progetto saranno montati a /komodo/dev
NOTA – se stai aggiornando da una versione precedente in cui i tuoi file di progetto erano a /root/komodo
dovrai fissare i permessi sul tuo progetto Komodo e sulle cartelle dei profili. Cioè:
chown -R <my-username>:<my-group> <my-project-location>chown -R <my-username>:<my-group> ~/.komodoide
Avrai anche bisogno di rifare la tua compilazione (distclean mozilla e komodo).
Passi di costruzione
Una volta che la tua immagine è preparata puoi seguire i passi di costruzione per linux come descritto sopra. Li eseguirai dal contenitore docker, quindi fai uno ssh in esso usando il comando sopra e poi esegui i comandi da /komodo/dev
Running
Una volta che la costruzione è completa esci dal contenitore (exit
) e puoi quindi eseguire Komodo con
./util/docker/docklet run
Per ricostruire Komodo (dopo aver fatto delle modifiche) ed eseguirlo di nuovo puoi usare
./util/docker/docklet build run
Se le tue modifiche non vengono riflesse potresti aver bisogno di pulire la tua build, per farlo usa
./util/docker/docklet clean
O per fare tutto in una volta (pulire, costruire ed eseguire)
./util/docker/docklet clean build run
Complicazioni nella costruzione
Se si verifica qualche errore durante la tua prima costruzione e non è ovvio come risolvere il problema da solo, per favore fai riferimento alla sezione Feedback su come contattarci.
Nota che se sorgono complicazioni nella costruzione dopo che hai aggiornato il tuo repo con le ultime modifiche potresti aver bisogno di cancellare la tua cache locale perché potrebbe essere in conflitto con le nuove modifiche, per fare questo esegui bk distclean
prima di eseguire i tuoi passi di costruzione.
Pro-Tips
Costruisci un singolo pezzo
A volte bk build
è troppo e bk build quick
non è abbastanza. Se bk build quick
non sembra raccogliere le tue modifiche, prova a puntare bk build
sul pezzo in questione.
Esempio
bk build build/release/modules/places #this will build the places module only
NOTA: Non fare affidamento su questo metodo poiché bk build quick
è più veloce e in alcuni casi fa alcuni passi che l’esempio precedente non eseguirà. Usatelo come ultimo tentativo prima di provare bk distclean && bk build
.