Italian community of Lazarus and Free Pascal

Programmazione => Generale => Topic aperto da: bonmario - Febbraio 16, 2025, 11:37:17 am

Titolo: Compilazione "pulita" di un progetto
Inserito da: bonmario - Febbraio 16, 2025, 11:37:17 am
Ciao a tutti,
mi è appena successa una cosa strana.
Ho modificato un vecchio progetto che non modifico/uso da circa 2 anni.
Alla prima compilazione, mi ha dato alcuni errori, dovuti al fatto che in Strumenti ==> Opzioni progetto puntava a directories che non esistono più.
Ho sistemato il problema e compilato con F9, ma mi dava ancora lo stesso errore.
Ho ricompilato con CTRL+F9, ma mi dava ancora lo stesso errore.
Ho quindi lanciato un mio script che cancella tutti i files creati durante la compilazione, e compilato con F9, e stavolta ha compilato.

Io sapevo che CTRL+F9 corrispondeva a "ricompila tutto sovrascrivendo i files di compilazione temporanei", quindi più o meno a quello che ho fatto alla fine col mio script. Ricordo male io, o forse è cambiato qualcosa ?

Grazie, Mario
Titolo: Re:Compilazione "pulita" di un progetto
Inserito da: DragoRosso - Febbraio 16, 2025, 12:02:05 pm
Io per quel "short-cuts" ho la funzione di "Compila".

C'è una voce apposita per la pulizia: "Ripulire e ricostruire" ma senza scorciatoie nel menu "Esegui".

P.S.: comunque io son abituato a cancellare la directory "Lib" (in Lazarus) e l'equivalente in Delphi quando non prendo in mano un progetto da diverso tempo. Questo è legato anche al cross-compiling ossia al fatto che alcuni moduli sono comuni a diversi progetti e ho notato che non sempre vengono ricompilati, almeno al primo "colpo" ...

AGGIUNTA: e ancora, ogni tanto devo ricompilare due volte un progetto in quanto mi ritrovo con parti di codice che vengono eseguiti non aggiornati ... sembra come che la disposizione delle unità nelle uses (interface o implementation) e alcuni $IFDEF non venissero "presi" con la prima compilazione ... Una cosa "annosa" ma che ormai è diventata automatica e quindi se faccio modifiche importanti a più file ricompilo sempre due volte ormai in automatico.