PDA

Visualizza la versione completa : CygWin ed eseguibili per Win32


alkondor
08-01-2008, 20:24
Come posso compilare un codice sorgente scritto per linux in modo che sia eseguibile sotto Win32?

Ho provato con CygWin, ma l'eseguibile, pur funzionando sotto CygWin, non funziona se lo eseguo sotto Win32 (cygwin1.dll mancante, nonostante abbia recuperato tale libreria e l'abbia posizionata nella directory di esecuzione del programma e nella cartella system32 di windows... E' normale che non funzioni o dovrebbe andare?)

Ad ogni modo, cercando un po' in google, mi pare di aver capito che devo compilare il sorgente usando il compilatore g++ fornito con le MinGW. Ho provato anche questo, sia sotto windows che sotto CygWin, ma in entrambi i casi avviando la compilazione mi vengono restituiti un sacco di errori su degli header (duplicati e cose simili...)

Come risolvo?
Non so pi dove sbattere la testa! :(

pallinopinco
08-01-2008, 20:29
E' normale che non funzioni o dovrebbe andare?)


Se copi la DLL nella cartella in cui risiede l'eseguibile deve funzionare, se non funziona probabile che la DLL non sia quella giusta.

Cygwin supporta l'opzione -mno-cygwin (http://www.delorie.com/howto/cygwin/mno-cygwin-howto.html) per sorgenti C, sei sicuro che il progetto da compilare non preveda un makefile per MinGW?

Cosa stai cercando di compilare?

alkondor
09-01-2008, 00:49
Sto cercando di compilare un progetto universitario in via di sviluppo per la mia tesi. E' stato sviluppato sotto Linux ed compatibile solo con la g++ 3.3.3 o inferiore (con le ultime versioni non viene compilato correttamente)

Il flag di cui parli tu esiste solo per la gcc, ma non per la g++... E' per questo che ho tutti questi problemi. :(

Leggevo che si pu semplicemente risolvere usando MinGW invece che CygWin, ma come dicevo ho provato ed ho ottenuto solo una sfilza di errori sui file header (anche di sistema)

Devo usare qualche accorgimento particolare?

Grazie per la risposta.
Ciao.
Ale

pallinopinco
09-01-2008, 10:52
Il flag di cui parli tu esiste solo per la gcc, ma non per la g++... E' per questo che ho tutti questi problemi.


Infatti ho scritto "per sorgenti C", non C++... :)



Devo usare qualche accorgimento particolare?


Dovremmo conoscere gli errori ed i warning che ricevi per capire cosa causa i problemi di compilazione. Magari manca semplicemente qualche header/libreria oppure il codice effettivamente non compilabile su Windows. Senza vedere il codice, o almeno gli errori, impossibile darti una mano.

Loading