Quali usi ci sono oggi per scrivere manualmente Makefile? [chiuso]

2

Ricordo l'essenza generale della scrittura dei Makefile, ma, a causa di CMake, degli autotools e di altri generatori di Makefile, ho dimenticato così tanti dettagli che, se dovessi chiedermi di scrivere un makefile da zero per un progetto complesso , beh, mi ci vorranno almeno un paio d'ore.

Ci devono essere molte opinioni là fuori, sto cercando la risposta più informativa. Considerando il ninja (i Makefile non sono destinati a essere scritti a mano) e tutti i generatori automatici, ha senso interpretare arbitrariamente la sintassi Makefile, oltre alla manutenzione del codice legacy?

    
posta Greg Kramida 11.05.2015 - 17:30
fonte

2 risposte

1

È molto utile essere in grado di "costruire manualmente" un progetto in questi giorni.

Che sia attraverso l'uso di un makefile, uno script di shell o un buon vecchio file batch basato su MsDos, non importa.

Non ci limitiamo alla manutenzione del codice legacy come fai notare, a proposito di patch di emergenza e correzioni di bug per far sì che i sistemi tornino attivi e funzionanti.

Nel corso degli anni, ho lavorato molto come tecnico sul campo, e ho perso il conto delle volte in cui sono rimasto bloccato in un data center con nient'altro che un terminale SSH sul laptop Ho collegato ad alcuni wacky e amp; meraviglioso sistema server personalizzato.

Non sempre hai il lusso dei tuoi soliti strumenti, specialmente quando lavori su progetti personalizzati che sono attualmente sottoposti a test di integrazione.

Per questa ragione e solo per questa ragione, è sempre una buona idea essere in grado di lavorare usando il più piccolo degli ambienti di sviluppo, e se ciò significa una copia di GCC, Make e Vim eseguono una catena di chiavi avviabile da 8 gb contenente un basic * nix distro quindi vale la pena mantenere la pratica.

    
risposta data 12.05.2015 - 00:22
fonte
4

In qualità di sviluppatore di software, dovresti avere familiarità con la toolchain utilizzata da qualunque progetto tu faccia. Non devi essere un esperto in tutto perché il tuo team dovrebbe avere uno sviluppatore per possedere quel processo e avere familiarità con tutti i dettagli, ma dovresti essere in grado di guardare qualsiasi script di costruzione e capire cosa fa.

Con i Makefile in particolare, è più probabile che tu stia utilizzando uno strumento come Automake per generarli comunque. Quindi non è molto utile scrivere manualmente Makefile, ma dovresti riuscire a leggerli nel caso in cui qualcosa non funzioni correttamente.

Anche se hai modificato manualmente un Makefile, la prossima volta che lo generi, le tue modifiche andranno a male, quindi perché preoccuparsi? Concentrate i vostri sforzi sull'aggiornamento delle configurazioni upstream utilizzate per generare il Makefile per iniziare.

    
risposta data 11.05.2015 - 17:55
fonte

Leggi altre domande sui tag