ホームページ >バックエンド開発 >C++ >MinGW を使用して Linux 上で Windows 実行可能ファイルをクロスコンパイルするにはどうすればよいですか?

MinGW を使用して Linux 上で Windows 実行可能ファイルをクロスコンパイルするにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-22 10:12:58370ブラウズ

How to Cross-Compile Windows Executables on Linux using MinGW?

gcc/g を使用した Linux 上の Windows 実行可能ファイルのクロスコンパイル

クロスプラットフォーム開発のコンテキストでは、次のような問題が生じます。 gcc または g を使用して Linux で書かれた C コードを Windows 用にコンパイルします。この質問は、Linux ベースのシステムが唯一の利用可能なリソースである場合に特に重要になります。

このニーズに対処するために、MinGW (Minimalist GNU for Windows) プロジェクトがソリューションを提供します。 MinGW は、Windows 以外のシステムから Windows アプリケーションのクロスコンパイルを可能にする開発環境です。

インストール

Ubuntu ベースの Linux ディストリビューションの場合、MinGW をインストールできます。 apt パッケージ経由manager:

$ 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
[...]

コンパイル

Windows 実行可能ファイルをクロスコンパイルするには、MinGW ツールチェーンを利用するようにコンパイル コマンドを変更します。たとえば、64 ビット Windows ターゲットの場合:

x86_64-w64-mingw32-gcc-win32 -Wall -lglut part8.cpp -o part8.exe

このコマンドは、64 ビット MinGW ツールチェーンを使用し、「part8.exe」という名前の静的 Windows 実行可能ファイルを生成するようにコンパイラーに指示します。

考慮事項

Linux 上で Windows 用にクロスコンパイルする場合、正しいヘッダーとライブラリがコンパイラーで利用できることを確認することが重要です。この例の場合、Windows 用の FreeGLUT ヘッダーとライブラリが必要になります。

MinGW ツールチェーンを活用することで、開発者は Linux システムから Windows アプリケーションをシームレスにクロスコンパイルおよびリンクでき、開発を拡張できるようになります。 Windows 環境を必要とせずに機能を利用できます。

以上がMinGW を使用して Linux 上で Windows 実行可能ファイルをクロスコンパイルするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。