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

2011年8月12日金曜日

Puppy LinuxをFull installで使う

「Puppy Linux 日本語版」のサイトには、動作条件として128MBで動く旨記載されている。
が、マニュアルには、
「フルインストール」ではパピーを通常のリナックスと同じ様にハードディスクにインストールします。メモリの容量が256MBよりも少なかったら、この種のインストールは良いと思います。
と書かれている。
自分のデスクトップPCはこの条件に当てはまるので、素直にFull installをしてある。

また、デスクトップPCには、Frugal installもやっているので、チョット比べてみた。
完全に同じ条件とは行かないが、

  ウィンドウマネージャ・・・IceWM
  デスクトップ・・・・・・・Idesk(+ Conky)
  Webブラウザ・・・・・・・Opera 11.50

この条件でYouTubeの同じ動画を表示再生してみた。

以下がその時のConkyが表示した値
  ・動いているプロセス数は同じ55
  ・CPUはともにほぼ100%(95%~100%を行ったり来たり)
  ・使用RAM(最高値)
    Full    81.71MiB
    Frugal  72.46MiB
  ・Swap(最高値)
    Full    47.55MiB
    Frugal  58.97MiB

これを見る限りでは、メモリの使い方に違いがあるように感じられる。
意外(?)にも、RAM使用料はFull installの方が多く、その代わりSwap領域の使用はFrugal installの方が多い。

非常に乱暴な言い方をすると、Frugal installの方がスワッピングが頻繁に起こる事になる。
自分のPCではHDDも高速とは言えないので、スワッピングが頻繁に行なわれると、それだけで操作性が悪くなってしまう。操作をしなくとも、動画を再生させていると、その動きには差が見られる。Full installの方がコマ落ちしながらも、まだ見られる状態で、Frugal installでは画像と音声のズレも激しく、チョット我慢できる範囲とは言い難い。

確かに、Puppy Linuxの特徴を活かすにはFrugal installが最適だとは思うが、低スペックパソコンの再利用と言う点では、Full installに分があるように思えて来る。
飽く迄、私見と言う事で、、、。

2011年8月6日土曜日

Puppy Linux 「デスクトップを更新しています」?

Wary Puppy 5.1.1日本語版で、ウィンドウマネージャをFluxboxに替えたら、起動の度に
「デスクトップを更新しています...」
って言われて待たされる。

JWMからIceWMに替えた時は出ないんだけどなぁ。Fluxboxのパッケージが合ってないんだろうな。
でも、今のパッケージのデフォルトが好きなので、これを変えたくない。
じゃ、何とかして「デスクトップの更新」を止めればいいじゃん。

「デスクトップの更新」って言うんだから、デスクトップアイコン、壁紙等の設定を「更新」してるんだろうなと思ったけど、どうも「更新」というよりPuppy Linuxが管理するデフォルト状態へ「復元」してるっぽい感じ。

メニュー項目を自分なりに編集しても「デスクトップの更新」が掛かると、編集した部分が消されてる。
でも、PETパッケージ・マネージャーでインストールし、メニュー項目に追加されたものは、それを維持している。
まぁ、起動時の更新を止めたいんだから、「.xinitrc」あたりを見てみよう。

# fixmenus when locale is changed
which fixmenus_on_locale &>/dev/null && fixmenus_on_locale

# fixmenus when locale is changed
[ -x /usr/local/bin/fixmenus_on_locale ] && /usr/local/bin/fixmenus_on_locale

この辺が怪しいと当たりを付けて、コメントアウトしてみた。
一旦Xを抜けてコンソールへ。

xwin fluxbox

として、ウィンドウマネージャを起動すると、、、。ビンゴ!
「デスクトップを更新しています...」が出ないで、すんなり起動した。
今度は、PCを再起動して確認。OK、素直に起動しましたねぇ。



本当は
xwin や fixmenu なんてファイルの中身ものぞいてみたんだけど、いろいろなファイルを参照していて、追いかけるのが面倒になって、途中で止めてしまった。
最終的に、「」を頼りに上記のコメントアウトをやってみた訳。
なので、理屈として正しく動いているかは不明。やってみる場合は、お約束の「自己責任」で、、、。