Qt入門 とりあえずウインドウ出してみる(シェル無しでXcodeだけで使えるようにする)


Xcodeプロジェクトの作成

本来ならば ある程度スクリプトを書いてコマンドラインから qmakeとかmakeとかしてアプリを作るのが普通です。
しかしどうも調子がよくなくて動かない&僕は大好きなXcodeでなんとしても使いたいので
強引にXcodeでQtを利用する方法で行きます。

まず、コマンドラインのプロジェクトを作ります。


これですね。XcodeのNewからNewProjectで出てくるやつです。

さて、選択したらこの画面。やることは2つです。ProductNameを適当な名前にして
TypeをC++にします。そして作成しちゃいましょう。

そしたらとりあえずmain.cppがあってHelloWorldだけ出力するようなプロジェクトが出来上がります。
さて、こっからが変則的です。
やることは2つ
1)Qtのincludeフォルダへヘッダサーチパスを設定する
2)Qtにあるframework全部をプロジェクトに入れてしまう
Qtを利用するためにはQtのヘッダファイルを読めるようにしてリンクしなければなりません。普通ならね。
この時普通ならシェルからqmakeしてそういう細々したのはやってもらうもんですがどうもうまくいかないのでこういう強引なことをします。
便利なことにMac版のQtを入れると中にはframeworkが用意されています。これをつかいます。

さて、まずはHeadreSearchPathを設定しましょう。
Qtをインストールした場所はデフォルトのままだと /Users/(ユーザー名)/Qt5.0.1/ とかになってると思います。
僕の場合ユーザー名はoyabunnなので/User/oyabunn/Qt5.0.1です。
さて、この場合includeすべきは
/User/oyabunn/Qt5.0.1/clang_64/include
となります。人によってちょっと違うかもしれないので自分でインストールしたフォルダを開いてincludeフォルダを探しましょう。
そしてこのパスをXcodeのProject設定のUser HeaderSearchPathsに追加で設定します。
recursiveにするのを忘れないように



これでヘッダはOK.
次にframeworksを入れます。
プロジェクト設定のBuildPhasesからLinkBinaryLibrariesの追加ボタンを押します。そしてAddOhterを押します

そしてさっきのQtがあるところのincludeフォルダじゃなく同じレベルにあるlibフォルダを開いてみましょう
そして、そこにある.frameworkという拡張子のやつを全部選んで追加します

するとこんな感じにframworkがいっぱい入ると思います。
いっぱいあって邪魔なのでグループ作って突っ込んじゃいましょう。

これでOKです。
試しに動かしてみましょう。
main.cppの中身を編集してこうしましょう

#include "QApplication"
#include "QMainWindow"

int main(int argc, char *argv[])
{
    QApplication window(argc, argv);

    QMainWindow *mainwindow = new QMainWindow;
    mainwindow->show();
   
    return window.exec();
}

そしてXcodeの実行を押せばウインドウが出ると思います。
これでqmakeとかのシェル操作とおさらばしてXcodeだけでQtが使えます。

 

ホームへ