Qt4/Mac

提供: MacWiki
移動: 案内検索

Qt4/Mac[編集]

Qt とは[編集]

Trolltech 社によるクロスプラットフォームアプリケーション開発用 C++ フレームワーク。単一ソースで Windows, Mac OS X, UNIX(X11) 向けにアプリケーションを開発可能。デュアルライセンスを採用しており、GPL v3.0/LGPL v2.1 もしくはコマーシャルライセンスを選択できる。

Qt における GUI オブジェクトは、コンパイル時に moc (Meta Object Compiler) を使って前処理を施すことでオブジェクト間でのメッセージのやり取りを動的におこなうことができるようになっており、これは Cocoa のアプローチ (Smalltalk に由来する) とよく似ているが、CocoaObjective-C 言語のレベルで提供しているのとは対照的である。

Qt 4.4 以降は WebKit および Phonon が含まれるようになった。

なお、現状パフォーマンス上の問題が出やすいように思われるので、利用時には注意が必要である。

Qt4/Mac のインストール[編集]

$ mkdir ~/Sources
$ cd ~/Sources
$ wget ftp://ftp.trolltech.com/qt/source/qt-mac-opensource-src-4.5.1.tar.bz2
$ openssl rmd160 qt-mac-opensource-src-4.5.1.tar.bz2
RIPEMD160(qt-mac-opensource-src-4.5.1.tar.bz2)= eaab3d822c5a752c800e4b654cf45ef0b4b18f81

$ tar xvfj qt-mac-opensource-src-4.5.1.tar.bz2
$ cd qt-mac-opensource-src-4.5.1
$ ./configure -nomake examples -nomake demos -platform macx-g++ -opensource -confirm-license
$ make
$ sudo make install

$ sudo find /usr/local/Trolltech/Qt-4.5.1/lib -name \*.prl -delete
$ sudo perl -pi -e "s|`pwd -P`|/usr/local/Trolltech/Qt-4.5.1|g" \
  /usr/local/Trolltech/Qt-4.5.1/lib/pkgconfig/*.pc

ちなみに、ライブラリの探索には configure 中から pkg-config が呼ばれるため、たとえば MacPorts で導入した pkgconfig に PATH が通っており、かつ mysql4 が導入されていれば、MySQL support が自動的に有効となる。

デモのビルド方法[編集]

Qt4 に付属のデモをビルドするには以下のようにする。

$ cd demos
$ /usr/local/Trolltech/Qt-4.5.1/bin/qmake demos.pro
$ make

MacPorts で qt3 を導入している場合は、そちらの qmake と混同しないように注意。(両者に互換性はない)

Universal Binary の開発[編集]

Qt4 の configure 時に「-universal -sdk /Developer/SDKs/MacOSX10.4u.sdk」を指定することで、x86, ppc 向けの Universal Binary としてビルドできるようになる。

ただしこの場合、リンクするライブラリも全て Universal Binary でなければならないので注意。(ポータビリティを考慮するならば、外部ライブラリに依存しないほうが賢明か。)

Qt4 ライブラリの Universal 化が完了すれば、プロジェクト(.pro) ファイルに以下のように書くことで Univesal Binary の生成がおこなわれるようになる。

macx {
 CONFIG += x86 ppc sdk
 QMAKE_MAC_SDK = /Developer/SDKs/MacOSX10.4u.sdk
}