Domanda

ho scritto alcuni effetti in C ++ (g ++) utilizzando freeglut su Linux, e li ho compilare con

g++ -Wall -lglut part8.cpp -o part8

Così mi chiedevo se è possibile avere g ++ rendere eseguibili Windows compilati statica che contiene tutto ciò che serve?

Non ho di Windows, quindi sarebbe davvero cool, se potessi fare che su Linux:)

È stato utile?

Soluzione

mingw32 esiste come un pacchetto per Linux. È possibile attraversare-compilare e -collegamento applicazioni Windows con esso. C'è un tutorial qui al Code :: Blocks forum . Ricordate che il comando modifiche x86_64-w64-mingw32-gcc-win32, per esempio.

Ubuntu, per esempio, ha MinGW nei suoi repository:

$ apt-cache search mingw
[...]
g++-mingw-w64 - GNU C++ compiler for MinGW-w64
gcc-mingw-w64 - GNU C compiler for MinGW-w64
mingw-w64 - Development environment targeting 32- and 64-bit Windows
[...]

Altri suggerimenti

Una possibilità di compilare per Windows a Linux è via MinGW. Ho trovato molto utile tutorial di qui .

Per installare mingw32 su sistemi basati su Debian, eseguire il seguente comando:
sudo apt-get install mingw32 mingw32-binutils mingw32-runtime

Per compilare il codice, è possibile usare qualcosa come:
i586-mingw32msvc-g++ -o myApp.exe myApp.cpp

Ti volte vuole testare la nuova applicazione di Windows direttamente in Linux. È possibile utilizzare il vino per questo, anche se si dovrebbe sempre tenere a mente che il vino potrebbe avere bug. Questo significa che si potrebbe non essere sicuri che un bug è nel vino, il vostro programma, o entrambi, in modo da utilizzare solo vino per la prova generale.

Per installare il vino, eseguire:
sudo apt-get install wine

metodo suggerito mi ha dato errore su Ubuntu 16.04: E: Impossibile trovare il pacchetto mingw32

=============================================== ============================

Per installare questo pacchetto su Ubuntu si prega di utilizzare seguente:

sudo apt-get install mingw-w64

Dopo l'installazione si può utilizzare:

x86_64-w64-mingw32-g++

Si prega di notare!

Per l'uso a 64 bit: x86_64-W64-mingw32-gc ++

Per l'uso a 32 bit: i686-W64-mingw32-g ++

Installare un cross compiler, come mingw64 dal vostro gestore di pacchetti. Quindi compilare nel seguente modo: invece di limitarsi a chiamare gcc chiamata i686-w64-mingw32-gcc per Windows a 32 bit o x86_64-w64-mingw32-gcc" per Windows a 64 bit. Vorrei anche utilizzare l'opzione --static, come il sistema di destinazione non può avere tutte le librerie.

Se vuoi compilare altra lingua, come Fortran, sostituire -gcc con -gfortran nei comandi precedenti.

Ho usato mingw su Linux per rendere eseguibili di Windows in C, ho il sospetto C ++ avrebbe funzionato pure.

Ho un progetto, ELLCC, che i pacchetti clang e altre cose come una catena strumento di cross compiler. Io lo uso per compilare clang (C ++), binutils, e GDB per Windows. Seguite il link di download alla ellcc.org per binari precompilati per diversi host Linux.

Da: https://fedoraproject.org/wiki/MinGW/Tutorial

  

A partire da Fedora 17 è possibile creare facilmente file binari (cross-compilazione) per le Win32 e Win64 obiettivi. Questo è realizzato utilizzando la toolchain mingw-W64: http://mingw-w64.sf.net/ . L'utilizzo di questo toolchain permette di costruire i binari per i seguenti linguaggi di programmazione: C, C ++, Objective-C, Objective-C ++ e Fortran

.

"Consigli e trucchi per utilizzare il cross-compilatore di Windows": https://fedoraproject.org/wiki / MinGW / Consigli

per Fedora è

sudo yum groupinstall -y "MinGW cross-compiler"
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top