miedaの備忘録

わすれないように

sublime text 3 で python3を使ったビルドをする

Python3でのビルド環境を追加する。
tools -> Build System -> New Build System ...
から

{
	"shell_cmd": "python3 -u $file",
	"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
	"selector": "source.python"
}

をPython3.sublime-buildで保存する。

PYTHONPATHも独自設定が必要な様子なので
preference -> Setting - User に以下を追記

    "build_env":
    {
        "PYTHONPATH": "/usr/local/lib/python3.4/site-packages"
    }

pythonでグラフを描く

matplotlibがいいらしい

brew install freetype
sudo ln -s /usr/local/opt/freetype/include/freetype2 /usr/local/include/freetype
pip3 install matplotlib

でいけるらしいが、3行目がfreetype関連でうまくいかない。
とりあえず、足らんと言われてるヘッダーをシンボリックリンクで強制的に読ませる。

sudo ln -s /usr/local/Cellar/freetype/2.5.3_1/include/freetype2/ft2build.h /usr/local/include/ft2build.h

python3の開発環境を準備

はじめに

入れるもの

  1. python3本体
  2. Numpy + Scipy
  3. Qt5 + qtpy

番外処理 : Homebrewを最新に (別の記事にしてリンクする事 for 自分)

brew update

Permission Denied とかでるなら

sudo chown -R $USER /usr/local

を試してみる。
linkできねぇ!って時もこれ。
OSアップグレードとかの時になんか書き変わってんの?
参考:
Homebrew で何かインストールするとき "Permission denied" と言われたときの対処法 - ひよこ3分07秒のはてなブログ

メンテもしておく

brew upgrade

brew の状況も確認しておく

brew doctor

python3 + Numpy + Scipy

Homebrew ならインストールはピアノ弾くよりも簡単

brew install python3
pip3 install numpy
pip3 install scipy

Qt5 + pyqt

GUI開発用。
上の二つの他に、それの仲介をする"sip"のインストールが必要

brew install qt5
brew install sip --with-python3
brew install pyqt5 --with-python3

qt5インストール時に

This formula is keg-only, so it was not symlinked into /usr/local.

Qt 5 conflicts Qt 4 (which is currently much more widely used).

Generally there are no consequences of this for you. If you build your
own software and it requires this formula, you'll need to add to your
build variables:

LDFLAGS: -L/usr/local/opt/qt5/lib
CPPFLAGS: -I/usr/local/opt/qt5/include

と出る。
要はQt4のが一般的なのでQt5のパスは通さねぇから、使うときは自分でなんとかしろってこと。

ceres solver を使う

google製の非線形最小二乗ソルバー ceres solver を使うためのメモ

公式サイトはこちら
Ceres Solver — A Nonlinear Least Squares Minimizer

formula "ceres-solver"はhomebrew/scienceの下にあって
最初は有効化されていないので

brew tap homebrew/science

で有効化する。

Mac上でPARDISO5.0を使う

サンプルコードはここから
pardiso_unsym.cppを持ってきた。

とりあえず、サンプルファイルと同じディレクトリにdylibを配置してコンパイル&リンク

$g++ -L/おいた場所/ -lpardiso500-MACOS-X86-64 -o pardiso_sample pardiso_unsym.cpp

デフォルトだと幾つかライブラリが入ってなくて動かない
そこでHomebrewでgcc入れて、そこから必要なライブラリを
/usr/local/libへコピーする。

$brew install gcc
$cp /usr/local/Cellar/gcc/4.8.2_1/lib/gcc/x86_64-apple-darwin13.2.0/4.8.2/libgfortran.3.dylib /usr/local/lib/
$cp /usr/local/Cellar/gcc/4.8.2_1/lib/gcc/x86_64-apple-darwin13.2.0/4.8.2/libgomp.1.dylib /usr/local/lib/
$cp /usr/local/Cellar/gcc/4.8.2_1/lib/gcc/x86_64-apple-darwin13.2.0/4.8.2/libquadmath.0.dylib /usr/local/lib/

登録した際に送られてきたメールにあるkeyだけを書いたpardiso.licを作成してソースと同じところに配置

環境変数OMP_NUM_THREADSを設定しろとのこと
~/.bach_profileに

export OMP_NUM_THREADS = 1

を追記。
持ってるMacbookが2008年製なので、あんまり無茶はさせられん。

んで、動いた!

後日改めて纏める。

macのgitのバージョンアップ

homebrewでgitを入れようとしてうまく行かなかったのでメモ

  1. そもそも brew install git が動かん

=> Permission denied - /usr/local/etc/bash_completion.d が出てた
chmod -R "username" /usr/local/etc で強引に解決 (良くはなかろうが、とりあえずこれで)

  1. インストールしたけど git version 1.8.5.2 (Apple Git-48) のまま

=>ここを見る