RealPath:
WebPath:
2016/12/24 21:20 (JST) 更新
各種サービス >>

Qt

Contents

インストール

CentOS 6.6 にて。

インストーラを https://www.qt.io/download/ から入手。

以下コマンドでインストーラを起動。(インストーラ GUI が起動する)

$ chmod a+x qt-unified-linux-x64-2.0.4-online.run
$ ./qt-unified-linux-x64-2.0.4-online.run

プロジェクトのビルド時に「cc1plus: error: unrecognized command line option "-std=gnu++11"」が出る場合

cc1plus を含む gcc がたぶん古いので gcc を新しいものに入れ替えると良い。

# wget http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-4.8.5/gcc-4.8.5.tar.gz
# tar xzf gcc-4.8.5.tar.gz
# cd gcc-4.8.5
# ./contrib/download_prerequisites
# ./configure --prefix=/usr --disable-bootstrap --disable-multilib
# make
# make install

gcc の場所の指定

新しい gcc を入れても、それが Qt からうまく参照できていないことがある。

Qt Creator メニューの Tools - Options で開く Options ダイアログにて、
Build & Run タブの Compilers タブにて gcc のパス指定ができるので、gcc 参照に問題がある場合はこのあたりを調整すると良い。

デバッグ実行しようとしても「Debugging has failed」となるエラー

Debugging starts
Debugging has failed
Debugging has finished

デバッグ開始時に Application Output 上で上記のようなログが出る場合、gdb に何かしらの問題がある(何が起因になっているかは分からなかったが、CentOS 6.6 の gdb 7.2-75.el6 が入っている状態でも当エラーは発生していた)。

対症療法として、とりあえず gdb をソースコードからビルドしてインストールしてあげると良かったりする。(※ gdb を入れる前に先に python 2.7 以上を入れておくこと)

# yum -y install texinfo
# wget http://ftp.gnu.org/gnu/gdb/gdb-7.12.tar.gz
# tar xzvf gdb-7.12.tar.gz
# cd gdb-7.12
# ./configure --prefix=/usr
# make
# make install

Python 古くてデバッガがうまく動かないエラー

Execution Error
The selected build of GDB supports Python scripting, but the used version 2.6 is not sufficient for Qt Creator. Supported versions are Python 2.7 and 3.x.

デバッグを開始しようとしたときに上記のようなエラーが出る場合、gdb から参照できる python のバージョンが古いことが原因。

この場合は単にシステム上に新しい python をインストールするだけではダメで、python を新しくした後に gdb を再ビルド&インストールする必要があったりする。

gdb から参照される python のバージョンは以下コマンドにより確認可能。

# gdb
(gdb) py
>import sys
>print(sys.version)
>end
2.6.6 (r266:84292, Jan 22 2014, 09:42:36)   ※ ← python が古い例
[GCC 4.4.7 20120313 (Red Hat 4.4.7-4)]