Ciao Andrea,
per la compilazione cross in quanto tale non è un grosso problema. L'ide permette e supporta il cross compiling, eventualmente è il debug che diventa un massacro.
Lavorando sulla piattaforma per cui compili, è il debug ad essere semplificato.
In linea di massima potresti creare 2 versioni del programma. Uno per window e uno per linux.
Aggiungi che la rogna è aggravata dal cambio di achitettura del processore. Sotto Windows dovresti usare un emulatore Arm-Linux.
Nel mio caso uso 2 compilatori (window 32 e arm-nintendo).
Basta mettere i compilatori sotto la cartella
{driver}:\Programmi\Lazarus\fpc\{versione}\bin\
e le unit dentro
{driver}:\Programmi\Lazarus\fpc\{versione}\units\
All'avvio l'ide, chiede che compilatore usare per i progetti che andrai a compilare.
Quando indico il compilatore nds, rogna un pochino con la versione nintendo del compilatore, ma poi mi lascia pastrocchiare con il codice. (Lamenta che il file di configurazione non gli piace molto ...)
Sempre nel mio caso ho 2 cartelle dentro bin (e units), in ordine:
1)arm-nds
2)i386-win32
Suppongo che nel tuo caso, la prima cartella, diventi arm-linux.
Poi le prove le faccio via emulatore. Quando sono soddisfatto dei miei pastrocchi, lo passo dentro la nintendo.
In ogni caso, potresti leggere le indicazioni di Legolas, per quanto datate sono sempre un ottimo spunto di riflessione/partenza.
Ciao e buon cross ;)
Stilgar