▼スレッド
│
└◇586:Re:cygwinのライブラリを利用するVCアプリ [水口] 09/09 23:13
└◇587:Re[2]:cygwinのライブラリを利用するVCアプリ [S.Taka] 09/10
└◇603:Re[3]:cygwinのライブラリを利用するVCアプリ [ken] 09/21
└◇604:Re[4]:cygwinのライブラリを利用するVCアプリ [S.Taka] 09/24
└◇994:Re[5]:cygwinのライブラリを利用するVCアプリ [S.Taka] 03/16 <
私も詳しくないのですが、Cygwinのgccで普通にコンパイル・リンクしたa.outは実行時にcygwin1.dllを必要とします。スレッド一覧
a.outでなく.dllを作成したときどうなるかを調べて見られてはいかがでしょうか?
# cygwin環境の /bin をWindows風パスにしたものは、実行時のPATH変数に入っていますよね?
あるいは、gcc -mno-cygwin は試してみられましたか?
あまりお役にたてずにすみません。
ご返信ありがとうございますスレッド一覧
>私も詳しくないのですが、Cygwinのgccで普通にコンパイル・リンクしたa.outは実行時にcygwin1.dllを必要とします。
>a.outでなく.dllを作成したときどうなるかを調べて見られてはいかがでしょうか?
す、すいません。ちょっとわかりませんでした。
dllを作成したときどうなるか、とはgccで作成したDLLをさらにリンクするDLLをVCで作成してみよ。ということでしょうか?
# cygwin環境の /bin をWindows風パスにしたものは、実行時のPATH変数に入っていますよね?
すみません。ちょっと今確認できる環境にいないのでわかりませんが、VCのデバッガでcygwin1.dllがメモリにロードされていることは確認できているのでcygwin1.dll等のcygwin関連のファイルへのPATHは通っていると思います。
>あるいは、gcc -mno-cygwin は試してみられましたか?
はい。質問が舌足らずでしたが、gcc -mno-cygwinは試してうまくいっています。しかし、cygwinのXlibが使いたいのでcygwin1.dllをリンクする必要があります。
背景について全然お話していませんでした。
やりたいのは、PC-UNIX等で動くWindowsエミュレータWineをWindows上で動かしたいということです。
これができると何がうれしいかというと、WineはWin32APIをXlibを使用してエミュレートするのでWindowsアプリケーションをX上に表示することができます。そうなればcygwinのX上でWindowsアプリケーションとの連携作業もやりやすくなるし、Linux等からExcelやIEをLinux上にインストールせずともリモートで利用できるということです。(ライセンス的によいかは調べる必要がありますが)
それで、いきさつとしては、
1. WineをビルドするにはPosixエミュレートしているcygwinが適しているだろう。
↓
2. でもmakeが通らない。 (TT)
. cygwinでWineをビルドするにはかなり大変そうだ。
↓
3. いや、まてよ。Wineをすべてビルドする必要があるのか?
kernel32.dll等エミュレートする必要がないものがほとんどだ。
user32.dllとgdi32.dllとおそらくcomctl32.dll、comdlg32.dllぐらいさえコンパイルできればAPIフックのテクニックを利用して目的が達成できるのではないか?
↓
4. ひとまず、user32.dll等のDLLを作成して、MSDN
等のサンプルプログラムから利用してみよう。
↓
5. でもその前に、cygwinのgccで作成するDLLがVCで利用できるのか試してみよう。
↓
6. 動かない。ショック !
というわけで、このような質問をさせていただきました。
しかし、このような質問をしているようでは実現は
遠そうですね…
長々と失礼いたしました。
> 背景について全然お話していませんでした。スレッド一覧
> やりたいのは、PC-UNIX等で動くWindowsエミュレータWineをWindows上で動かしたいということです。
>
> これができると何がうれしいかというと、WineはWin32APIをXlibを使用してエミュレートするのでWindowsアプリケーションをX上に表示することができます。そうなればcygwinのX上でWindowsアプリケーションとの連携作業もやりやすくなるし、Linux等からExcelやIEをLinux上にインストールせずともリモートで利用できるということです。(ライセンス的によいかは調べる必要がありますが)
>
cygwin-xfree mlで、同じようなことをしようという話題で
盛り上がっているようです。
http://cygwin.com/ml/cygwin-xfree/2002-09/msg00094.htmlから始まる一連のスレッドです。
参考までに。
おお、すごいですね。スレッド一覧
話しが盛り上がってついには、
David Fraserさんという方がSource Forgeに
XOpenWinというプロジェクトを立ち上げたようです。(http://xopenwin.sourceforge.net/)
私の方は時間とスキル不足でなかなか進展がないから、
こちらの方を期待しようかな。
WineのCygwinへの移植をあきらめて、スレッド一覧
同じWin32API実行環境であるPEACEの一部をCygwinに移植してみました。
興味のある方は、http://www.d1.dion.ne.jp/~sawanaka/peace/を参照してください。
では。