Package Manager for Interix

Interix用のパッケージ集(自動ビルドシステム)です。

収録パッケージ

※所要時間はAthlon 64 X2 3800+でビルドとインストールにかかった時間です(ソースのダウンロード時間は含んでいません)。機種によって大きく変動しますが、参考値として提示しています。

パッケージバージョン所要時間備考
autoconf2.610:00:24
automake1.10:00:23
bash3.20:02:47
bison2.30:01:04
bzip21.0.40:00:15
cvs1.11.220:01:38
distorm1.6.200:00:07x64 逆アセンブラ
flex2.5.4a0:00:08
gettext0.16.10:08:59
ginstall4.10:02:18GNU fileutilsより
gmake3.810:00:57GNU make
gtar1.16.10:02:47GNU tar
i386-elf-binutils2.170:07:13ELF クロスコンパイラ
i386-elf-gcc4.1.20:16:23
libiconv1.110:01:33
libtool1.5.220:01:06
m41.4.80:00:58
mingw-binutils2.170:07:01Windows クロスコンパイラ
mingw-gcc4.1.20:22:40
mingw-runtime3.90:00:13
mingw-w32api3.60:00:14
mkisofs2.010:03:07
nasm0.98.390:00:28
openssh4.5p10:02:59
openssl0.9.7m0:04:47
perl5.8.80:08:00マイクロソフト提供のものより新しい
python2.50:06:11
readline5.20:00:48
subversion1.4.30:11:21
texinfo4.8a0:01:21
wget1.10.20:00:44
x86_64-elf-binutils2.170:07:14x64 クロスコンパイラ
x86_64-elf-gcc4.1.20:16:49
yasm0.6.00:01:03x64 アセンブラ
zlib1.2.30:00:10
zsh4.2.60:02:40
2:26:50

開発動機

  1. マイクロソフト提供のツールだけではソースのコンパイルにも不自由したため。
    • 各自必要なものをソースからコンパイルして使うことが想定されているようですが、そのコンパイルすらままならない状態だと感じました。
  2. Interop Systemstool warehouseが登録制に移行してしまったため。
  3. NetBSDのpkgsrcがWindows VistaのSUAではうまく動かなかったため。
    • ビルド中にkshでMemory faultが発生して止まってしまいます。core.dmpがgdbでは分析できなかったことと、タイミングによって挙動が異なるため、原因は突き止められませんでした。kshが多重に呼び出された際の処理に問題があるように見受けられます。XPのSFUでは便利に使っていたため残念です。
  4. Interixでは単純なconfigure && makeだけではすんなりコンパイルできないことが多く、修正のノウハウを蓄積するため。
    • 最初は必要なものを個人的にmake && make installして使っていましたが、修正にかなり手間が掛かったため、作業を何らかの形で残しておこうと考えました。
    • 個別のノウハウなどは追々まとめていく予定です。手っ取り早く知りたい方はスケルトン(後述)をご覧ください。

対応OS

  • Windows XP Professional 32bit (SFU 3.5)
  • Windows Vista Ultimate 32bit (SUA)

注意

  • Windows Server 2003のSUAは動作未確認です。多分動くはずです。
  • gccを前提としています。Vista 64bitのSUAにはgccが提供されていないため、32bitのみの対応となっています。SUA SDKがバージョンアップして64bit版でもgccが提供されました。gccが生成するバイナリは32bitコードです。
    • gccを対応させるためには、binutilsでPE32+をサポートする所から始めないといけないため、かなり難しいと思われます。binutils-2.18でPE32+がサポートされました。
    • 64bitでのコンパイルのノウハウ等は別途調査する予定です。64bit環境のgccでは32bitのバイナリをコンパイルして動かすため、基本的に32bitと同じようです。

ダウンロード

アップデートされたものがメンテされています。

古い配布物

備考

  • 自動でソースをダウンロードしてビルドするMakefileやパッチだけを収録しています。そのため配布サイズは非常にコンパクトです。
    • この形態を「スケルトン」と呼びます。
    • FreeBSDのportsやNetBSDのpkgsrcに似ています。
  • 容量や帯域の関係上、コンパイル済みのバイナリパッケージは配布していません。
    • 好評であればSourceForge等での提供も検討します。
  • パッケージ管理スクリプトなど独自に書き起こした部分はパブリックドメインとします。

使用手順

ソースを自動的にダウンロードするため、インターネット接続を前提としています。

  • C Shell
% gunzip -c pmgr-interix-0.1-20070313.tar.gz | tar xvf -
% setenv PATH "/opt/pmgr/bin:$PATH"
% cd pmgr-interix/base
% make install
  • Korn Shell
$ gunzip -c pmgr-interix-0.1-20070313.tar.gz | tar xvf -
$ export PATH="/opt/pmgr/bin:$PATH"
$ cd pmgr-interix/base
$ make install

この後はインストールしたいソフトを選んで入れます。pmgr-interix/build/の中からディレクトリを選んでcdして、make installとしてください。buildディレクトリでmake installとすると、すべてのパッケージをインストールするため大変な時間が掛かります(Athlon 64 X2 3800+で約2時間半)。

トラブルシューティング

  1. gccがコアダンプします。
    • DEPが有効になったマシンのWindows XPでは、SFUのgccが引っ掛かってしまいます。boot.iniを書き換えてDEPを無効にする必要があります。操作を間違えるとWindowsが起動しなくなる危険がある上、セキュリティも弱くなってしまうため、自己責任でお願いします。そのため手順の詳細は省略させていただきます。
  2. make installでPermission deniedになります。
    • 管理者でmake installを実行してください。
  3. suが使えません。
    • パスワードを掛けていないとsuが使えないようです。シェルのショートカットを右クリックして、別のユーザーで実行してください。
  4. いちいち管理者になるのが面倒です。
    • 管理者でインストール先を作成してパーミッションを開放すれば、その後は管理者にならなくても操作できます。ただしこれをやると作業ミスから保護されなくなるので、お勧めはしません。自己責任でお願いします。
      $ mkdir /opt/pmgr
      $ chmod 777 /opt/pmgr
  5. configureがとても遅いです。
    • ウィルス対策ソフトを有効にしていると遅くなってしまうことがあります。ウィルス対策ソフトを停止すれば高速化しますが、セキュリティ的な危険性があるため推奨しません。
  6. makeが止まって動かなくなります。
    • エラーや[Ctrl]+[C]で中断したときなど、kshのプロセスがゾンビになって残ってしまうことがあります。これを繰り返しているとmakeが進まなくなることがあります。このときタスクマネージャに大量に残っているはずですが、強制終了しても解決しないことが多いです。こうなると再起動するしかなくなります。

添付ファイル: filearm-wince-pe-20081019.tar.gz 623件 [詳細] filephp-5.2.6-20080728.tar.gz 526件 [詳細] filelibxml2-2.6.32-20080728.tar.gz 553件 [詳細] filex86_64-mingw32-20080726.tar.gz 444件 [詳細] filempfr-2.3.1-20080726.tar.gz 514件 [詳細] filegmp-4.2.2-20080726.tar.gz 624件 [詳細] fileginstall-20080104.tar.gz 717件 [詳細] fileflex-20080104.tar.gz 748件 [詳細] filepmgr-interix-0.1-20070313.tar.gz 705件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2009-12-11 (金) 17:35:53 (4338d)