EclipseIDE用のGCCコンパイラをWindowsにインストールしたいと思います。MinGWGCCまたはCygwinGCCの2つのオプションがあることを私は知っています。Eclipse CDTに適しているのはどれですか?任意の経験や提案をいただければ幸いです。
5 に答える
Cygwinを使用するということは、プログラムがに依存することを意味しますcygwin1.dll
。これは基本的に、Windows環境でPOSIX機能を使用できるようにするレイヤーです。標準のMinGWGCCでコンパイルしても、そのような依存関係はありません。ただし、これは、MinGW GCCでコンパイルする場合は、fork()
やなどのPOSIX関数にアクセスできないことを意味しますexec()
。
CygwinとMinGWの違いの詳細については、こちらを参照してください。
My offhand thoughts are, if you need cygwin, you need it. For instance compiling programs that were developed for Unix and have symbolic links and shell scripts in the build system.
If you don't need it, you don't want it. And compiling under linux on a virtual machine is often a better choice than going the cygwin route.
So mingw is perfectly fine. Works fine, simple to use.
Also: You might consider codelite (www.codelite.org) instead of Eclipse.
個人的にはCygwinの方が好きです。インストールオプションがたくさんあり、Linuxマシンにあるターミナルのように感じます。これは、Linuxのような機能のかなり充実したセットを提供します。これは、Windowsが惨めに失敗するものです。
CygwinとMingwは互換性のある代替手段ではありません。CygwinはPOSIXAPIプログラムのコンパイルに使用され、MingwはWindowsAPIプログラムのコンパイルに使用されます。
作成するプログラムの種類に応じて、どちらかを選択してください。
ウィキペディアによると:
MinGW
のバージョン1.3.3からフォークされCygwin
ました。との両方Cygwin
を使用してソフトウェアをMinGW
に移植できますが、アプローチは異なります。 、、、およびバリアントに存在するいくつかのシステムコールとライブラリのエミュレーションを提供する完全なものを提供することを目的としています。上で実行し、互換性のために必要な場合はパフォーマンスを犠牲にします。したがって、このアプローチでは、で作成されたプログラムを、プログラムとともに配布する必要のあるコピーレフト互換ライブラリ上で実行する必要があります。直接を介してネイティブ機能とパフォーマンスを提供することを目的としています。とは異なり、UNIX
Windows
Cygwin
POSIX layer
Linux
UNIX
BSD
POSIX layer
Windows
Windows
Cygwin
source code
MinGW
Windows API calls
Cygwin
MinGW
互換性レイヤーDLL
を必要としないため、プログラムをで配布する必要はありませんsource code
。
MinGW
に依存しているため、完全な;Windows API calls
を提供することはできません。でコンパイルできるものはPOSIX API
コンパイルできません。具体的には、これは、、またはのような機能を必要とするアプリケーション、およびで実行されることを期待するアプリケーションに適用されます。、、、、、など、それ自体が移植されたを使用して作成されたアプリケーションは、通常、での場合と同じように簡単にコンパイルされます。UNIX applications
Cygwin
POSIX
fork()
mmap()
ioctl()
POSIX environment
cross-platform library
MinGW
SDL
wxWidgets
Qt
GTK+
MinGW
Cygwin
との組み合わせによりMinGW
、MSYS
レジストリにエントリを残したり、コンピュータにファイルを残したりすることなく、リムーバブルメディアにロードできる小さな自己完結型の環境が提供されます。Cygwin
ポータブルは同様の機能を提供します。より多くの機能を提供することにより、Cygwin
インストールと保守がより複雑になります。
cross-compile Windows applications
ですることも可能MinGW-GCC under POSIX systems
です。これは、開発者がなしMSYS
で実行されるソフトウェアをコンパイルするためにWindowsをインストールする必要がないことを意味します。Windows
Cygwin