ピザ屋がお酒も始めました

たまには技術の話. PizzaFactory の話は pizzafactory.jp に書くべきなのだけれども,諸般(外部)の事情で正式リリースとは言えないので.

PizzaFactory for Homebrew アルファリリース

背景

私個人としては,OSX でパッケージ管理ソフトを使うのは,PPC だった時代に fink を使ってあまりよい印象を持っておりませんでした. そんなわけで,OSX版のPizzaFactoryも,pkg を作って配ってきたわけです.

しかし,pkg は,それなりに手間のかかること. 更新頻度が私の忙しさで決まってしまうのが悩みでした.

Homebrew

で,最近になって,TOPPERS のカーネルコンフィギュレータを作らねばならなくなって,boost のインストールが必要になり,ココロが折れました. そして Homebrew に助けてもらいました.

OSXのデフォルトのコマンドを上書きしないという方針,気に入りました. あと,Formula 既述の簡潔さも.

それに,Linux や MinGW/MSYS への対応も,そこそこ進んでいる様子.

ああ,もう PizzaFactory も Homebrew で配っちゃえばいいんじゃないの? と.

PizzaFactory for Homebrew のインストール方法

Homebrew のインストール方法は割愛します. brew doctor の対応がある程度済んだら,PizzaFactory 用の tap を追加します.

1
brew tap PizzaFactory/commandline

つらつらと読み込まれてきます.

1
2
3
4
5
6
7
8
Cloning into '/usr/local/Library/Taps/pizzafactory/homebrew-commandline'...
remote: Counting objects: 114, done.
remote: Compressing objects: 100% (39/39), done.
remote: Total 114 (delta 82), reused 104 (delta 73)
Receiving objects: 100% (114/114), 11.70 KiB | 0 bytes/s, done.
Resolving deltas: 100% (82/82), done.
Checking connectivity... done.
Tapped 67 formula

続いて インストール可能なツールチェインの一覧を得ます.

1
brew search 'pf-gnuchains4x-' | grep -v 'lib$'

ズラズラっと出てきます.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
pf-gnuchains4x-arm-eabi
pf-gnuchains4x-arm-elf
pf-gnuchains4x-avr-elf
pf-gnuchains4x-bfin-elf
pf-gnuchains4x-fr30-elf
pf-gnuchains4x-h8300-elf
pf-gnuchains4x-i386-elf
pf-gnuchains4x-lm32-elf
pf-gnuchains4x-m32c-elf
pf-gnuchains4x-m32r-elf
pf-gnuchains4x-m68k-elf
pf-gnuchains4x-microblaze-elf
pf-gnuchains4x-mips-elf
pf-gnuchains4x-mips64-elf
pf-gnuchains4x-mips64-toppershrp
pf-gnuchains4x-nios2-elf
pf-gnuchains4x-powerpc-elf
pf-gnuchains4x-rx-elf
pf-gnuchains4x-sh-elf
pf-gnuchains4x-v850-elf
pf-gnuchains4x-xstormy16-elf
pf-gnuchains4x-xtensa-elf

arm-eabi ならば,次のようにしてインストールします.

1
brew install pf-gnuchains4x-arm-eabi

お手軽ですが,本稿執筆時点では,ソースコードからビルドします. 1〜2時間は覚悟してください.

この点が,正式リリースと言わない理由です. Homebrew には,bottle と呼ばれる,バイナリパッケージによるインストールのサポートがあります. しかし,これが Travis-CI のバグ修正のため滞っています.

なので,今のところは,どうしても欲しくて欲しくてという方のみお勧めします.

あと,tapへのプルリクは歓迎です.