In Evidenza
Il Contest del giorno su iSpazioMac
Contest
macicon120_502305145
Vinci 5 copie di Cultura Generale con iSpazioMac!
Partecipa al Contest lasciando un commento e vinci quest'applicazione
Ultime Notizie

Growl 1.3.1: compiliamolo a partire dai codici sorgenti, con Xcode e Terminale! | Guide iSpazioMac



Riprendiamo a parlare di Growl, comodo e flessibile sistema di notifiche per OS X. Arrivato all’ultima versione e ottenuta la compatibilità con Lion, è finito sul Mac App Store ad una cifra accettabile. L’alternativa che vi avevamo proposto era quella di installare un fork della versione 1.2, stabile e comoda. Ma oggi vogliamo azzardare qualcosa in più.

Poco dopo la stesura di quell’articolo, abbiamo notato come, sebbene la 1.3 ufficiale fosse a pagamento, gli sviluppatori avessero rilasciato gratuitamente il codice sorgente, come hanno sempre fatto. A detta di alcuni utenti, peraltro, l’ultima versione, la 1.3.1, pare non soffrire dei problemi che forse affliggevano la 1.3. Per cui, con un po’ di pazienza, siamo riusciti a compilare correttamente l’applicazione a partire dal codice sorgente, gratuito, ed eseguire il tutto sul nostro Mac, a costo zero.

Partiamo con la guida.

Premessa: chi vi scrive non è un programmatore. Non ho esperienza in compilazione. Questa guida potrebbe avere passaggi inutili e/o scomodi. Il metodo che andrò a spiegare sotto, da me testato, è frutto di diverse prove e ricerche in rete da molteplici fonti. Per quanto infatti siano presenti alcune guide, in inglese, queste danno alcune istruzioni che, a conti fatti, paiono errate, o almeno non mi hanno fatto arrivare alla compilazione dell’applicazione finale. Il procedimento che spiegherò è stato testato personalmente con successo. 

Cosa ci occorre:

  • Xcode all’ultima versione, scaricato, installato e avviato almeno una volta, per sicurezza. È gratuito ed è disponibile sul Mac App Store.
  • Mercurial, tool che estende i comandi impartibili via Terminale. Potete scaricarlo da qui.
  • Mac OS X Lion installato.
  • Tanta pazienza e una buona dimestichezza con il Terminale. La procedura non sarà breve.

Andiamo ad installare per prima cosa l’utilità Mercurial. Il link, fornito sopra ci porta al download del pacchetto. Selezioniamo quello per Lion. Una volta eseguita l’installazione al suo interno, possiamo andare avanti.

Apriamo una finestra del Terminale e digitiamo, uno alla volta, questi comandi, esattamente come sono scritti:

cd /tmp

hg clone https://code.google.com/p/growl/ 

Cosa succede: con “hg clone..” abbiamo copiato tutto il codice sorgente dalla fonte che abbiamo digitato, nella cartella tmp del nostro disco rigido. L’operazione impiegherà un po’ di tempo. Alla fine, il Terminale ci notificherà i files aggiunti.

Lasciamo da parte il terminale, ma non chiudiamolo. Apriamo una finestra del Finder, premiamo CMD+SHIFT+G e digitiamo /tmp.

Cerchiamo la cartella Growl. Al suo interno, cerchiamo la cartella xcconfig e apriamo il file Release.xcconfig. Si aprirà un editor di Xcode. Al suo interno, cancelliamo tutta la riga che recita “CODE_SIGN_IDENTITY = 3rd Party Mac Developer Application: The Growl Project, LLC”. Togliamo gli spazi vuoti in eccesso. Il risultato sarà questo:

Salviamo il documento e torniamo al terminale. Digitiamo questi due comandi.

cd growl
open Growl.xcodeproj

Con l’ultimo comando, abbiamo impartito l’ordine di aprire il file “Growl.xcodeproj”, contenuto in /tmp/growl. A questo punto si aprirà Xcode. Non chiudete ancora il terminale!

Prestate attenzione, adesso, perché su Xcode è facile perdersi. Lo screenshot in basso potrebbe aiutarvi: sul lato sinistro, premiamo su Growl. Verranno mostrati dei parametri a destra. Ora, premiamo sulla scheda Build Settings.

Verranno mostrati altri parametri. La prima cosa che dobbiamo fare è, nell’elenco in mezzo all’applicazione, cliccare sul progetto Growl, con l’icona di un foglio blu. Ora muoviamoci sulla destra, nei parametri. Scorriamo un po’ in basso (stranamente a noi il trackpad qui non rispondeva: abbiamo utilizzato i tasti freccia) e cerchiamo la voce Code Signing Identity. Modifichiamo il parametro scegliendo “Don’t code sign”.

Torniamo all’elenco in mezzo allo schermo e cerchiamo tra i Targets la voce Growl.app. Tra i parametri, interveniamo esattamente come abbiamo fatto poco fa.

Premiamo infine sul tasto Run, in alto a sinistra. In breve tempo dovrebbe comparire la scritta “build succeeded”. Altrimenti, qualcosa non è stato fatto correttamente.

Se fin qui è tutto a posto, chiudiamo Xcode. Ora, torniamo nel Terminale. L’avete lasciato aperto, vero? (altrimenti riapritelo e digitate “cd /tmp/growl”). Digitiamo questi comandi, sempre uno alla volta.

cd release

CONFIGURATION=Release rake build:growl

Ci metterà un po’ di tempo, all’ultimo comando. Quando saremo sicuri di aver finito, dirigiamoci nuovamente nella cartella /tmp/growl con il Finder.

Muoviamoci qui tra queste cartelle: Release > distribution> build > growl > Release.

Date un’occhiata al suo interno: l’applicazione Growl sarà lì, con la sua caratteristica icona a forma di zampa. Non dobbiamo fare altro che copiarla nelle nostre applicazioni ed eseguirla!

Fatto! Per quanto la procedura sia macchinosa, Growl funzionerà correttamente. L’unico neo sarà quello di non poter aggiornare l’applicazione: dalla 1.3, infatti, gli aggiornamenti di Growl vengono gestiti tramite Mac App Store (ma possiamo benissimo utilizzare questa procedura per compilare l’applicazione a partire dai codici sorgenti più aggiornati).

Possiamo ora cancellare la cartella “growl” da /tmp. Ricordiamo a tutti che comprare l’applicazione dal Mac App Store non solo eliminerà tutta la fatica di installarlo in questa maniera, ma sarà anche un contributo per lo sviluppatore a mantenere costanti gli aggiornamenti. Se siete interessati, potete acquistarlo da qui:

Growl (AppStore Link)

Nome:

Growl
3,59

Categoria:

Produttività

Ribadisco che il metodo è abbastanza “agreste”. Sicuramente un esperto di Xcode e compilazioni riuscirà ad arrivarci in meno passaggi e minor fatica. Questo è il metodo da noi utilizzato per ottenere Growl senza problemi, speriamo vi sia stato d’aiuto!

1,792 visite


20 Commenti

  1. Grazie del tutorial, suggerisco di eseguire nel terminale all’inzio questi comandi:
    hg clone https://code.google.com/p/growl/
    cd growl
    hg update maintenance-1.3

    l’ultimo comando rende attivo il ramo di sviluppo relativo alla versione 1.3.3

    Thumb up 5 Thumb down 0

    • Quindi Simone tu consigli di cambiare solo il primo comando a terminale e poi di proseguire seguendo normalmente la guida?

      Grazie

      Thumb up 0 Thumb down 0

      • si esatto, l’unica avvertenza è che il comando `hg update maintenance-1.3` va dato prima di qualsiasi operazione di modifica dei file perché va a cambiare i sorgenti di partenza
        quindi la sequenza sarebbe

        cd /tmp
        hg clone https://code.google.com/p/growl/
        hg update maintenance-1.3

        quindi editing del file Release.xcconfig, aperture del progetto di xcode, ecc… Non ho eseguito tutto il tutorial perché growl lo ho già compilato da un po’, ma più o meno sono le stesse operazioni che avevo fatto tempo fa…

        Ultimo trucco, volendo aprire direttamente la cartella /tmp/growl nel finder senza ricorrerre a command-shift-g basta da termpinale dare il comando `open .` (senza le rirgolette) che appunto apre nel finder la cartella “attuale”.

        Thumb up 1 Thumb down 0

    • Grazie, Simone, ottimo suggerimento ;)

  2. Veramente c’è la versione 1.3.3! Sai dirmi se funziona anche con quest’ ultima?

    Thumb up 0 Thumb down 0

  3. Innanzitutto grazie per la super-guida… “agreste” ;-)
    Domandina veloce: a parte risparmiare un Eurozzo-E-Mezzo, quali vantaggi si hanno nel piazzarsi “questo” Growl rispetto a quello dell’AppStore? Intendo: i commenti sono praticamente tutti negativi su questa versione 1.3 di Growl…

    Thumb up 0 Thumb down 0

    • Nessuno. E’ sempre lo stesso Growl del Mac App Store, semplicemente gli sviluppatori hanno lasciato il codice sorgente opensource (della serie “potete anche ricompilarlo gratis, se ci riuscite!”).
      La guida non è fatta tanto per risparmiare quell’euro e mezzo (figuriamoci! :D) ma più per mettersi alla prova (almeno, per me è stata una bella sfida capire come arrivarci).

      Per quanto ci siano stati dei commenti negativi, è anche possibile che con gli ultimi updates si sia risolto qualcosa. Attualmente sto usando questa versione per vedere come si comporta ;)

  4. con questo comando open Growl.xcodeproj crasha xcode e non posso proseguire…qualche suggerimento?

    Thumb up 0 Thumb down 0

  5. A me la compilazione fallisce perchè manca questo file: “HgRevision.h”

    Sapete qual è il problema?

    Thumb up 0 Thumb down 0

    • devi eseguire lo script sh “generateHgRevision.sh” dal terminale, in modo da creare quel file mancante, e poi poter compilare

      Thumb up 0 Thumb down 0

      • Con il comando “sh generateHgRevision.sh” mi viene restituito questo errore:

        generateHgRevision.sh: line 29: /include/hgRevision.h: Permission denied
        generateHgRevision.sh: line 30: /include/hgRevision.h: Permission denied
        Robs-iMac:growl rhobis$

        Ho provato con il comando “sudo sh generateHgRevision.sh”, ma mi dà un altro errore:

        Non viene data fiducia al file /Users/rhobis/Desktop/growl/.hg/hgrc dall’utente non fidato rhobis, gruppo staff
        Non viene data fiducia al file /Users/rhobis/Desktop/growl/.hg/hgrc dall’utente non fidato rhobis, gruppo staff
        *** Building Growl Revision: 6026

        Thumb up 0 Thumb down 0

    • Ho risolto compilando dal terminale con:

      xcodebuild -project Growl.xcodeproj -target Growl.app -configuration Release

      Thumb up 0 Thumb down 0

  6. Non ho capito cosa si intende per “un po’ di tempo”…
    Sono arrivato a lanciare il comando

    CONFIGURATION=Release rake build:growl

    Ma dopo due ore circa il Terminale non mostra ancora alcun segno di vita, è tale e quale sulla stessa finestra…
    E’ normale o qualcosa è andato storto?

    Ho provato anche a lanciare il comando

    CONFIGURATION=Release rake build:growl

    come suggerito nei commenti ma il risultato è lo stesso…

    Any hint?

    Thumb up 0 Thumb down 0

 

   Commenti




Quick Apps - recensioni veloci delle ultime App per Mac!
quickapp_hover
Icon2.175x175-75
RecordMe
3
quickapp_hover
macicon120_451422073
GooMenu+
27
quickapp_hover
macicon120_419823161
AnyToDMG
quickapp_hover
macicon120_413756578
Mixxx
quickapp_hover
macicon120_402508085
Comic Life 2
quickapp_hover
macicon120_404243625
SketchBook Express

Le ultime Applicazioni aggiornate!

I Partner Esclusivi di iSpazio