2009年9月5日土曜日

Ubuntuのインストール

今日は、クロス環境のインストールにいそしもうと思っていたのですが、ふと、考えました。binutils や gcc では、どんなターゲットのツールを作ったら良いのでしょうか。

とりあえず、Ångström ディストリビューションを立ち上げるのが先決だと思いつき、デスクトップ環境に、VMware Workstation 6.5.3 の力を借りて Ubuntu 9.04 をインストールしてみました。

今日はそこで力尽き、妻と近所の焼鳥屋になだれ込みました。

2009年9月4日金曜日

OpenEmbedded

BeagleBoard のデモは、Ångström とかいうディストリビューションでできていて、なんでも OpenEmbedded とかいうツールでビルドするのだそうです。大抵こういう重々しい雰囲気のときは、若気の至り的な匂いがプンプンします。いわゆる、特定用途向けパワーツールを、極めて一般的にしてみました、みたいな。

OpenEmbedded というのも、目的が曖昧な割には徹底的に作ってしまったようなツールみたいで、ドキュメントも不足気味で、とりあえず動かしてみたのですが、一体裏で何をしているのか良く分かりません。個人的には、こういうパワーツールは苦手です。作った人には明確であっても、他人にはどうやって応用するのか、全然分かりません。

とりあえず、いきなりパワーツールで楽をしようとした私が悪いわけで、まずは素直に binutils、gcc のクロス環境から構築することにしました。ソースは FSF からダウンロードして、README と configure を見ながら、いろいろ苦吟しています。ああ、よく考えたら configure とか automake も、実はよく分かっていなかったんだっけ。プログラマ 35歳限界説って、そういうこと!? (← 違います)

CentOS のパッケージ管理

RedHat 系 Linux から離れて、早 7年の私です。久しぶりに RedHat 系 Linux を使ったら、分からないことばかりで驚きました。

昔は、rpm コマンドを直接叩いていたと記憶しているのですが、最近は yum とかいうツールが流行のようです。説明はここが参考になりました。

さらに、公式(?)でないパッケージがあって、dag とかいうんだそうです。年寄には全然分からん。ここを参考にしました。 寄る年波には勝てません。

CentOS のインストール

VMware ESXi に、CentOS 5.3 をインストールしてみました。開発環境として使うためです。

最初インストールしていたら、インストーラがエラーを起こして失敗しました。このときは、テキストインストーラを使い、メモリは 256MB で、ディスクのパーティション設定を目視するようにしていました。再度、今度はグラフィカルインストーラで、メモリを 384MB、ディスクのパーティション設定をおまかせにしたら、無事にインストールできました。一度にいろいろ変えたので、何が原因か分かりません。ま、動けば正解ということで。

VMware Workstation 4.5.3 は、やはり時代遅れか?

昨日、VMware Workstation 4.5.3 上に最新の Debian を入れようとして、VMware をクラッシュさせたのですが、今日も懲りずに、今度は CentOS で試してみました。

しかーし。やっぱりダメでした。カーネルはブートしてくるのですが、なんとインストール途中(テキストベースのインストーラですが)でクラッシュします。やっぱり、新しい葡萄酒は新しい皮袋に、つーことですかね。

最新の VMware の導入を検討したいと思います。考えてみれば、VMware は 2.0 を購入して、4.5 を購入して、今回購入すると 3つめのライセンスになります。結構なヘビーユーザーだと思うのですが、しぶチンなので、アップグレードの恩恵を受けた記憶があまりありません。6.5 は、無事に 7 にアップグレードできると良いなあ。

ちなみにフリーライセンスが 30日間有効なのですが、為替レートの推移を見ながら発注をかけようと思います。って、US$1 が 1円動いても、180円くらいしか変わらないんですけどね。(^^)

2009年9月3日木曜日

Debian 恐怖症

そうそう、Debian/GNU Linux です。むかーし(10年以上も前) Debian をインストールしたことがあったのですが、当時、Debian のインストーラが冗長で大嫌いになり、それからというもの Debian 恐怖症でした。

Ångström ディストリビューションを調べていたら OpenEmbedded というのがでてきて、さらにそいつを調べていたら、Debian のことが先頭に書かれていました。ははーん、Ångström の推奨デスクトップ(ディストリビューション)は Debian なのか、と思い、恐怖症を払拭すべく Debian をインストールしてみました。そもそも私は Ubuntu は嫌いでなく、こいつは Debian ベースなのでした。

Debian のインストールは、昔と違って比較的簡単にできました。唯一ハマったのは、VMware Workstation 4.5 ではインストールできなかったことです。でも、まあ、4.5 は古すぎるからしようがないよね、ということで、ESXi 4.0 にインストールしました。さすがに ESXi 4.0 は最新環境ということで、今度は無事にインストールできました。

次はパッケージ関連です。aptitude とかいうパワーツールがあって、こいつでパッケージ管理するのがお勧めらしいです。が、最初はうまく行っていたものの、git-core をインストールしようとしてハマりました。なんだか、パッケージが broken だとか言って、全然インストールできないのです。なんだよ、それ。そんな基本的なパッケージがインストールできないようなディストリビューションは、即、捨てです。かなり素朴な NetBSD の pkg システムですら、何かトラブると根本原因を追跡するのは厄介なのに、ここまでガチガチに構成されたパワーツールが期待通りに動かないと、ビギナーが原因追及するのは困難です。分解できない道具は壊れてはいけない、というのが鉄則です。

Debian はインストールしたばかりだし、特に未練はないので、別のディストリビューションを探すことにしました。昔は Slackware が好きだったのですが、さすがにこの御時勢では顰蹙を買いそうなので(というか、誰にも相手にして貰えないかもなので)、いまのところ CentOS を候補にしています。以前、知人の J さんが勧めてくれたというのも、その理由です。

とりあえず、CentOS を ESXi 上にインストールすれば開発環境はできますが、SD メモリカードのアクセスやシリアルコンソールのように、ダイレクトに BeagleBoard をホスト Linux に繋ぎたくなるシチュエーションでは ESXi では困ります。しかし、手持ちの VMware Workstaion 4.5 では厳しい状況なので、VMware Workstation 6.5 の導入を考えています。US$189 は安くはないですが、非常に優れたソフトなので検討してみます。(円高ですしね。) まずは評価版をダウンロードしました。明日以降、こいつの上に(ESXi とは別に)デスクトップの Linux 環境を載せてみようと思います。

今日も、「自分としては」全速力で走ってしまったので、とても疲れました。おまけに、Linux のことはほとんど忘れてしまっている自分が悲しくなりました。(7年前は Linux のドライバ書いていたのです。)

今日は、ここまで。

Linux はブートできたが…

ドキュメントをいくつか読み、X-Loader、U-Boot 等の役割はだいたい分かりました。Linux カーネルを NAND Flash に焼くこともできました。しかし、root ファイルシステムを NAND Flash 上に置くことができずに、身動きが取れなくなりました。今日はここで終わりにすることにします。

ところで、現状いまひとつ良く分かっていないのは、以下の点です。

  • .scr ファイルの働き (誰が、なんて名前の .scr ファイルをいつ読み込んで、そして作用するのか)
これは明日、調べてみることにします。

きょう分かったのは、結局のところ、BeagleBoard の標準デモバイナリをダウンロードしても rootfs しか入っていないので、大したことはできん、ということです。一つの方法としては、Ångström の大型デモをインストールするというものがありますが、ウィンドウマネージャまで入っているそうです。うーん、いわゆるデスクトップシステムは要らんのだけどなあ。でも、スクラッチからディストリビューションもどきを作るよりも、でかいシステムから不要なものを削るアプローチのほうが楽かも知れない。これは、また今度考えてみよう。

当面必要と思われるのは、以下の通り。

  • mtd-utils (これがないと、Linux 上から NAND Flash の操作ができない)
  • JFFS2 関連のユーティリティ (なんと、Debian には入ってなかった。当たり前か。。。これは後述)
  • Wi-Fi 関連のユーティリティ (iwconfig とか)
  • Linux ホストを用意して、クロス開発環境のインストール
ここまでできれば、LAN に接続できて、おそらく NFS マウントもできて、作業がはかどるようになるでしょう、きっと。

フォロワー