Migliore risposta
Pelles C è un IDE completo, compilatore e altro per Windows 10. È anche gratuito (è richiesta una donazione, ma non obbligatoria). Include alcune caratteristiche e risorse interessanti che non si trovano in GCC. Puoi anche saperne di più qui: Pagina principale [Pelles C Wiki]
Sono rimasto incuriosito da ciò che Pelles C aveva da offrire e ho deciso di scaricarlo da solo.
Limmagine sotto mostra lIDE in esecuzione sul mio computer Windows 10.
Potresti essere piacevolmente sorpreso come me. Puoi persino importare soluzioni Microsoft Visual Studio!
La schermata qui sotto mostra il tradizionale codice hello world (fornito come parte degli esempi C di Pelles), lo stato delloutput dopo la compilazione e la console che mostra il programma eseguito con successo in una finestra separata della console.
I prodotti menzionati nelle altre risposte sono molto pertinenti e degni della tua considerazione.
Scegli un pacchetto che funzioni meglio per te!
Risposta
Ai tempi di PlayStation 2, lavoravo in una strana startup di giochi in California. La startup è implosa in seguito, ma questa è una storia diversa. Questa storia parla di come quattro settimane prima dellE3 (lElectronic Entertainment Expo, un importante evento del settore), il nostro CTO è entrato nellufficio del nostro team addetto al motore portando un devkit PS2, lo ha depositato sulla scrivania più vicina e, con uno sguardo un po colpevole. la sua faccia, ha annunciato che abbiamo bisogno di una demo per PS2 per lE3.
Il nostro motore a quel tempo era solo per PC, era abbastanza allavanguardia in termini di funzionalità e, in particolare, aveva caratteristiche che non avevano mai stato fatto su PS2. Ombre a scena intera, per esempio. Anche la mappatura normale su tutto.
Vedete, la PS2 era composta da un fantastico set di chip che erano paralizzati, zoppicanti e ostacolati da unarchitettura assolutamente insensata che, sospetto, fosse il risultato di alcune serie lotte intestine a Sony. Ma torniamo al nostro CTO.
La stanza divenne silenziosa. Joe, Jake e Bill, i miei soci nel crimine allepoca, sedevano lì a guardarlo. “È uno scherzo, vero?” disse Jake, finalmente. Non era uno scherzo.
Non sono brava con le pause di gravidanza. Mi fanno accettare cose su cui non dovrei essere daccordo. Andrei molto male in un interrogatorio di polizia. Cinque minuti di silenzio e avrei coinvolto mia nonna. Trascorsero trenta secondi. “Ok, lo prendo”, ho detto.
Ho sei volumi, credo, dei manuali PS2. Quelli verdi. Li ho aperti. Erano in giapponese. La mia conoscenza del giapponese è fondamentalmente limitata a “watashi wa nihongo ga wakarimasen”, che significa “non parlo giapponese” e può essere grammaticalmente corretto o meno, e, in ogni caso, non è una frase che probabilmente avrei incontrato i manuali. Ci sono voluti una settimana per procurarmi il set inglese, nel frattempo ho messo insieme un prototipo di renderizzatore usando il codice di esempio (che è stato commentato quasi esclusivamente in giapponese, quindi capirlo ha richiesto un po di lavoro investigativo).
Il compilatore PS2 è stato realizzato da una società chiamata SN Systems, prima che fossero acquisiti da Sony. Avevano due compilatori, SNC e ProDG, dove se la memoria mi serve bene, ProDG era un fork di GCC. Credo che abbiamo scelto ProDG, ma ora non ne sono sicuro. Penso che allepoca avesse un supporto migliore per i modelli? Qualcosa del genere.
Abbiamo ottenuto la nostra demo, con ombre dinamiche a scena intera e mappatura normale su tutto (penso che solo unaltra persona labbia mai fatto, ora lavoriamo nella stessa azienda), mostrato a porte chiuse al Playstation Magazine che si è quasi incazzato. Peccato che la società abbia cessato lattività poco dopo e non è mai stato fatto nulla con la tecnologia e ho passato tre anni della mia vita a fare cose che non hanno mai visto la luce, ma questo è il settore dei giochi per te.
Ma.
Per quattro o cinque mesi ho guidato più o meno il nostro sviluppo per PS2 e quindi conoscevo bene i problemi. Durante questo periodo, abbiamo presentato, stimerei, circa un centinaio di segnalazioni di bug legittime a SN Systems (che, dovrei dire, è stata straordinariamente pronta nel risolverli e mi è piaciuto molto lavorare con i miei contatti lì). Bug del compilatore reali e onesti.
Molti anni dopo ho avuto un assaggio di questo dallaltra parte delle barricate, mentre lavoravo su un compilatore del mondo reale in grande azienda. Da allora ho deciso che preferisco di gran lunga correggere i bug in un compilatore su cui sto lavorando, piuttosto che segnalare bug in un compilatore con cui sto lavorando.
Quindi sì, i compilatori commettono errori, e loro generano programmi sbagliati e il debug di questo genere di cose può essere … interessante.