Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[Lungo] Compilazione di GnuPG per Win32 con MinGW/MSYS - Tutto ha una fine

7 views
Skip to first unread message

Carlo Luciano Bianco

unread,
Aug 7, 2015, 9:13:15 AM8/7/15
to
Ciao a tutti,

Come dice il subject, ogni cosa ha una fine: incluso il tutorial per
la compilazione nativa di GnuPG per Win32 usando MinGW/MSYS. Infatti
ho preso una decisione: congelare definitivamente la pagina web del
tutorial nello stato in cui è adesso, e non operare più aggiornamenti.
Visto che il tutorial di fatto è nato proprio qui, su questo NG, mi
sembrava giusto che, dopo tutti questi anni, anche la sua fine venisse
annunciata proprio qui.

Le motivazioni alla base di questa decisione sono molteplici.

Il tutorial infatti era nato in un contesto totalmente diverso da
quello odierno. Era appena uscita la versione 1.0.7 di GnuPG, ma non
erano stati rilasciati gli eseguibili per Windows. Si vociferava che
non sarebbero più stati rilasciati eseguibili "ufficiali" per Windows,
e che chi avesse voluto usare GnuPG sotto Windows avrebbe dovuto
ricompilarselo da solo a partire dai sorgenti. Questa operazione non
era affatto banale, la procedura ufficiale prevedeva l'uso di una
macchina Linux e questo, per molte persone, voleva dire dover creare
una partizione ad hoc sul disco rigido (sacrificando una parte
rilevante del poco spazio a disposizione) e installarci stabilmente
Linux. In questo contesto, si era tentata una strada alternativa:
visto che esisteva un porting "minimale" per Windows di GCC (MinGW) e
di alcune utility tipiche del mondo Linux (MSYS), usare queste
versioni per compilare GnuPG direttamente sotto Windows, senza dover
installare ex-novo un intero sistema operativo. Nacque così il
tutorial, che tutto sommato ha assolto così bene il suo scopo da
essere stato per un certo periodo linkato anche dalla home page
ufficiale di GnuPG.

In tutti questi anni, però, le cose sono molto cambiate. Tanto per
cominciare il "pericolo" che si paventava con GnuPG 1.0.7 è rientrato,
e vengono sempre rilasciati gli eseguibili ufficiali per Windows di
tutte le versioni di GnuPG, rendendo la compilazione "casalinga" molto
meno necessaria. Inoltre, il porting di GCC per Windows non è mai
uscito da uno stato di "beta" perenne, con forti limitazioni rispetto
alle corrispondenti versioni per Linux, rendendo tra l'altro
l'installazione e l'uso di MinGW/MSYS non alla portata di tutti. Forse
anche per questo (e per l'ovvia necessità di non complicare il codice
a fronte di un beneficio praticamente nullo), la compilazione nativa
sotto Windows non è mai stata supportata ufficialmente dal team di
GnuPG, che ha continuato a preferire la cross-compilazione da Linux.
Le cose si sono ulteriormente complicate con il rilascio del ramo 2.x
di GnuPG. Tale versione è infatti molto diversa dalla serie 1.x e,
come conseguenza, a causa delle limitazioni del porting di GCC sotto
Windows, la compilazione nativa di GnuPG 2.x semplicemente allo stato
attuale non è possibile (o lo è a prezzo di fatiche assolutamente non
giustificabili). Un aggiornamento del tutorial per supportare GnuPG
2.x non è quindi praticabile.

Inoltre, oggi come oggi, la cross-compilazione da Linux è estremamente
più semplice che in passato. Chiunque può scaricarsi un software per
la creazione di macchine virtuali (tipo Virtualbox), farci girare
dentro un Linux live, compilare GnuPG, e alla fine cancellare del
tutto la macchina virtuale senza sprecare neanche un byte di spazio
disco (anche se al giorno d'oggi, con i dischi che si misurano in
Terabyte, questo non è più un problema). Di fatto, quella che al tempo
era la strada più complessa, motivo per cui era nato il tutorial, oggi
come oggi è decisamente la strada più semplice e immediata.

Quindi, penso che il tutorial ormai abbia assolto al suo compito e che
sia tempo di mandarlo in pensione. La pagina rimarrà online come è
adesso, come testimonianza "storica". La versione del tutorial sarà
"fissata" a "1.0.0 final", e all'inizio vi sarà un breve disclaimer
che riporterà più o meno il contenuto di questo post.

Colgo l'occasione per ringraziare ancora una volta tutti gli amici
che, qui sul NG in primo luogo, ma anche privatamente contattandomi
per e-mail, si sono spesi per dare consigli, suggerimenti, fare test,
ecc., per rendere il tutorial il più possibile semplice, chiaro, ed
efficace, e che sono ricordati nel preambolo del tutorial medesimo.

A presto,
Carlo Luciano

--
Carlo Luciano Bianco \ ICQ UIN: 109517158
______________________/ Home page: <http://clbianco.altervista.org/>
GnuPG 4096 RSAv4 key: \_____________________________________________
UID:0xE361F839--Fingerprint:9516BCF66B8F12E0C3C3154C61788B6DE361F839
0 new messages