Almeno per software libero su Linux, di solito usi qualche builder come make
. Potresti utilizzare qualche altro programma builder , come scons o omake
Per alcuni motivi (per lo più storici), Makefile
può essere generato da programmi di utilità come autoconf
o cmake
; questi generatori si occupano anche di problemi di configurazione (ad esempio disabilitano alcune funzionalità del software se manca una dipendenza). Alcuni framework forniscono anche i propri generatori di Makefile
, ad es. qmake per Qt
PS. Il recente GNU make 4 ha molte nuove funzionalità (plug-in e scripting di guile) che valgono la pena (e probabilmente potrebbero rimuovere IMHO) la necessità di generare Makefile
-s).
Quando si costruisce una grande base di codice C ++, consiglio di usare le utilità della riga di comando (in particolare make
), perché si capisce di più cosa sta realmente accadendo. Inoltre, un sacco di grandi basi di codice C ++ a volte usano generatori di codice C ++ specializzati (ad esempio il compilatore GCC ne ha una dozzina, interni a esso). Ci sono buone ragioni per generare a volte qualche codice C ++ (magari con un semplice awk o python ), ad es alcune intestazioni o costanti, ecc.
Per costruire molti GNU o altre basi di software libero di grandi dimensioni, almeno su Linux, generalmente non è necessario comprendere tutti i dettagli del proprio edificio. Di solito, un file di testo README
o INSTALL
spiega come farlo, ed è spesso -per software usando autoconf - (ma non sempre) semplice come eseguire i tre comandi
./configure
make
sudo make install
Potresti preferire eseguire make install DESTDIR=/tmp/installdir/
, quindi copiare /tmp/installdir
con ad es. sudo cp -va /tmp/installdir/ /
Per il software che utilizza cmake , costruirli è spesso semplice come
mkdir build
cd build
cmake ..
make
sudo make install
Anche il pkg-config è un'utilità utile, dato che fornisce i flag di compilazione e linking utile con alcuni pacchetti.
Il software di grandi dimensioni potrebbe essere difficile da costruire a causa del dannoso accesso alle dipendenze (che è un problema per ogni software di grandi dimensioni, in qualsiasi sistema operativo). Le distribuzioni Linux sono fatte per gestirle.
Immagino che questi software gratuiti siano spesso più facili da costruire su Linux che su Windows (che non conosco e non utilizzo mai). A proposito, ti consiglio vivamente di installare Linux e impararlo, perché è divertente e fatto di software gratuito (il cui codice sorgente è possibile studiare, migliorare e contribuire a).
Software gratuito di grandi dimensioni o di base come il compilatore GCC , GNU glibc , il kernel kernel è difficile da compilare (perché quasi tutto dipende da loro). Quindi inizia a creare alcuni software gratuiti più semplici dal codice sorgente. Vedi sourceforge o github per trovarne.
Alcune lingue o framework hanno il proprio programma di installazione o gestore di pacchetti o builder. Ad esempio, ocaml ha OPAM
BTW, nota che tutti IDE (compresi Visual Studio su Windows) sono solo editori con qualche interfaccia grafica per eseguire il compilatore C ++ sulla riga di comando. Quindi è meglio capire cosa sta realmente accadendo, sapendo come eseguire il compilatore attraverso i comandi.