Appunti di informatica by Carlo

PROGRAMMI CON INTERFACCIA A FINESTRE.
Ma come compilare le wxWidgets?

gif(Aggiornamento dell'articolo al 27/02/2024)
Parecchi di voi, provetti programmatori, avrete sicuramente scaricato qualche compilatore e provato così a compilare i primi programmini. Sicuramente vi siete dovuti accontentare inizialmente di interfacce semplici, cioè di piccoli programmi che funzionano come le vecchissime applicazioni a riga di comando dei vecchi sistemi operativi come il datato MsDos.
A molti di voi sarà anche capitato però, man mano nel procedere col lavoro, di voler fare applicazioni con interfaccia a finestre come quelle di Windows o altri moderni sistemi operativi oggi in uso.

wxWidgets

Per fare ciò bisogna adoperare in aggiunta al linguaggio di programmazione librerie ad hoc scritte appunto per il linguaggio adoperato, costruendo così programmini o applicazioni dal sapore professionale e, per i più esperti, anche complesse.
Molte sono le librerie in uso tra i più esperti programmatori molte anche per il linguaggio di programmazione C++. Tra queste da citare anche le wxWidgets, e proprio di queste librerie, di cui vi sono varie versioni per diversi sistemi operativi, vi parlerò e vi indicherò il modo per compilarle e utilizzarle come si deve con il compilatore C++. Non saprei dirvi quando mi sono imbattuto per la prima volta nelle wxWidgets, ma devo dirvi che diversi anni fa l'approccio è stato alquanto disastroso. Infatti dopo diversi tentativi non riuscii a compilarle e per un po' di tempo vi rinunciai. La documentazione non era completa e anche cercando su Internet, ognuno diceva la sua e c'era una gran confusione. È solo da sette anni che le ho riprese e direi anche con successo.
Ho trovato, dopo tutto, una certa facilità d'uso e non solo ho compilato le librerie con il compilatore MinGw ma anche con i compilatori 32 e 64 di Visual Studio di Microsoft e con esse ho sviluppato molte applicazioni.
Dalla completa documentazione di oggi e dalle recensioni nei vari siti di discussione ho constatato che queste librerie sono alquanto utilizzate dagli sviluppatori. Il vantaggio di queste e dei programmini che vi consiglierò strada facendo, è quello che tutto questo software è open source, scaricabile gratuitamente, si rifà cioè alla concezione della libera circolazione del software senza scopo di lucro anche se qui bisognerebbe fare dei debiti “distinguo” e valutare caso per caso.
In questo articolino che per alcuni “smanettoni” apparirà noioso, cercherò di spiegare come compilare ed usare le librerie in questione, e vi fornirò i link per scaricare alcuni programmini utili allo scopo. L'ambiente di lavoro è Windows 10, ma con le debite varianti tutto ciò che vi dirò è applicabile anche ad altri sistemi operativi.
Vi proporrò anche un paio di file batch da me realizzati per compilare le librerie e i primi programmini che realizzerete. Vi prego però di studiarli ed eventualmente modificarli per renderli più completi. Sarà mia cura pubblicare qui le vostre modifiche per non avere cioè l'impressione di “giocare” da solo con questi argomenti.

wxWidgets

Per essere più preciso nel procedere, dividerò in due parti i gruppi di programmini e software da scaricare:

1) per compilare le wxWidgets
  • libreria (wxWidgets)
  • compilatore (MINGW32 e MINGW64).
    Attualmente con la versione wxWidgets-3.2.4 e windows 10, sono consigliati i seguenti compilatori:
    i686-13.2.0-release-win32-dwarf-ucrt-rt-v11 (per 32)
    x86_64-13.2.0-release-win32-seh-ucrt-rt-v11 (per 64)
  • file batch (CompilaWx)
2) per compilare ed editare i vostri programmini e progettare l'interfaccia grafica

Non perdiamo tempo in chiacchiere noiose e incominciamo col primo punto. Innanzi tutto vi consiglio di scaricare dal link sopra indicato, la versione compressa con estensione “zip” della libreria wxWidgets e in seguito “scompattarla” in una cartella posizionata nella radice del vostro disco, ad esempio: C:\wxWidgets-3.2.4 se tale è l'ultima versione disponibile e che avete scaricato.
Ora è il turno dei compilatori che potete scaricare e scegliere dal link indicato.
Come ultima cosa c'è da scaricare il file batch “CompilaWx.txt”. Piazzatelo dove volete, anche sul desktop, apritelo (Rinominare in "CompilaWx.cmd") e eseguite le istruzioni a video. Potete anche editarlo e modificarlo con un apposito programma per testi.
Ulteriori spiegazioni le potete trovare qui.
Vi troverete infine un menu a otto voci: le prime quattro per la compilazione a 32 bit, le seconde quattro per la compilazione a 64 bit. Eseguitele tutte, se avete un sistema operativo a 64 bit, ma non preoccupatevi del tempo necessario a completarle, ciascuna voce impiega circa venti minuti per essere completata ma i tempi dipendono dalla velocità del microprocessore. Non preoccupatevi se le ventole del computer gireranno a “manetta”: il lavoro del microprocessore è intenso!
Alla fine, se tutto è andato bene e se il programma non ha segnalato errori, avete compilato la libreria che così è pronta per essere usata.
Prima però bisogna copiare nella stessa cartella del programmino che compilerete, le librerie dinamiche.dll sia a 32 che a 64 e se avete compilato anche per il debug, le librerie dinamiche apposite:
Se compilerete solo le librerie statiche di wxWidget, le le librerie dinamiche dll sono inutili!

Ora viene il bello, vorrete senza alcun dubbio provare la libreria, sicuramente sarete impazienti, coraggio manca poco, lo potete vedere dalle righe che ancora mancano in questo articolino!
Bisogna ora quindi passare al secondo punto e scaricare liberamente i seguenti programmi:
Notepad++, ottimo editor per programmatori, supporta diversi linguaggi e si può personalizzare secondo le proprie esigenze. È il più utilizzato, lo potete adoperare per scrivere o variare i vostri sorgenti C++;
Premake, programmino che serve a creare il file necessario alla compilazione.
Nell'ultimo passaggio, scaricare il supporto Materiale e inserire i vostri file necessari alla compilazione sorgenti compresi.
Ricordatevi di cambiare l’estensione del file CM.txt in CM.cmd.

È ora necessario aprire con Notepad++ il file “CM.cmd” e verificare i percorsi delle librerie wxWidgets e dei compilatori.
Ora provate cliccando due volte sul file “CM.cmd”

Importante: compilatori e librerie (wxWidgets) devono essere installati, anche se in cartelle diverse, nello stesso disco dove risiedono i programmi da compilare.
Se tutto procede a dovere avrete compilato il programmino e quindi potete provarlo. Coraggio, ho finito … Ora tocca a voi! :-)

Ci vorrà anche un database per i vostri lavori, sì o no?
Vedremo prossimamente come compilare wxSqlite3 ...
Abbonati al feed!
png