non vorrei lavorare

ブログ名の通りです。javascript three.js mruby rust OCaml golang julialang blender

Homebrewで--without-docsなしでOctaveをインストールしたい

おはようございます。奥さんが入院しており、実家で息子達と過ごしているkjunichiです。

 

何でか

パッケージのインストールが出来ない。最近Octaveで、

pkg install -forge hoge

で、画像処理等が出来るらしいことを知ったのだが、--without-docsでインストールするとhoge.texiが開かないとなり、pkgコマンドでパッケージのインストールが出来ない。

解決方法

大前提

TeXを入れる。

Homebrewではtexinfoはあるが、TeX本体は含まれず、Octaveのビルド(というかmake install実行時)時にmakeinfoコマンドが内部的に使用するTeX関連のコマンドが必要になるが、これはHomebrew外で調達する必要がある模様。

TeX入れてから

どうも、Homebrewでは環境変数のPATHを見てくれない。

/usr/texbinの必要なファイルを/usr/local/binにシンボリックリンクを作成することで、makeinfoでエラーを回避出来た。

cd /usr/local/bin
ln -s /usr/texbin/tex .
ln -s /usr/texbin/dvips .
ln -s /usr/texbin/pdftex .

喜んでツイートしたら、、

もっと簡単な解決方法

実は最近のHomebrewはsuperenvという仕組みが導入されて、PATH環境変数を見なくなった。

従来のPATHを参照するためのオプションも残され、それが「--env=std」

$PATH=/usr/texbin:$PATH
brew install octave --env=std

Link

まとめ

Homebrewにsuperenvなる仕組みが導入され、PATH環境変数を読みに行ってくれなくなった。--env=stdを付けることで、この仕組みを回避できる。しかし、superenvが導入されているにも関わらず、brew doctorだとPATHの設定に文句言ってくるのが微妙な今日この頃。

関連記事

2年前の記事