2011年9月3日土曜日

Puppy Linuxでmakeが、command not found

デスクトップPCにPuppy Linux4.3.1日本語版を入れたときの話。
当時のことを記憶を頼りに(twitterでつぶやいた内容を読み返しながら)書いてみる。


どうしても音が鳴らなくて、いろいろ調べてみると「isapnptoolsってのを使ったらどうか」
という記述を見つけた。
で、isapnptoolsを入れるには、makeコマンドで コンパイルしてやらないといけない。
が、いざmakeコマンドを実行してみると

command not found

Puppy Linuxでmakeコマンドを使うには、別途開発環境を入れないといけないとのこと。

日本語のサイトには、devx_xxx.sfsを個人設定保存ファイルと同じパーティションに置けば
起動時に読み込むと書いてあったが、自分の環境では駄目だった。
バージョンが悪いのかと思って色んなバージョンを試したり、
置き場所が悪いのかと置き場所を変えてみたが上手く行かない。

メニューを見ると、起動時にsfs読み込むような設定(パピーブートマネージャですね)
があったので、これに登録したらあっさりと読み込まれた。

簡単な事だけど、拾ってくる情報が自分の環境に合っているかどうかで大きな違いだった。
(Puppy Linux4.3.1日本語版なら devx_431JPbeta3-sfs3.sfs  が良いのかな)

ところがどっこい、、、。
Full install の場合は、sfsをそのままロードできないらしい。

検索してみると「devxをマウントしてコピーする」みたいな記述をみつけた。
ただ、「何処にどうやって」コピーするといった、具体的な方法が書かれていない。

とりあえずやってみよう!
先ずは、devx_431.sfsをマウントする。
マウントされた状態で開くと展開されたファイルが見える。
これをコピーするんだな?

で、作業用に適当なディレクトリを作って、そこに保存した。

command not found

パスが通ってないんだから駄目なんだろうな?
で、パスを追加(したつもりだけどexportしてなかったかも??)してやっても、、、。
相変わらず駄目でやんす。

何でやねん!
えーい!ままよ!!

devxを展開して出来たbinetcliboptsbinuser、をそのまま既存のディレクトリに
上書き保存してやれ!

コマンドを使ってコピーするなんて事は知らないので、ROX-Filerで引っ張って来てコピーした。
途中で何か聞かれたけど、構わず「はい」を押しつづける。(良い子はマネしないでね!)
相当な時間を掛けて、、、。終わったかな?

ほっほー! makeコマンドが通りましたぜ!!

多分、devxを展開して出来たディレクトリを適当な所にコーピーしたんでは(ファイルの参照、ライブラリの不足等で?)
実行できず、既存のファイルと統合させることで始めて使えるんだろうなと推測。

まぁ、何とかmakeコマンドが使えるようになりました。



最終的に音は出たのか?
出ました。

isapnptoolsを実行してisapnp.confを出力し、内容を自分のPCに合わせて(IRQやら諸々)編集。
modprobe.confも編集。
ALSAが勝手に読み込むモジュールをkill。
起動時に、ALSAより先にisapnp.confを読み込むようにetc/rc.d/rc.sysinitを書き換えて、
(同ファイル内でALSAの実行タイミングを調整)。
何とか音が出るようになった。

参考
http://sakurapup.browserloadofcoolness.com/viewtopic.php?f=14&t=904&p=4997&hilit=isapnp#p4997
http://linuxjf.sourceforge.jp/JFdocs/ISAPnP-HOWTO-7.html

0 件のコメント :

コメントを投稿