MinGW e tutti i derivati del GCC esistono in realtà con l'esclusivo scopo del porting da linux a windows, e più in generale per consentire un approccio multipiattaforma usando come base un singolo front-end. Ma la percentuale di programmatori che realmente necessita di lavorare in tale modo assomiglia al prefisso teleselettivo internazionale della Tanzania: con due o tre zeri davanti.
I comuni mortali, invece, come ripeto sempre, faranno bene ad usare sempre e solo compilatori nativi dell'ambiente mainstream target. E' una questione di:
1) Attitudine al buon ordine mentale. Esistono almeno tre dozzine di compilatori nativi per Windows, mezza dozzina dei quali sono disponibili gratuitamente e con migliaia di pagine di documentazione, che sia PDF o WinHelp poco importa. Perché complicarsi la vita scegliendo un qualcosa di alieno?
2) Investimento per il futuro. Siamo in Italia e un domani lo studente o il freelance lavorerà con probabilità p tendente a uno per e con aziende mainstream che conoscono e usano solo compilatori nativi mainstream per Windows. In caso contrario, c'è comunque tutto il tempo in seguito per imparare ad usare GCC e le sue mille peculiarità, vedi VLA etc.
3) Open opportunities. Oggi lo studente scrive un hello world e domani la solita boiatina con le liste linkate, che sono sufficientemente vanilla e system-agnostic da funzionare senza modifiche anche su un HP/UX e magari su QNX. Ma un giorno potrebbe voler sfruttare davvero a fondo le librerie e i framework nativi, interagendo sul serio col SO sottostante, senza ulteriori layer di compabilità ammazzaprestazioni interposti. Questo è possibile solo con un numero ristretto di compilatori nativi.
Per questi ordini di motivi, anche se i porting di GCC in qualche maniera "funzionano" (ormai quella roba, in un modo o nell'altro, vedi DJGPP, è in giro da più di vent'anni), praticamente nessuno li consiglia a neofiti, studenti, freelance e più in generale a chiunque non ne abbia una esplicita, riconosciuta ed espressa necessità.


Rispondi quotando