CentOS6にPyQt5をインストール

ようやくPyQt5をインストール

ようやくPyQt5です。PyQt5をCentOS6に実は入れたことがない。。。どっかではまりそう。はりきっていきましょう。

Qt5のインストール

まずはQt5のソースをゲット。

wget http://download.qt.io/official_releases/qt/5.7/5.7.1/single/qt-everywhere-opensource-src-5.7.1.tar.gz

とりあえず何も考えずにコンパイルしてみましょうか。

$ tar xf qt-everywhere-opensource-src-5.7.1.tar.gz
$ cd qt-everywhere-opensource-src-5.7.1
$ ./configure --prefix=$HOME/local/qt/5.7.1

コケる。あっさりコケる。

Creating qmake...
.cc1plus: error: unrecognized command line option "-std=c++11"
gmake: *** [project.o] Error 1

むむむ。。。CentOS6のgccは"-std=c++11"に対応していない。。。これを"-std=c++0x"に書き換えればコンパイルできる可能性があるかも???なんて思ったりもしますが、それは無駄な努力になりそうな予感。Takumi的野生の勘です。

というわけで諦めましょう。あっさりと。ここはインストーラの出番です。

https://www.qt.io/download/

普通にインストーラをダウンロードすると、途中で"Network Error"が出てしまいました。とりあえず通信させなければ良いんでしょ?という考えのもと、オフラインインストーラを改めてゲット。こいつを走らせてみる。

$ chmod +x qt-opensource-linux-x64-5.7.1.run 
$ ./qt-opensource-linux-x64-5.7.1.run 

インストールパスは前回のQt4にあわせて、"$HOME/local/qt/5.7.1"に設定。さあインストールだ。。。終わった。

"$HOME/local/qt/5.7.1"の下が思っていたより複雑(?)になってる。ここはパスの設定時だけの話なので、気にしないことにする。

Python3のインストール

執筆時点での最新は3.6.0ですね。とりあえず最新を入れてみましょう。

$ wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tgz
$ tar xf Python-3.6.0.tgz
$ cd Python-3.6.0
$ ./configure --enable-shared --prefix=$HOME/local/python/3.6.0
$ make
$ make install

相変わらずPythonのインストールは簡単ですね!

SIP & PyQt5のインストール

Qt,Pythonにパスを通します。Qt4の時とインストールパスが違う。。。

$ export QTDIR=$HOME/local/qt/5.7.1/5.7/gcc_64
$ export PATH=$QTDIR/bin:$HOME/local/python/3.6.0/bin:$PATH
$ export LD_LIBRARY_PATH=$QTDIR/lib:$HOME/local/python/3.6.0/lib:$LD_LIBRARY_PATH

軽くパス設定の確認をしておきましょうかね。

$ which qmake
~/local/qt/5.7.1/5.7/gcc_64/bin/qmake
$ which python3
~/local/python/3.6.0/bin/python3
$ python3
Python 3.6.0 (default, Jan  5 2017, 06:50:48) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-17)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 

ここまでは問題なし!それではSIP & PyQt5のインストールです。

$ wget https://sourceforge.net/projects/pyqt/files/sip/sip-4.19/sip-4.19.tar.gz
$ tar xf sip-4.19.tar.gz
$ cd sip-4.19
$ python3 configure.py
$ make
$ make install
$ wget https://sourceforge.net/projects/pyqt/files/PyQt5/PyQt-5.7.1/PyQt5_gpl-5.7.1.tar.gz
$ tar xf PyQt5_gpl-5.7.1.tar.gz
$ cd PyQt5_gpl-5.7.1
$ python3 configure.py
cc1plus: error: unrecognized command line option "-std=gnu++11"

コケた。またc++11系エラー。そういえばPyQt5はpipでインストールできたはず!

$ pip3 install PyQt5

インストール完了。

結局自力コンパイルしたのはPython3だけですね。CentOS6はもう古いのか。。。GCCをインストールすればいろいろ出来そうですけど。インストーラ・パッケージリリースに頼るのも悪くない。

今回はここまで!