レンタルサーバー・自宅サーバー設定・構築のヒント
レンタルサーバー・自宅サーバー設定・構築のヒント - レンタルサーバー・自宅サーバーの設定・構築情報を公開しています。

CentOSでQtの環境を作ってみる

2011年1月26日 2015年5月17日
qt howto

今回は、マルチプラットフォームGUIの開発ライブラリであるQtです。

Qt(キュート)は、
C++言語で書かれたアプリケーション・ユーザインタフェース(UI)フレームワークである。GUIツールキットとして広く知られているQtであるが、コンソールツールやサーバのような非GUIプログラムでも広く使用されている。ノキアの一部門Qtデベロップメントフレームワークス社によって開発されている。

ライセンスには商用版とオープンソース版があり、現在のオープンソース版のライセンスはLGPL(Qt4.5より)およびGPL である。商用版を購入するとQt 商用ライセンス(Qt Commercial Developer License)でソフトウェアを開発することができる[2]。LGPL版は、2009年3月にリリースされたQt 4.5から提供され始めた。これによりQtは営利企業にとってもより使いやすいライブラリーとなった。
(出典:wikipedeia)

Qtは、KDEデスクトップにも用いられていますから、古いQt(GPLライセンス)で良ければ、KDEデスクトップの開発環境をインストールすることで利用することもできます。

最新のQtの環境をCentOSで構築するには、少なくともGCCを4.4以降へ更新し、GUIが使える環境にしなければなりません。
それぞれの環境は、記事を参考にしてください。

GUIとGCCの環境ができたものとして、以降に解説してみます。

Qtをインストールする

Qtをインストールするには、現在では、Qtのホームページにインストーラがあるので、それを利用するのが最も簡単です。

簡単にダウンロードとインストール手順を以下に記述します。

  1. Qtインストーラをダウンロードする。
    $ wget http://get.qt.nokia.com/qtsdk/qt-sdk-linux-x86-opensource-2010.05.1.bin

    32bit版 : http://get.qt.nokia.com/qtsdk/qt-sdk-linux-x86-opensource-2010.05.1.bin
    64bit版 : http://get.qt.nokia.com/qtsdk/qt-sdk-linux-x86_64-opensource-2010.05.1.bin
    となります。OSに従ってダウンロードしましょう。


  2. Qtインストーラに実行権を与える。
    $ chmod 755 qt-sdk-linux-x86-opensource-2010.05.1.bin

    ファイル名は、
    32bit版 : qt-sdk-linux-x86-opensource-2010.05.1.bin
    64bit版 : qt-sdk-linux-x86_64-opensource-2010.05.1.bin
    となります。


  3. Qtインストーラを実行する。
    $ ./qt-sdk-linux-x86-opensource-2010.05.1.bin

    ファイル名は、
    32bit版 : qt-sdk-linux-x86-opensource-2010.05.1.bin
    64bit版 : qt-sdk-linux-x86_64-opensource-2010.05.1.bin
    となります。

    各画面に従って、インストールします。


    1. 初期画面です。
      Qtインストール画面1

      Nextボタンクリックで次の画面へ進みます。


    2. LGPLライセンス確認画面です。
      Qtインストール画面2

      I accept …. をチェックし、Nextボタンクリックで次の画面へ進みます。


    3. インストール先ディレクトリ指定画面です。
      Qtインストール画面3

      デフォルトは、/opt/qtsdk-2010.05です。別のディレクトリが良ければ、ここで指定します。
      編集を終えたら、Nextボタンクリックで次の画面へ進みます。


    4. インストールコンポーネント選択画面です。
      Qtインストール画面4

      QtCreatorをインストールしないようにすることは可能ですが、ここでは、動作確認で使いたいので、そのまま、すべてをインストールすることにします。
      Nextボタンクリックで次の画面へ進みます。


    5. 他に必要なパッケージ確認画面です。
      Qtインストール画面5

      Qtの開発時に、QtSDKが依存している必要なパッケージが表示されます。
      もし、インストールしていないようなら、必要なパッケージをメモして、インストールしましょう。
      Nextボタンクリックで次の画面へ進みます。


    6. インストール開始確認画面です。
      Qtインストール画面6

      Nextボタンクリックでインストールが始まります。


    7. インストール実行中画面です。
      Qtインストール画面7

      もし、インストールを中止したい場合は、Cancelボタンクリックします。
      そうでない場合は、インストールが終わるまで待ちましょう。


    8. インストール実行でのエラー画面です。
      Qtインストール画面8

      もし、インストール中にエラーや警告が確認された場合は、上記のようなエラーメッセージや警告メッセージが表示されます。
      もし、表示されたら、ここで表示されている内容は、何かしらのエラー、警告なので必ず確認しましょう。


      上記のエラー内容は、
      libstdc++.so.6 に GLIBCXX_3.4.9 が、見つからない」というエラーメッセージです。

      このようなエラーでは、gcc4.4以降を正しくインストールすると解消されるでしょう。
      CentOSでGCCのバージョンアップを行ってみる」を参照してください。

    9. インストール完了画面です。
      Qtインストール画面8

      Finishボタンクリックしてインストール完了となります。


Qtを使ってみる

Qtのインストールを終えたら、QtCreatorを使って、簡単なサンプルをコンパイルして実行してみましょう。

  1. Qt用の環境変数を設定する。

    現状では、PATHも何も設定されていませんので、単純にシェルからQtCreatorが実行できない状態になっています。
    ここでは、動作確認が最大の目的ですから、現在開いているシェルで、手動で環境変数を設定します。

    PATHの設定

    $ PATH=/opt/qtsdk-2010.05/bin:$PATH

    LD_LIBRARY_PATH, LIBRARY_PATHの設定

    $ LD_LIBRARY_PATH=/opt/qtsdk-2010.05/lib:$LD_LIBRARY_PATH
    $ LIBRARY_PATH=$LD_LIBRARY_PATH

    CPLUS_INCLUDE_PATHの設定

    $ CPLUS_INCLUDE_PATH=/opt/qtsdk-2010.05/include/Qt:$CPLUS_INCLUDE_PATH

    ここまでの設定で、環境設定ができました。続けて、QtCreatorを起動してみましょう。

    $ QtCreator

    以下の画面が表示されれば、パスは通っています。

    QtCreator画面1

  2. QtCreatorでサンプルを実行してみる。

    QtCreatorでHello Worldサンプルを実行してみましょう。

    1. 画面中央のサンプルプログラムを選ぶをクリックします。
      QtCreator画面1

    2. メニュー内から、[ Qt Linguest ] – [ Hello World ] を選択します。
      QtCreator画面2

    3. コピー先のディレクトリを指定します。
      QtCreator画面3

      デフォルトは、ユーザディレクトリになります。
      編集を終えたら、プロジェクトをコピーして開くをクリックします。


    4. Qtライブラリの指定を行います。
      QtCreator画面4

      ここでは、開発環境の動作確認だけなので、デフォルトのままでOKです。
      完了をクリックします。


    5. すべてをビルドします。
      QtCreator画面5

      問題がある場合は、ここでエラーが発生します。
      主だったエラーを以降の補足:ビルドエラーの対処で説明します。

    6. 実行します。
      QtCreator画面6
    7. Hello Worldの画面が表示されます。
      QtCreator画面7

      上記の画面が表示されればOKです。


補足:ビルドエラーの対処

QtCreatorでビルドエラーが発生する場合の対処を簡単に記載します。

CentOS 5 + Qt 4.7 の組み合わせて発生しやすいビルドエラーは、次の2件です。

  1. libQtGui.so:: error: undefined reference to `FT_Library_SetLcdFilter’
  2. libQtGui.so:: error: undefined reference to `FcFreeTypeQueryFace’

上記は、いずれもライブラリに必要なAPIが存在しないというエラーです。

それぞれ必要なライブラリを新しくすることで、これらのエラーは回避できます。

それぞれ必要なライブラリは、以下のとおりです。

  1. libQtGui.so:: error: undefined reference to `FT_Library_SetLcdFilter’
    freetype
  2. libQtGui.so:: error: undefined reference to `FcFreeTypeQueryFace’
    fontconfig

では、早速、freetypefontconfigのアップデートの仕方を簡単に説明してみます。

freetypeをインストールする

やるべきことは簡単です。
ソースコードを含む環境一式をダウンロードし、makeするだけです。

  1. ソースコードを含む環境一式をダウンロードする。
    $ wget http://download.savannah.gnu.org/releases/freetype/freetype-2.3.11.tar.gz
       :

    ここでは、Fedora Core 13 の freetype のバージョンは2.3.11だったので、それに合わせました。


  2. 環境一式を解凍し、make環境を設定する。
    $ tar xvfz freetype-2.3.11.tar.gz
       :
       :
    $ cd freetype-2.3.11
    $ ./configure --prefix=/opt/freetype-2.3.11
       :

    ここでは、make完了後のライブラリ一式を/opt/freetype-2.3.11へ出力するように指定しています。


  3. makeを実行し、インストールする。
    $ make
       :
       :
    $ make install
       :
       :

    これで freetype 2.3.11 のライブラリが作成できました。


fontconfigをインストールする

これも、freetypeと同じです。やるべきことは簡単です。
ソースコードを含む環境一式をダウンロードし、makeするだけです。

  1. ソースコードを含む環境一式をダウンロードする。
    $ wget http://fontconfig.org/release/fontconfig-2.4.2.tar.gz
       :

    ここでは、fontconfig のバージョンは2.4.2としました。


  2. 環境一式を解凍し、make環境を設定する。
    $ tar xvfz fontconfig-2.4.2.tar.gz
       :
       :
    $ cd fontconfig-2.4.2
    $ ./configure --prefix=/opt/fontconfig-2.4.2
       :

    ここでは、make完了後のライブラリ一式を/opt/fontconfig-2.4.2へ出力するように指定しています。


  3. makeを実行し、インストールする。
    $ make
       :
       :
    $ make install
       :
       :

    これで fontconfig 2.4.2 のライブラリが作成できました。


freetype, fontconfig の新しいライブラリを使用するように環境設定する

ここまでで freetype, fontconfig の新しいライブラリはできました。
次に、QtCreatorへ、この新しいライブラリを使うことを知らせるために環境変数を設定してあげます。

$ LD_LIBRARY_PATH=/opt/freetype-2.3.11/lib:/opt/fontconfig-2.4.2/lib:$LD_LIBRARY_PATH
$ LIBRARY_PATH=$LD_LIBRARY_PATH
$ CPLUS_INCLUDE_PATH=/opt/freetype-2.3.11/include:/opt/fontconfig-2.4.2/include:$CPLUS_INCLUDE_PATH

これで完了です。同じシェルから QtCreatorを起動してみてください。
今度は、上記の問題は解消されることでしょう。

上記の確認ができたら、最終的に環境設定の類は、.bash_profileなどに記述するのが良いでしょう。
以下は、64bitOSでの例です。

# GCC44 & QT4
export FREETYPE
export FONTCONFIG
export GCC44
export QTDIR
export QTBIN
export LD_LIBRARY_PATH
export MANPATH
export LIBRARY_PATH
export CPLUS_INCLUDE_PATH

GCC44=/usr/local/gcc
QTDIR=/opt/qtsdk-2010.05/qt
QTBIN=/opt/qtsdk-2010.05/bin
FREETYPE=/opt/freetype-2.3.11
FONTCONFIG=/opt/fontconfig-2.4.2

PATH=$QTBIN:$QTDIR/bin:$GCC44/bin:$PATH

if [ $LD_LIBRARY_PATH ] ; then
  LD_LIBRARY_PATH=$QTDIR/lib:$GCC44/lib64:$FREETYPE/lib:$FONTCONFIG/lib:$LD_LIBRARY_PATH
else
  LD_LIBRARY_PATH=$QTDIR/lib:$GCC44/lib64:$FREETYPE/lib:$FONTCONFIG/lib
fi

if [ $MANPATH ] ; then
  MANPATH=$QTDIR/man:$GCC44/man:$MANPATH
else
  MANPATH=$QTDIR/man:$GCC44/man
fi

LIBRARY_PATH=$LD_LIBRARY_PATH

if [ $CPLUS_INCLUDE_PATH ] ; then
  CPLUS_INCLUDE_PATH=$QTDIR/include/Qt:$GCC44/include:$FREETYPE/include:$FONTCONFIG/include:$CPLUS_INCLUDE_PATH
else
  CPLUS_INCLUDE_PATH=$QTDIR/include/Qt:$GCC44/include:$FREETYPE/include:$FONTCONFIG/include
fi
Qtがインストールできると、GUIの簡単なツールが、すぐに作れるようになります。C/C++が使える方なら・・ですけど。

また、Qtは、GUIライブラリーですからWindowsのMFCなどとも似たところもあります。

更にマルチプラットフォームですから、LinuxのアプリをWindowsで再構築することもできるでしょう。

ただ、結構、ディスク容量を必要としますから、VPSなどのレンタルサーバーでやる場合は、ある程度、容量のあるVPSを選んだ方が良いでしょうね。

例えば、
ServersMan@VPS ProServersMan@VPS Pro であれば、50GB
[check_link:error]***1 ERROR 3 get_weblink( queenv,1,ServerQueen/VPS (Linux) QV-01, ) であれば、120GB
と、このあたりが無難かもしれませんね。

いつもおすすめしているさくらVPSさくらVPS では、20GB とちょっと心細いかもしれませんね。
追記 : さくらVPSさくらVPS では、最安プランで 容量 100GBまでアップしたので、十分に楽しめます。

興味のある方は、お試しあれ!!
ご利用のブラウザは、広告ブロック(AdBlockなど) が適用となっていませんか?
このサイトでは、コンテンツの一部が非表示、あるいは、コメント、お問い合わせの投稿ができない検索ができないことがあります。


関連記事 :

CentOSでGCCのバージョンアップを行ってみる

今回は、GCCのバージョンをアップグレードしたい場合について記述していみます。 CentOS 5.5では、GCCのバージョンが4.1. ...

FreeBSDで日本語環境(UTF-8対応)を整える

FreeBSDでSSHを使えるようにする でSSHでログインまでできるようになりました。 さて、現状では、FreeBSDは、すべてが英語で ...

php + apache のメモリ量をおさえる(2) workerを使ってみる

「php + apache のメモリ量をおさえる」の続きです。 さて、今回は、メモリをおさえるためにapacheのマルチプロセッシングモジ ...

bash (Bシェル) でプロンプトを変更する

今回は、単純にbashでプロンプトの表示を変更する方法を簡単にまとめておきます。 いろんなサイトに記載があるので、ここでまとめても・・・と ...

Open JTalk (テキストを音声へ変換)をインストールし、使ってみる

今回は、Open JTalkをインストールして、使ってみます。 Open JTalkは、簡単にいうと、 文字列(テキスト)から音声へ変換 ...



コメントを投稿 :

お名前 *

メールアドレス *
( メールアドレスが公開されることはありません。)

サイトアドレス

コメント *

* 印の項目は、入力が必要な項目です。




最近投稿の記事

[ 画像提供元 : Amazon ] 先日、1TBのディスクの入れ替え時にバックアップをとろうとディスクコピーを行いました。 その際 ...

Windows で Linux ファイルシステム Ext4 のディスクをマウントするには? Ext3Fsd が、おそらく、最も簡単なツール ...

今回は、Windows で Compass を使ってみました。 Compass とは、 Sass(サス、Syntactica ...

今回は、Anti Adblock を使ってみました。 Anti Adblock とは、 そもそも Adblock という ウェブ ...

デスクトップ環境でない サーバーで、Webページのキャプチャー画像をコマンドで撮る には、wkhtmltoimage, CutyCapt ...


さくらのVPS 全プラン リニューアルです。(石狩(北海道)も選択可)


root権限ありで ¥685 / 月 ~ と非常にリーズナブルな CPU 1(core)の 512 プランから、 最高 CPU 10(core), メモリ 32(GB), SSD容量 800(GB) までとプランが充実。
ディスクは、SSDとHDDの選択が可能になった他、データセンターは人気の東京、石狩(北海道)となりました。

また、どのプランでも好きなOSが選べます
( CentOS, Fedora, Scientific Linux, FreeBSD, Ubutu, Debian )

管理人もおすすめのVPSです。
試用期間がありますから、一度、お試しを!!

詳しくは、http://vps.sakura.ad.jp/さくらのVPSのサイトへ へどうぞ!!

カテゴリ


Serverman@VPS 完全1ヶ月無料 キャンペーン実施中です。


Serverman@VPS 完全1ヶ月無料 キャンペーン実施中です。
最近、スワップにも対応した Serverman@VPS は、かなりリーズナブルかもです。

  • メモリ1GB~2GBのEntryプラン :月額:490円
  • メモリ2MB~4GBのStandardプラン :月額:980円
  • メモリ4GB~8GBのProプラン :月額:1,980円

新規申し込みで1ヶ月間完全無料となるキャンペーンを実施中です。
Serverman@VPSの特徴は、安さとIPv6対応です。また、初期設定費0円もポイントです。

IPv6でちょっと遊んでみたい方には、おすすめかもしれませんね。最低利用期間もありませんから、気に入らないときは即解約もできます。

Serverman@VPSの詳細については、 http://dream.jp/vps/ Serverman@VPSのサイトへへどうぞ。



KVM採用 ConoHa VPSは、時間単位で借りれる便利なVPSです。


ConoHa VPS は、初期設定費0円最低利用期間無し時間単位で清算可能、 さらに、Web APIを使って自動化を図ることもできる便利なVPSです。

海外サーバー設置も可能で、ローカル接続にも対応と、かなり、機能豊富なサーバーです。

新規ユーザ登録で、クーポンもらえますから、まずは、お試しですね。

ConoHa VPSの詳細については、
http://www.conoha.jp/ へどうぞ。

KVM採用 お名前.com VPS(KVM) 2G プラン 初期設定費無料 キャンペーン 実施です。


メモリ2GBプラン CPU:3core、Disk:200GB
月額:1,153円から (初期設定:1,680円0円)

さくらのVPSがリニューアルされてもなんのその。
1GBメモリ / 2Core を ¥834 – の格安価格で提供中です!
間違いなくスペックからすると割安感ありです。
年間割引時の途中解約で返金がないのは、 ちょっと残念ですが、それでもこの割安感は魅力です。

まずは、お試しですね。

お名前.com VPS(KVM)の詳細については、
http://www.onamae-server.com/vps/ へどうぞ。(お試し期間が15日あります。)



  • ソーシャルブックマーク

  • はてなブックマークへ追加するはてな登録数
ページトップへ
Time : 0.2710 [s]