di recente ho cercato di eseguire il debug di alcuni lavori di basso livello e non ho trovato il crt0.S per il compilatore (avr-gcc) ma ho trovato un crt1.S (e lo stesso con i file corrispondenti .o)crt0.o e crt1.o - Qual è la differenza?
Qual è la differenza tra questi due file? Crt1 è qualcosa di completamente diverso o cosa? Entrambi sembrano avere a che fare con qualcosa per il bootstrap (impostazione dello stack frame e così via), ma perché la distinzione?
+1 http://lists.uclibc.org/pipermail/uclibc/2002-December/025943.html – stacker
Quali sono esattamente questi costruttori/distruttori? Questo è legato al C++ o qualcosa di simile? Nella mia risposta qui ha funzionato senza 'crtbeginT.o' e' crtend.o' che sono i costruttori e i distruttori. –
L'ho scritto nella mia risposta. Non è (direttamente) correlato a C++. Sono le funzioni che devono essere chiamate prima di main e dopo la fine del programma. È correlato al sistema operativo su cui è in esecuzione il programma. Ma io non sono la persona migliore per raccontarlo (non ho mai scritto tali funzioni, altri lo hanno fatto) e probabilmente meriterebbe qualche risposta. – kriss