Linux 上で Windows のモジュールをコンパイルする方法は Google 先生に聞くと結構出てくるけど、その逆がなかなか出てこない。

ということで Windows 上で Linux のモジュールをコンパイルする方法をメモ。

#contents

* Windows 上に UNIX 環境を構築 [#b84e6734]
Cygwin か MinGW/msys ということになると思う。導入に関する詳細は下記ページで。

- [[UNIX on Windows]]

ここでは Cygwin を使ってみる。

* ソースの入手 [#kb724182]
ターゲットとなる Linux の C++ 環境と、Cygwin でつくる gcc のソースが必要になる。

今回、Linux は fedora 11 を使うことにする。ここは、お好みのディストリビューションで OK かと思う。

fedora の場合は、下記サイトから C ライブラリをもらってくる。

- [[IIJ の公開 FTP:ftp://ftp.iij.ad.jp/]]
-- [[glibc-2.10.1-2.i586.rpm:ftp://ftp.iij.ad.jp/pub/linux/fedora/releases/11/Fedora/i386/os/Packages/]]
-- [[glibc-headers-2.10.1-2.i586.rpm:ftp://ftp.iij.ad.jp/pub/linux/fedora/releases/11/Fedora/i386/os/Packages/]]
gcc は GNU のサイトから引っ張ってくる。

- [[GNU(ftp):ftp://ftp.gnu.org/gnu]]
-- [[binutils:ftp://ftp.gnu.org/gnu/binutils]]
-- [[gcc:ftp://ftp.gnu.org/gnu/gcc]]

FTP で上手くいかないときは [[HTTP の方:http://ftp.gnu.org/gnu]] で。

今回は下記を使う。

- [[binutils-2.19:ftp://ftp.gnu.org/gnu/binutils/]]
- [[gcc-3.3.4:ftp://ftp.gnu.org/gnu/gcc/gcc-3.3.4/]]

* Cygwin 環境の準備 [#e92e2709]

今回は以下のようにする。

- ダウンロード/ビルド ディレクトリ → /home/user/work
- インストール先 ディレクトリ → /usr/linux

ということで、/usr/linux に glibc-2.11-2.i686.rpm を入れる。

 ls /usr/linux
 glibc-2.10.1-2.i586.rpm

/home/user/work に GCC のパッケージを入れる。
 $ ls /home/user/work
 binutils-2.19.tar.gz gcc-3.3.4.tar.gz
※ これはふつうにエクスプローラで移動してくれば OK。

まずは、glibc を展開。

 $ cd /usr/linux
 $ rpm2cpio glibc-2.11-2.i686.rpm | cpio -id
 $ rpm2cpio glibc-headers-2.11-2.i686.rpm | cpio -id

これで以下のフォルダが展開される。(5個)

 etc
 sbin
 usr
 lib
 var



-----
[[Linux メモ]]

トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS