travis-CIでのwheel buildとPyPIデプロイ

このページで用意されている環境を使う。GitHub - pypa/python-manylinux-demo: Demo project for building Python wheels for Linux with Travis-CI

  • travis-CI上のpython-manylinux-demo dockerイメージを起動。
  • カレントディレクトリをdocker内の/ioにマウント。
  • docker内でビルドされたwheelが/io/wheelhouse/以下に入る。
  • setup.pyの置いているディレクトリにdistディレクトリを作りwheelhouse/からdist/へwheelをコピー。wheelhouseはカレントディレクトリから見える。
  • あとはtravis-CIのdeploy環境がdist以下のファイルを自動的にデプロイするので、deployの設定を正しく行う。

deploy環境ではPyPIデプロイにtwineが必要。インストールする必要があるがpipではうまくいかなかったので、minicondaからconda環境を作りcondaでtwineをインストールしてパスを通したらとりあえずうまくいった。たぶん。

その他参照元
manylinux1 wheel を作ってみる - methaneのブログ

Numpy & Scipyで使われているBLAS, LAPACKを知る方法

1. scipy.show_config(), numpy.show_config()
これだと、画面に出力されるだけ。
2. import numpy.distutils.system_info as sysinfo
python - How to check blas/lapack linkage in numpy/scipy? - Stack Overflow
numpy/system_info.py at master · numpy/numpy · GitHub
これはnumpyだけ?

インテルコンパイラ (intel compiler)

インストールやライセンスが管理されるホストマシンの扱いがややこしい。

  • インストールやレジストレーションなど困ったらhttps://registrationcenter.intel.com/に行く。リンクから辿るのではなく、直に行く。このページに行ければ、おおよそ見当がつく(ついてくる)。
  • 特定ユーザーライセンスの場合はコンパイラのパッケージをダウンロードし、インストールの途中でシリアル番号を書くことになる。このときインストースクリプトによってネットワーク経由で自動的にホストマシン情報がインテル側に登録される。
  • インストールのデフォルトディレクトリがよくわからない。「ここにインストールするか?」と聞かれるが、ここがどこかわからないので、Noと答え、インストーディレクトリとして/opt/intelを指定する。
  • 2016-ver4ではダウンロードスクリプトの--download-onlyの挙動がおかしいので、使わないほうがいい。
  • 2016はホスト3台制限があるが、連絡すれば無制限にしてくれるらしい。https://www.xlsoft.com/jp/products/intel/purchase/intel_license.html#ps_cls 説明から読み取れることは、面倒が起こる可能性があるので、困ったときはアレコレ悩まず、無制限にしたほうがいいだろう、ということだ。