Newsgroup: it.comp.programmare
Titolo: c++ :: compilazione per più piattaforme

salve,
qualcuno di voi sa come si puņ compilare su di una determinata
macchina, un programma che possa essere eseguito su un'architettura
completamente diversa?
quello che a me interessa in sostanza č scrivere dei programmi in c++
sotto linux, ma compilarli di modo che possano essere eseguiti sotto
windows.
stefano

 wrote in message
news:f206c54b.04091...@posting.google.com

Compilali per windows e prega che si riesca ad eseguirli con wine
sotto Linux...
Forse ti sfugge che NON basta che il processore sia lo stesso affinche'
un programma possa essere eseguito direttamente senza ricompilarlo.
Solo per citare una differenza tra le tante. un eseguibile per Windows
e' di tipo PE, quello per Linux e' di tipo elf: l'intestazione, le
tabelle di rilocazione, il modo di caricare le librerie dinamiche il
modo di accedere alle funzioni contenute nelle librerie dinamiche sono
completamente diversi. Come pretendi che l'eseguibile di uno funzioni
sull'altro?
HTH
C:\>iao Angelo
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 
 la cosa non mi sfugge affatto. per piattaforma non per niente si
intende ISA (instruction set architecture) + sistema operativo.
dubito inoltre che quando una software house distribuisce un software
multipiattaforma lo compili ogni volta su una macchina diversa.
sono sicuro che c'è un modo per istruire il compilatore perchè la
compilazione avvenga per una determinata macchina.

Il progetto Mono (
http://www.mono-project.com
) si occupa del porting di 
alcuni componenti chiave del .NET Framework tra cui il compilatore per C# 
e un interprete run-time per l'esecuzione. Con alcuni limiti, si riesce a 
creare delle discrete applicazioni che girano su Linux e Win (credo anche 
Mac) senza problemi.
Freddy
Inviato da 
www.mynewsgate.net

Freddy wrote:

e che c'entra col C+?????????
Se si sviluppa multipiattaforma l'applicazione C++ DEVE essere compilata (o
cross-compialta non cambia nulla) per OGNI piattaforma su cui deve girare
per i motivi che ti hanno elencato nei post sotto..
buona notte,
   nelson

 compilazione avvenga per una determinata macchina.
Per una determinata macchina + un determinato S.O. Quello che chiedi
non esiste.


 non esiste.
Ma se prima hai detto che gcc riesce a cross-compilare anche per Windows!
A "l3mond3", e anche a me, interesserebe sapere come fare a generare un 
programma Win32 per processore Pentium (la cosiddetta piattaforma 
Wintel), usando un compilatore C++ per Linux.
-- 
     Carlo Milanesi
 
http://digilander.libero.it/carlmila

 
Nelle opzioni a riga di comando del gcc ci sono le impostazioni da dare 
per creare un eseguibile per un altra architettura. Un 'man gcc' sarebbe 
indicato anche perché non so la affidabilità di queste opzioni.

 Wintel), usando un compilatore C++ per Linux.
A mio avviso, il modo meno incasinato e' prendere un compilatore free
per Windows e compilare i programmi direttamente su Windows, ad es.
MingW (
www.mingw.org
), per la cross-compilazione non sono un esperto:
questo url
http://www.mega-tokyo.com/osfaq2/index.php/GCC%20Cross-Compiler
e' tutto quello che posso fare.
Spiacente per il fraintendimento e sepro di essere sato utile.
C:\>iao Angelo

 indicato anche perché non so la affidabilità di queste opzioni.
Non credo basti. Sono raginevolmente sicuro che sia necessario
installare
il "supporto" per la cross-compilazione (header con prototipi, define
ecc., come minimo).
