2017年10月14日土曜日

anaconda内のQt

久しぶりに、少しQtを復習しようかと思いました。とりあえず、まずは慣れているmacで初めて、簡単なプログラム(signal, SLOTの復習です)を入力し、
$ qmake
としたら、何かmacx用のテンプレートがない、というようなことを言われました。

はて?macには今年の春、Qt5.8をインストールしたはずと思い、試しにwhichでqmakeの場所を調べてみると、何とanaconda内のqmakeになっています。どうもanaconda内のpythonパッケージに含まれるPyQtが最低限のバイナリとして持っていて、そこにPATHが通ってしまっています。ぐぐってみると、結構記事があり、PyQtでQtの勉強しよう、というのもありましたが、とりあえずanacondaのqtでは単独で使用するのは難しそうです。(独自にPyQt5をbrewでインストールしてしまう、という荒技もありますが、今度はanacondaのパッケージ管理で問題が出そうなのでやめておきます。)

win10にもanacondaをインストールしていたので、調べてみるとこっちも同じ状況です。win10にはQt5.9をanacondaの後にインストールしていますが、なぜかPATHが通ってません。(元々、コンソールで使うつもりなかったし、そのためかな)試しにPATHを通して見ましたが、デフォルトがg++を使う設定で、win10にはcygwinは入れてありません。(Visual Studioで開発するつもりでしたから、それにcygwin好きじゃないし)

これはおそらくLinuxも同じ様な状況になっているんだろうな。仕方ないので、再度Macに戻り、PATH設定をしてqmakeしました。今度はうまく行きましたが、anacondaのpythonでPyQt使う時何か問題でるかな?(今の所、全然使う予定ないので、逆にanacondaからPyQt外した方がいいかもしれません)

PS
ところで、最後にmacでバイナリが作れましたが、macのqmakeでビルド後にできるバイナリは、Finderからクリックできる構造の*.appになっているのにびっくりしました。コンソールから試すだけだから、そんな構造にインストールしてくれなくてもいいのに… .proに何かオプションを追加すればいいのかもしれません。