[SOLVED] Qt のソースコード入手について



  • はじめまして、chung.k といいます。
    Linux&Qt について初心者です。
    「組み込みLinuxでのQt」について勉強していきたいと思っています。
    どうぞよろしくお願いします。

    ・私の開発環境です。

    ホスト:Windows7 32bit > VMware > ubuntu 12.04.2 LTS
    ターゲット:Raspberry Pi > Raspbian

    ・質問です。

    Qt のソースコードですが、下記の方法で入手していますが、やり方として正しいでしょうか?
    $ git clone git://gitorious.org/qt/qt5.git
    $ cd qt5
    qt5$ ./init-repository

    http://download.qt-project.org/official_releases/qt/4.8/4.8.5/qt-everywhere-opensource-src-4.8.5.tar.gz
    から入手する方法と何か違いはあるでしょうか?

    以上、よろしくお願いします。



  • git で取得するソースコードはQt自体の開発用のリポジトリです。ダウンロードするものはリポジトリからテストなどを除いて、アプリ開発者向けに使いやすくしたものになります。
    開発用リポジトリではリリースされたものに修正等を加えたものが入手できますが、まれにビルドできないような場合もあります。

    どちらから入手しても正しいですが、Qtの開発が目的では無ければまずはダウンロードしたソースアーカイブから試すのをお勧めします。その上でより新しいバージョンを使いたい場合はgitのリポジトリを使用するのがいいと思います。

    5.2.1のソースをダウンロードするならば
    http://download.qt-project.org/official_releases/qt/5.2/5.2.1/single/qt-everywhere-opensource-src-5.2.1.tar.gz
    になります。

    gitで入手するときはどのブランチを使用するかに注意してください。現状では5.2系はreleaseブランチ、5.3系はstableブランチ、5.4系はdevブランチとなります。



  • 組み込みLinux にQt環境を作るのが目的なので、
    http://download.qt-project.org/ からダウンロードして使うようにします。

    ありがとうございました。



  • すみません。もう一点教えて下さい。

    http://download.qt-project.org/official_releases/qt/5.2/5.2.1/single/qt-everywhere-opensource-src-5.2.1.tar.gz
    の single とは、どういうディレクトリでしょうか?(ソースのみ?)

    http://download.qt-project.org/official_releases/qt/5.2/5.2.1/qt-opensource-linux-x86-5.2.1.run
    との違いは何でしょうか?(こちらはクリエイタ込みのインストーラ?)

    以上、よろしくお願いします。



  • その認識で問題ないです。

    single は Qt の全モジュールのソースコードのみをまとめたものです。この他に、モジュール毎に分割したソースコードアーカイブとして submodules があります。回線が細くて使用するモジュールが限定されているならばそちらからダウンロードするのがいいと思います。

    .runで終わっているファイルはLinux用のコンパイル済みのバイナリパッケージのインストーラでQt Creatorのバイナリも含まれています。

    デスクトップ向けアプリケーションなどではインストーラ版を用いることもできますが、組み込み向けには自分でビルドする必要がありますので、ソースコード(.tar.gz)が必要となります。

    実際にアプリを作り始めるとQt Creatorや他のIDEがあると便利なので、インストーラ版もインストールしておくと便利です。



  • よくわかりました。ありがとうございました。


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.