Linuxでfreeglutを使用してC++(g ++)でいくつかの効果を記述し、それらをコンパイルします。
g++ -Wall -lglut part8.cpp -o part8
だから、必要なものがすべて含まれている静的にコンパイルされたWindows実行可能ファイルをg ++で作成できるかどうか疑問に思っていましたか?
私はWindowsを持っていないので、Linuxでそれができたら本当にクールだと思います:)
mingw32は、Linux用のパッケージとして存在します。 Windowsアプリケーションをクロスコンパイルおよびリンクできます。チュートリアルがあります ここCode :: Blocksフォーラム 。たとえば、コマンドがx86_64-w64-mingw32-gcc-win32
に変更されることに注意してください。
たとえば、UbuntuのリポジトリにはMinGWがあります。
$ 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
[...]
LinuxでWindows用にコンパイルする1つのオプションは、mingwを使用することです。非常に役立つチュートリアルを見つけました こちら 。
Debianベースのシステムにmingw32をインストールするには、次のコマンドを実行します。Sudo apt-get install mingw32 mingw32-binutils mingw32-runtime
コードをコンパイルするには、次のようなものを使用できます。i586-mingw32msvc-g++ -o myApp.exe myApp.cpp
Linuxで新しいWindowsアプリケーションを直接テストしたい場合があります。そのためにワインを使用できますが、ワインにはバグがある可能性があることに常に留意してください。これは、wine、プログラム、またはその両方にバグがあるかどうかわからない可能性があるため、一般的なテストにのみwineを使用することを意味します。
Wineをインストールするには、次を実行:Sudo apt-get install wine
推奨される方法は、Ubuntu 16.04でエラーになりました: E:パッケージmingw32が見つかりません
================================================== =========================
このパッケージをUbuntuにインストールするには、次を使用してください。
Sudo apt-get install mingw-w64
インストール後に使用できます:
x86_64-w64-mingw32-g++
ご注意ください!
64ビット使用の場合:x86_64-w64-mingw32-gc ++
32ビット使用の場合:i686-w64-mingw32-g ++
パッケージマネージャーからmingw64などのクロスコンパイラーをインストールします。次に、次の方法でコンパイルします。単にgcc
を呼び出す代わりに、32ビットWindowsの場合はi686-w64-mingw32-gcc
を、64ビットWindowsの場合はx86_64-w64-mingw32-gcc"
を呼び出します。ターゲットシステムにすべてのライブラリがない可能性があるため、--static
オプションも使用します。
Fortranなどの他の言語をコンパイルする場合は、前のコマンドで-gcc
を-gfortran
に置き換えます。
Linuxでmingwを使用してCでWindows実行可能ファイルを作成しましたが、C++でも同様に機能すると思われます。
Clangなどをクロスコンパイラツールチェーンとしてパッケージ化するプロジェクト、ELLCCがあります。これを使用して、clang(C++)、binutils、およびGDB for Windowsをコンパイルします。いくつかのLinuxホスト用にプリコンパイルされたバイナリについては、 ellcc.org のダウンロードリンクに従ってください。
From: https://fedoraproject.org/wiki/MinGW/Tutorial
Fedora 17では、win32およびwin64ターゲット用のバイナリを簡単にビルド(クロスコンパイル)できます。これは、mingw-w64ツールチェーンを使用して実現されます: http://mingw-w64.sf.net/ 。このツールチェーンを使用すると、C、C++、Objective-C、Objective-C++、およびFortranのプログラミング言語のバイナリを構築できます。
「Windowsクロスコンパイラを使用するためのヒントとコツ」: https://fedoraproject.org/wiki/MinGW/Tips
fedoraの場合
Sudo yum groupinstall -y "MinGW cross-compiler"