Italian community of Lazarus and Free Pascal

Programmazione => Generale => Topic aperto da: xinyiman - Marzo 08, 2015, 08:14:17 pm

Titolo: Compilare in FPC
Inserito da: xinyiman - Marzo 08, 2015, 08:14:17 pm
Ciao ragazzi, sono un estimatore della grafica minimale e mi ha sempre affascinato la classica schermata ncurses. Siccome con il free pascal si può ottenere tali risultati su linux ho fatto quanto segue:

sudo apt-get install ncurses-*

poi sono andato nella cartella

/usr/share/fpcsrc/2.6.4/packages/ncurses/examples

e ho lanciato il comando

make

Bene, ha compilato tutti gli esempi nella cartella. Ma se io volessi crearne uno nuovo, ad esempio duplico il file edit_demo.pp e lo chiamo miaprova.pp e volessi compilarla dopo aver cambiato un po il sorgente, ad esempio cambio una stringa per assicurarmi che tutto funziona, cosa devo fare per poi ottenere il mio eseguibile compilando solo questo file?

Io ho sempre lavorato con lazarus, compilare da riga di comando mai fatto.
Titolo: Re:Compilare in FPC
Inserito da: Legolas - Marzo 08, 2015, 09:35:32 pm
La cosa più semplice è utilizzare fpcmake che, tramite il file Makefile.fpc genera il file Makefile vero e proprio. Nel tuo caso dovresti editare il file Makefile.fpc e aggiungere miaprova nella sezione target:

Codice: [Seleziona]
#
#  Makefile.fpc for ncurses units example
#

[target]
programs=firework testn ocrt_demo edit_demo db_demo screen_demo t1form t1menu t1panel t2form t2menu t2panel t3form tbackground tclock tevent tmouse tnlshello tpad twindow miaprova

[require]
packages=ncurses

[install]
fpcpackage=y

[default]
fpcdir=../../..

Quindi rigenerare (solo la prima volta) il Makefile con

fpcmake -w -Tall

e compilare con make.

Se invece vuoi ricompilare solo un file, devi indicarlo in target->programs:

Codice: [Seleziona]
#
#  Makefile.fpc for ncurses units example
#

[target]
programs=miaprova

[require]
packages=ncurses

[install]
fpcpackage=y

[default]
fpcdir=../../..

Ci ho giocato parecchio con fpcmake e puoi farci diverse cose carine. Per qualche esempio di utilizzo, controlla le directory examples nei packages libogcfpc, libgbafpc e, soprattutto, libndsfpc.

Per qualsiasi dubbio chiedi pure :)
Titolo: Re:Compilare in FPC
Inserito da: xinyiman - Marzo 08, 2015, 10:03:06 pm
Grazie mille Legolas :)