Twitterで「#gentoo #prefix では、 #ImageMagic もマスクされてるじゃないか! #MacPortsも導入しようかな。」とつぶやいたら、"autounmask"というものを紹介されたので、ついでにちょっといろいろ調べてみた。
Google先生に問い合わせて、最初にたどり着いたところはここ。せっかくなので、色々試してみた。
まずは、/etc/make.confのCFLAGSの設定から。どうも最近のgccには"-march=native"というものが存在しているらしい。参考サイトでは分散コンパイルを考慮して、展開したものを使っているが、うちでは別にdistccとかは使わないので、そのまま設定してみることにした。
その後は、MAKEOPTSやFEATURESの説明が続くが、そんなに頻繁にコンパイルしないし、ということで放っておくことにした。
USEフラグも色々書いてもごちゃごちゃしてよくわからなくなるだけなので、必要があるときに必要なものをの精神で特に追加はしなかった。
make.confの現状はこんな感じ。
- USE="unicode nls cxx examples bzip2 zlib gzip png jpeg pdf truetype
- "CFLAGS="-march=native -O3 -fomit-frame-pointer -pipe"
- CXXFLAGS="${CFLAGS}"
たいした書いていません。
パッケージ探しが楽になりそうなので、portage-utilsは導入することにした。
# emerge portage-utils
でなんてことなく、インストール完了...と思ったら、"-march=native"なんて知らないよとエラーで終了してしまった。Gentoo Wikiをみると、GCC4.2.3以上で使えると書いてあるが、いまインストールされているgccは4.2.1だった。"make.conf"の"-march=native"を"-march=nocona"に変更して再度トライしたら今後はうまくいった。
本題からずれてしまっているが、色々導入するにしてもGentoo PrefixではMaskされているパッケージが多いので、さっさと本題のautounmaskを導入する。
# emerge autounmask
とすればOKみたい。依存パッケージがいくつかあるが、すんなり入ってくれた。
さっそく当初の目的のImageMagickをautounmaskでMaskを外してみることにした。
# autounmask -n media-gfx/imagemagick-6.6.5.6
"-n"オプションをつけると、すべてのバージョンのMaskを外してくれるようだ。実行結果では、このファイルに追加したよというのも表示される。インストールも無事できた。
コメント