Linux 上で Windows のモジュールをコンパイルする方法は Google 先生に聞くと結構出てくるけど、その逆がなかなか出てこない。
 
 ということで Windows 上で Linux のモジュールをコンパイルする方法をメモ。
 
 #contents
 
 * Windows 上に UNIX 環境を構築 [#b84e6734]
 Cygwin か MinGW/msys ということになると思う。導入に関する詳細は下記ページで。
 
 - [[UNIX on Windows]]
 
 ここでは Cygwin を使ってみる。
 
 * ソースの入手 [#kb724182]
 ターゲットとなる Linux の C++ 環境と、Cygwin でつくる gcc のソースが必要になる。
 
 今回、Linux は fedora 12 を使うことにする。ここは、お好みのディストリビューションで OK かと思う。
 今回、Linux は fedora 11 を使うことにする。ここは、お好みのディストリビューションで OK かと思う。
 
 fedora の場合は、下記サイトから C ライブラリをもらってくる。
 
 - [[IIJ:ftp://ftp.iij.ad.jp/]]
 -- [[glibc-2.11-2.i686.rpm:ftp://ftp.iij.ad.jp/pub/linux/fedora/releases/12/Fedora/i386/os/Packages/]]
 
 - [[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 で。
 FTP で上手くいかないときは [[HTTP の方:http://ftp.gnu.org/gnu]] で。
 
 - [[GNU(http):http://ftp.gnu.org/gnu]]
 -- [[binutils:http://ftp.gnu.org/gnu/binutils]]
 -- [[gcc:ftp://http.gnu.org/gnu/gcc]]
 
 今回は下記を使う。
 
 - [[binutils-2.19.tar.gz::ftp://ftp.gnu.org/gnu/binutils/]]
 - [[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