Cygwinのライブラリに依存しないバイナリを生成する

WindowsでC言語のプログラムを作成する時によく用いられる環境の1つとして、Cygwinが挙げられます。CygwinはWindows上でUnixを擬似的に再現した環境のことで、完全な互換性は無いものの、多くの場合は問題なく利用することができます。

しかし、そんなCygwinでもデフォルトではいくつか問題があります。その1つとして、Cygwin上でコンパイルしたプログラムはCygwin1.dllというライブラリがないと動作しないという点です。これはつまり、Cygwinでコンパイルしたプログラムは、Cygwinが入っている環境でしか実行できないというわけです。これでは、Cygwinが入っていない環境で実行したい場合などは非常に困ってしまいます。

そのような対応するために、Cygwinのgccでは「-mno-cygwin」というオプションが提供されています。これを利用することで、Cygwin1.dllがない環境であってもバイナリを実行できるようになります。

このオプションを付加することによって起こりえる問題もあるのですが、それについてはここでは割愛します。下記のウェブページでは、より詳細に紹介されています。

[web] "-mno-cygwin"- Cygwin を使用した MinGW 実行形式のビルド - Studio Sixnine.
[web] Cygwin - Wikipedia

トラックバック(0)

このブログ記事を参照しているブログ一覧: Cygwinのライブラリに依存しないバイナリを生成する

このブログ記事に対するトラックバックURL: http://trialpc.net/mt/mt-tb.cgi/1433

コメントする

Advertizement

このブログ記事について

このページは、tetsuが2007年11月18日 17:30に書いたブログ記事です。

ひとつ前のブログ記事は「晩秋 ―織り成す色彩と冬への導き」です。

次のブログ記事は「長丁場の終了」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Powered by Movable Type 5.0

最近のコメント

カウンタ

リンク