MochiuWiki : SUSE, EC, PCB
案内
メインページ
最近の更新
おまかせ表示
MediaWiki についてのヘルプ
ツール
リンク元
関連ページの更新状況
特別ページ
ページ情報
We ask for
Donations
検索
個人用ツール
ログイン
Toggle dark mode
名前空間
ページ
議論
表示
閲覧
ソースを閲覧
履歴を表示
インストール - Qt5のソースを表示
提供: MochiuWiki : SUSE, EC, PCB
←
インストール - Qt5
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループのいずれかに属する利用者のみが実行できます:
管理者
、new-group。
このページのソースの閲覧やコピーができます。
== 概要 == Qtは、デスクトップ、組み込み、モバイルプラットフォーム向けのソフトウェアやユーザーインターフェイスの作成を効率化するために設計されたツールを備えた完全な開発フレームワークである。<br> <br> Qt 5.15 LTSのサポート期間は、Qtレガシーライセンスは2023年5月26日まで、Qtサブスクリプションライセンスは2025年5月26日までである。<br> <br> Qtライセンスを購入するには、http://www.qt.io/download/ を参照すること。<br> <br> <center> {| class="wikitable" | style="background-color:#fefefe;" |- ! colspan="3" style="background-color:#44CC99;" | 参考書 |- style="text-align: center;" | <center><html><a href="https://www.amazon.co.jp/Mastering-Qt-stunning-cross-platform-applications-ebook/dp/B07DH9YK9Q?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=29KSQHSJC9DB3&keywords=Qt+5&qid=1667806384&qu=eyJxc2MiOiIwLjAwIiwicXNhIjoiMC4wMCIsInFzcCI6IjAuMDAifQ%3D%3D&sprefix=qt+5%2Caps%2C196&sr=8-1&linkCode=ll1&tag=presire2-22&linkId=2118a0260e6e51aa7f7440827dee4266&language=ja_JP&ref_=as_li_ss_tl" target="_blank"><img style="width: 250px; height: auto;" src="https://m.media-amazon.com/images/I/71ZdxoixPvL._SL1500_.jpg" ></a></html><br>[https://www.amazon.co.jp/Mastering-Qt-stunning-cross-platform-applications-ebook/dp/B07DH9YK9Q?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=29KSQHSJC9DB3&keywords=Qt+5&qid=1667806384&qu=eyJxc2MiOiIwLjAwIiwicXNhIjoiMC4wMCIsInFzcCI6IjAuMDAifQ%3D%3D&sprefix=qt+5%2Caps%2C196&sr=8-1&linkCode=ll1&tag=presire2-22&linkId=2118a0260e6e51aa7f7440827dee4266&language=ja_JP&ref_=as_li_ss_tl Mastering Qt 5<br>C++, Qt Widgets, QMLを使用したクロスプラットフォームアプリケーションの作成]</center> | <center><html><a href="https://www.amazon.co.jp/Hands-Mobile-Embedded-Development-Raspberry-ebook/dp/B07RH6QM95?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=29KSQHSJC9DB3&keywords=Qt+5&qid=1667806384&qu=eyJxc2MiOiIwLjAwIiwicXNhIjoiMC4wMCIsInFzcCI6IjAuMDAifQ%3D%3D&sprefix=qt+5%2Caps%2C196&sr=8-6&linkCode=ll1&tag=presire2-22&linkId=fabbe4470bf7cb690cadc2cf00e7af96&language=ja_JP&ref_=as_li_ss_tl" target="_blank"><img style="width: 250px; height: auto;" src="https://m.media-amazon.com/images/I/91V16o+L03L._SL1500_.jpg" ></a></html><br>[https://www.amazon.co.jp/Hands-Mobile-Embedded-Development-Raspberry-ebook/dp/B07RH6QM95?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=29KSQHSJC9DB3&keywords=Qt+5&qid=1667806384&qu=eyJxc2MiOiIwLjAwIiwicXNhIjoiMC4wMCIsInFzcCI6IjAuMDAifQ%3D%3D&sprefix=qt+5%2Caps%2C196&sr=8-6&linkCode=ll1&tag=presire2-22&linkId=fabbe4470bf7cb690cadc2cf00e7af96&language=ja_JP&ref_=as_li_ss_tl Hands-On Mobile and Embedded Development with Qt 5<br>C++/QtでAndroid, iOS, Raspberry Pi用のアプリケーションを作成]</center> | <center><html><a href="https://www.amazon.co.jp/Qt5-GUI-Programming-Cookbook-cross-platform/dp/1789803829?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=29KSQHSJC9DB3&keywords=Qt+5&qid=1667806384&qu=eyJxc2MiOiIwLjAwIiwicXNhIjoiMC4wMCIsInFzcCI6IjAuMDAifQ%3D%3D&sprefix=qt+5%2Caps%2C196&sr=8-14&linkCode=ll1&tag=presire2-22&linkId=981d01e080c07e69b683bbd3eee91fd9&language=ja_JP&ref_=as_li_ss_tl" target="_blank"><img style="width: 250px; height: auto;" src="https://m.media-amazon.com/images/I/717s6aji8ZL._SL1360_.jpg" ></a></html><br>[https://www.amazon.co.jp/Qt5-GUI-Programming-Cookbook-cross-platform/dp/1789803829?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=29KSQHSJC9DB3&keywords=Qt+5&qid=1667806384&qu=eyJxc2MiOiIwLjAwIiwicXNhIjoiMC4wMCIsInFzcCI6IjAuMDAifQ%3D%3D&sprefix=qt+5%2Caps%2C196&sr=8-14&linkCode=ll1&tag=presire2-22&linkId=981d01e080c07e69b683bbd3eee91fd9&language=ja_JP&ref_=as_li_ss_tl Qt5 C++ GUI Programming Cookbook<br>Qt5でクロスプラットフォームのアプリケーションの作成]</center> |} </center> <br><br> == Qt ライセンス == Qtは、様々なユーザのニーズに対応できるよう、様々なライセンスオプションが用意されている。<br> <br> 商用ライセンスでライセンスされたQtは、第三者とソースコードを共有したくない場合やGNU LGPL version 3の条項に準拠できない場合、プロプライエタリ / 商用ソフトウェアの開発に適している。<br> LGPL version 3の下でライセンスされたQtは、GNU LGPL version 3またはGNU GPL version 3の条項と条件に従うことができれば、Qtアプリケーションの開発に適している。<br> <br> Qtマーケットプレイスライセンス契約に基づいてライセンスされたQtコンポーネントは、<br> 商用またはGNU LGPL version 3またはGNU GPL version 3の条件に基づいてライセンスされたQtソフトウェアコンポーネントと共通のQtアプリケーションの開発に適している。<br> <br> Qtには、元の開発者から特定のオープンソースライセンスの下でライセンスされているサードパーティのコードも含まれている。<br> また、Qtのサンプルは、The Qt Companyの商用ライセンスおよびBSD 3条項ライセンスの下で入手可能である。<br> <br> Qtライセンスの概要については、http://qt.io/licensing/ を参照すること。<br> <br><br> == 通常のインストール == ==== 依存関係のライブラリのインストール ==== Qtの依存関係のライブラリをインストールする。<br> これらのライブラリは不要な可能性がある。(調査中)<br> # RHEL sudo dnf install mesa-libOSMesa-devel # SUSE sudo zypper install Mesa-devel Mesa-KHR-devel # または sudo zypper install Mesa-KHR-devel Mesa-devel Mesa-dri-devel Mesa-libEGL-devel Mesa-libGL-devel Mesa-libGLESv1_CM-devel Mesa-libGLESv2-devel \ Mesa-libglapi-devel kbproto-devel libOSMesa-devel libOSMesa8 libX11-devel libXau-devel libdrm-devel libgbm-devel \ libglvnd-devel libxcb-devel libxcb-screensaver0 libxcb-xf86dri0 libxcb-xtest0 libxcb-xvmc0 pthread-stubs-devel xproto-devel <br> ==== Qtのダウンロード ==== 最新版のQtをダウンロードするため、以下のコマンドを実行する。<br> ファイル情報を知りたい場合はこの[http://download.qt.io/official_releases/ Webサイト]を参照する。<br> wget http://download.qt.io/official_releases/online_installers/qt-unified-linux-x64-online.run ダウンロードしたファイルのアクセス権限を変更する。<br> chmod +x qt-unified-linux-x64-online.run <br> ==== Qtのインストール ==== /usr/localディレクトリ等にインストールする場合は、スーパーユーザでインストールする。<br> ホームディレクトリにインストールする場合は、ローカルユーザでインストールする。<br> <br> 次に、GCCおよびmake、付随するライブラリをインストールする。<br> # RHEL sudo dnf groupinstall "Development tools" # SUSE sudo zypper install --type pattern devel_basis <br> Qtをインストールする。<br> ./qt-unified-linux-x64-online.run <br> Qtのインストール画面に従って、インストールを実行する。<br> <br> Qtをインストールした後、必要ならば、以下のコマンドを実行する。<br> <u>これは、<code>pkg-config</code>コマンドが指すディレクトリを変更する設定である。</u><br> cd /<Qtのインストールディレクトリ>/<Qtのバージョン>/gcc_64/lib cp ./pkgconfig ./pkgconfig_org cd /<Qtのインストールディレクトリ>/<Qtのバージョン>/gcc_64/lib/pkgconfig sed -i -e "s/prefix=\/home\/qt\/work\/install/prefix=\/<Qtのインストールディレクトリ>\/<Qtのバージョン>\/gcc_64/g" ./* <br><br> == ソースコードからインストール == ==== 必須環境 ==== * Qt 5.14.0以降 * Qt WebEngine module for QtWebEngine based help viewer * GCC 7以降 * オプション : CMake *: CMakeを使用してLLVM / ClangとQt Creatorをビルドする時に必要である。 * オプション : Ninja *: CMakeを使用してビルドする時に必要である。 * オプション : LLVM / Clang 8.0.0以降<br> *: Clang Code Model、Clang Tools、ClangFormat、Clang PCH Manager、Clang Refactoringプラグインに必要である。 *: LLVM C++ APIは互換性を保証するものではないので、それ以降のバージョンがコンパイルできない場合は、そのバージョンをサポートしていない。 * オプション : Qbs 1.7.x *: Qtのソースコードには、Qbs自身も含まれている。 <br> また、Qtをビルドする時のオプション設定を以下に記載する。<br> # オプション : 環境変数PATHにおいて、llvm-configのパスが通っていない場合に必要である export LLVM_INSTALL_DIR=<LLVMのインストールディレクトリ> # オプション : Clangのリファクタリングを無効にする場合、1を設定する export QTC_DISABLE_CLANG_REFACTORING=1 # オプション : QbsProjectManagerプラグインがQbsを使用する場合に必要である export QBS_INSTALL_DIR=/path/to/qbs # オプション : KSyntaxHighlightingを使用する場合、KSYNTAXHIGHLIGHTING_LIB_DIRライブラリを保持するディレクトリを設定する # インクルードディレクトリの自動推定に失敗する場合、KSYNTAXHIGHLIGHTING_INCLUDE_DIRを設定して、 # 両方の設定をqmakeコマンドのオプションで渡すこともできる export KSYNTAXHIGHLIGHTING_INCLUDE_DIR=<インクルードファイルを保持するディレクトリ> export KSYNTAXHIGHLIGHTING_LIB_DIR=<ライブラリを保持するディレクトリ> <br> ==== 依存関係のライブラリのインストール ==== Qtのソースコードをコンパイルするために必要な依存関係のライブラリをインストールする。<br> sudo zypper install flex bison gperf git-core gcc-c++ make cmake unzip pkg-config python3 ruby perl libicu-devel \ glib2-devel dbus-1-devel fontconfig-devel libfontenc-devel libproxy-devel assimp-devel \ mozilla-nspr-devel nodejs16 nodejs16-devel re2-devel glproto-devel snappy-devel libSDL2-devel \ libinput-devel libhidapi-devel mtdev-devel tslib-devel \ Mesa-libGL-devel Mesa-libGLESv1_CM-devel Mesa-libGLESv2-devel Mesa-libGLESv3-devel Mesa-libEGL-devel \ wayland-devel wayland-protocols-devel <br> SUSEにおいて、マルチメディア関連やBluetooth等を使用したソフトウェアを開発する場合、下表に示すパッケージをインストールする。<br> <center> {| class="wikitable" | style="background-color:#fefefe;" |+ SUSE向け その他のライブラリ(オプション) |- ! style="background-color:#66CCFF;" | 機能 ! style="background-color:#66CCFF;" | インストールするライブラリ ! style="background-color:#66CCFF;" | configureスクリプトのオプション |- | Bluetooth || bluez bluez-devel bluez-tools || |- | 画像 || openjpeg-devel openjpeg2-devel libjpeg62-devel libpng12-devel libpng16-devel<br>libtiff-devel libmng-devel libwebp-devel libjasper-devel | |- | マルチメディア || ffmpeg-4-libavdevice-devel ffmpeg-4-private-devel<br>gstreamer-devel gstreamermm-devel gstreamer-plugins-base-devel<br>gstreamer-plugins-bad-devel gstreamer-plugins-rs-devel gstreamer-devtools-devel<br>gnome-video-effects-devel gstreamer-editing-services-devel | |- | ALSAオーディオ || alsa-devel alsa-lib-devel || |- | Pulseオーディオ || libpulse-devel pulseaudio-qt-devel || |- | OpenAL || openal-soft-devel || |- | GPS || libgypsy-devel || |- | Text to Speech || festival-devel libspeechd-devel || |- | シリアルポート || libserialport-devel || |- | センサ || libsensors4-devel || |- | データベース || postgresql14-devel postgresql14-server-devel (PostgreSQL)<br>libmariadb-devel libmariadbd-devel libmariadbprivate (MariaDB)<br>unixODBC-devel (ODBC)<br>sqlite3-devel (SQLite) | |- | プリンタ || cups-devel || |- | X11 || libXft-devel libX11-devel libxcb-devel libXext-devel libXfixes-devel libXrender-devel<br>libxcb-devel xcb-util-keysyms-devel xcb-util-image-devel xcb-util-wm-devel libXfixes-devel<br>xcb-util-renderutil-devel libXinerama-devel libXcomposite-devel libXcursor-devel<br>libXrandr-devel libXtst-devel xcb-proto-devel xcb-util-cursor-devel xcb-util-errors-devel<br>xcb-util-xrm-devel xorg-x11-libxcb-devel xcb-util-devel xcb-util-image-devel<br>xcb-util-keysyms-devel xcb-util-wm-devel xorg-x11-devel libxkbcommon-x11-devel<br>libxkbcommon-devel libXi-devel libxkbfile-devel xorg-x11-util-devel xorg-x11-libs || |- | X Wayland || xwayland-devel || |- | WebEngine || 必須 :<br>flex bison gperf glibc-devel-static libcap-devel readline-devel mozilla-nss-devel mozilla-nspr-devel<br>libgcrypt20 libgcrypt-devel libgudev-1_0-devel ruby npm16 nodejs16-devel nodejs-common<br>libdrm-devel pciutils-devel xmlsec1-nss-devel systemd-devel libxshmfence-devel<br>libqt5-qtsvg-devel libqt5-qtsvg-private-headers-devel<br><br>オプション1 :<br>libxml2-devel libxml++-devel libxslt-devel minizip-devel jsoncpp-devel<br>liblcms2-devel libevent-devel protobuf-devel libprotobuf-c-devel<br>pipewire-devel krb5-devel<br><br>オプション2(不安定なため注意すること) :<br>libopus-devel libvpx-devel libpoppler-devel libpoppler-glib-devel | |- | アクセシビリティ || at-spi2-atk-devel at-spi2-core-devel || |- | SCTP || lksctp-tools-devel || -sctp |} </center> <br> * 上表のライブラリを全てインストールする場合 *: <code>sudo zypper install \</code> *: <code>bluez bluez-devel bluez-tools \</code> *: <code>openjpeg-devel openjpeg2-devel libjpeg62-devel libpng12-devel libpng16-devel libtiff-devel libmng-devel libwebp-devel libjasper-devel \</code> *: <code>ffmpeg-4-libavdevice-devel ffmpeg-4-private-devel \</code> *: <code>gstreamer-devel gstreamermm-devel gstreamer-plugins-base-devel gstreamer-plugins-bad-devel gstreamer-plugins-rs-devel gstreamer-devtools-devel \</code> *: <code>gnome-video-effects-devel gstreamer-editing-services-devel \</code> *: <code>alsa-devel libpulse-devel openal-soft-devel libgypsy-devel \</code> *: <code>festival-devel libspeechd-devel \</code> *: <code>libserialport-devel libsensors4-devel unixODBC-devel sqlite3-devel cups-devel \</code> *: <code>libXft-devel libX11-devel libxcb-devel libXext-devel libXfixes-devel libXrender-devel libxcb-devel xcb-util-keysyms-devel xcb-util-image-devel \</code> *: <code>xcb-util-wm-devel libXfixes-devel xcb-util-renderutil-devel libXinerama-devel libXcomposite-devel libXcursor-devel libXrandr-devel libXtst-devel \</code> *: <code>xcb-proto-devel xcb-util-cursor-devel xcb-util-errors-devel xcb-util-xrm-devel xorg-x11-libxcb-devel xcb-util-devel xcb-util-image-devel \</code> *: <code>xcb-util-keysyms-devel xcb-util-wm-devel xorg-x11-devel libxkbcommon-x11-devel libxkbcommon-devel libXi-devel libxshmfence-devel \</code> *: <code>libxkbfile-devel xorg-x11-util-devel xorg-x11-libs xwayland-devel \</code> *: <code>at-spi2-atk-devel at-spi2-core-devel lksctp-tools-devel \</code> *: <code>flex bison gperf libcap-devel readline-devel mozilla-nss-devel mozilla-nspr-devel libdrm-devel \</code> *: <code>libxml2-devel libxml++-devel libxslt-devel minizip-devel jsoncpp-devel liblcms2-devel libevent-devel protobuf-devel libprotobuf-c-devel pipewire-devel krb5-devel \</code> *: <code>libgcrypt20 libgcrypt-devel libgudev-1_0-devel ruby npm-default pciutils-devel xmlsec1-nss-devel systemd-devel \</code> *: <code>libqt5-qtsvg-devel libqt5-qtsvg-private-headers-devel</code> <br> ==== fliteライブラリおよびlibspeechdライブラリのインストール ==== もし、fliteライブラリおよびlibspeechdライブラリがパッケージ管理システムに存在しない場合、<br> fliteライブラリおよびlibspeechdライブラリのビルドに必要なライブラリをインストールする。<br> sudo zypper install glib2-devel gcc-c+ automake autoconf pkg-config libtool makeinfo texinfo gettext-runtime gettext-tools \ dotconf-devel libsndfile-devel python3-pyxdg festival-devel libpulse-devel espeak-devel <br> [http://www.festvox.org/flite/download.html fliteライブラリの公式Webサイト]、または、[https://github.com/festvox/flite.git fliteライブラリのGithub]にアクセスして、ソースコードをダウンロードする。<br> または、<code>git clone</code>コマンドを実行して、fliteライブラリのソースコードをダウンロードする。<br> git clone https://github.com/festvox/flite.git cd flite <br> fliteライブラリをビルドおよびインストールする。<br> ./configure --prefix=<fliteライブラリのインストールディレクトリ> --enable-shared make -j $(nproc) make get_voices -j $(nproc) make install <br> [https://github.com/brailcom/speechd.git libspeechdライブラリのGithub]にアクセスして、ソースコードをダウンロードする。<br> または、<code>git clone</code>コマンドを実行して、libspeechdライブラリのソースコードをダウンロードする。<br> git clone https://github.com/brailcom/speechd.git cd speechd <br> libspeechdライブラリをビルドおよびインストールする。<br> export PATH="/<fliteライブラリのインストールディレクトリ>/bin:$PATH" export LD_LIBRARY_PATH="/<fliteライブラリのインストールディレクトリ>/lib64:$LD_LIBRARY_PATH" autoreconf -i ./configure --prefix=<libspeechdライブラリのインストールディレクトリ> --enable-shared --with-flite=<fliteライブラリのインストールディレクトリ> make -j $(nproc) sudo make install <br> ==== ソースコードのダウンロード ==== Qtのソースコードをダウンロードする。<br> * Qt Everywhere (推奨)<br> *: <code>wget https://download.qt.io/official_releases/qt/x.x/x.x.x/single/qt-everywhere-src-x.x.x.tar.xz</code> *: <code>tar xf qt-everywhere-opensource-src-x.x.x.tar.gz</code> *: <br> * Githubの使用 *: GithubからQtのソースコードを個別にダウンロードする。<br> *: <code>git clone https://github.com/qt/qt5.git</code> *: <br> *: ダウンロードしたスーパーリポジトリに移動する。<br> *: <code>cd qt5</code> *: <code>git checkout <Qtのバージョン></code> *: または *: <code>git checkout <Qtのショートバージョン></code> *: <br> *: <code>init-repository</code>コマンドは、Qtが提供する指定したモジュールのソースコードを取得するためのツールである。<br> *: スーパーリポジトリは小さく、全てのモジュール(ライブラリ)はgit submodulesとして保持されている。<br> *: <br> *: 利用可能な全てのモジュールについては[https://doc.qt.io/qt-5/qtmodules.html Qt5の公式Webサイト]、ツールについては<code>init-repository --help</code>コマンドまたは[https://github.com/qt/qt5/blob/dev/init-repository Qt5のGithub]を参照すること。<br> *: <code>./init-repository --module-subset=essential,qtsvg,qtvirtualkeyboard,qtquickcontrols</code> *: <code>./init-repository -f --module-subset=qtquick3d,qtquicktimeline,qtwayland</code> # 必要な場合は個別に追加ダウンロードする <br> ==== ソースコードのビルド ==== ビルド用ディレクトリを作成する。<br> mkdir build && cd build <br> Qtをビルドおよびインストールする。<br> * configureスクリプトを使用する場合 *: <code>CC=<GCC 8以降のGCC実行ファイルのパス> CXX=<GCC 8以降のG++実行ファイルのパス> \</code> *: <code>../configure -release \</code> *: <code>-opensource -confirm-license -v \</code> *: <code>-opengl es2 \</code> # このオプションは不要の可能性あり *: <code>-no-use-gold-linker -recheck-all \</code> # このオプションは不要の可能性あり *: <code>-no-compile-examples -make libs \</code> *: <code>-skip qtandroidextras -skip qtmacextras -skip qtwinextras \</code> *: <code>-prefix <Qtのインストールディレクトリ> \</code> *: <code>-no-pch</code> *: <br> * qmakeを使用する場合 *: オプションのClang Code Modelプラグインをビルドする場合、LLVMのインストールディレクトリへのパスを指定する必要がある。 *: <code>export LLVM_INSTALL_DIR=<LLVMのインストールディレクトリ></code> *: <br> *: <code>qmake ../qt-creator/qtcreator.pro</code> *: <code>make qmake_all</code> *: <code>make -j $(nproc)</code> *: <br> *: もし、<code>Project ERROR: Unknown module(s) in QT: script</code>というエラーが出力される場合、以下のコマンドを実行する。 *: <code>make -j $(nproc) module-qtscript</code> *: <br> * cmakeを使用する場合 *: Qtのソースコードをビルドする。 *: <code>cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=<Qtのインストールディレクトリ> <LLVMのインストールディレクトリ> ../qt-creator</code> *: <code>ninja -C ../ build</code> <br> コンパイルには多くの時間が掛かることに注意する。<br> (バイナリファイルは、qt-createor-build/binディレクトリに作成される)<br> <br> ==== Qtのインストール ==== Qtをインストールする。<br> make install INSTALL_ROOT=<Qtのインストールディレクトリ> <br> ==== QtWebEngineのインストール ==== QtWebEngineを別途インストールする場合は、以下の手順に従う。<br> # もし、必要ならば、Qtの公式WebサイトからQtWebEngineをダウンロードする。 #: https://download.qt.io/official_releases/qt/x.x/x.x.x/submodules/qtwebengine-everywhere-src-x.x.x.tar.xz #: <br> # もし、上記URLからQtWebEngine単体をダウンロードしてビルドする場合は、ローカルヘッダが利用可能であることを確認する。 #: <code>find <QtWebEngineのソースコードがあるディレクトリ> -type f -name "*.pr[io]" | xargs sed -i -e 's|INCLUDEPATH += |&$$QTWEBENGINE_ROOT/include |'</code> #* <br> # QtWebEngineでのジャンボビルドを無効化する。 (標準のジャンボビルドシステムでは、コンパイル時に不明のエラーが出力されるため) #: <code>sed -i -e 's|use_jumbo_build=true|use_jumbo_build=false|' /<QtWebEngineのソースコードがあるディレクトリ>/src/buildtools/config/common.pri</code> #: <br> # QtWebEngineは、現在のパブリックリリースよりも遅いリリースを目的としているため、Qt 5.15.2向けとしてビルドするように変更する。 #: <code>sed -e '/^MODULE_VERSION/s/5.*/5.15.2/' -i /<QtWebEngineのソースコードがあるディレクトリ>/.qmake.conf</code> #: <br> # PulseAudioライブラリを実行時ではなく、ビルド時にリンクするようにする。<br>これは、新しいPulseAudioでの問題を防ぐことにもなる。 #: <code>sed -e '/link_pulseaudio/s/false/true/' -i /<QtWebEngineのソースコードがあるディレクトリ>/src/3rdparty/chromium/media/media_options.gni</code> #: <br> # ビルドシステムの変更点として、<code>make</code>に<code>-j 20</code>等を渡す場合、LFSの環境変数<code>NINJAJOBS</code>の使用でビルドが破壊されることを修正する。 #: <code>sed -i 's/NINJAJOBS/NINJA_JOBS/' /<QtWebEngineのソースコードがあるディレクトリ>/src/core/gn_run.pro</code> #: <br> # Qt WebEngineをビルドおよびインストールする。 #: <code>mkdir build && cd build</code> #: <br> #: <code>export PATH="/<Qtのインストールディレクトリ>/bin:$PATH"; \</code> #: <code>export LD_LIBRARY_PATH="/<Qtのインストールディレクトリ>/lib64:$LD_LIBRARY_PATH"; \</code> #: <code>export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:$(pkg-config --variable pc_path pkg-config)" \</code> #: <code>export PKG_CONFIG_PATH="/<Qtのインストールディレクトリ>/lib/pkgconfig:$PKG_CONFIG_PATH"</code> #: <br> #: <code>qmake .. -- -system-ffmpeg -webengine-icu</code> #: <code>make -j $(nproc)</code> #: <code>make install</code> #: <br> # インストールされたライブラリ依存ファイル(.prlファイル)から、ビルドディレクトリへの参照を削除する。 #: <code>find /<Qtのインストールディレクトリ> -name \*.prl -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;</code> <br><br> == デスクトップエントリの追加 == 以下のコマンドを実行して、デスクトップエントリを追加する。 vi ~/.local/share/applications/Qt_Creator.desktop <br> # Qt_Creator.desktopファイル [Desktop Entry] Type=Application Exec="/home/<ユーザ名>/Qt/Tools/QtCreator/bin/qtcreator" %F Name=Qt Creator <バージョン名> GenericName=Qt Creator Icon=QtProject-qtcreator StartupWMClass=qtcreator Terminal=false Categories=Development;IDE;Qt; MimeType=text/x-c++src;text/x-c++hdr;text/x-xsrc;application/x-designer;application/vnd.qt.qmakeprofile;application/vnd.qt.xml.resource;text/x-qml;text/x-qt.qml;text/x-qt.qbs; <br> vi ~/.local/share/applications/Qt_MaintenanceTool.desktop <br> # Qt_MaintenanceTool.desktopファイル [Desktop Entry] Type=Application Path=/home/<ユーザ名>/Qt Name=Qt Maintenance Tool GenericName=Install or uninstall Qt components. Exec=/home/<ユーザ名>/Qt/MaintenanceTool Icon=/home/<ユーザ名>/Qt/QtIcon.png Terminal=false Categories=Development;Qt; <br> vi ~/.local/share/applications/Qt_Designer.desktop <br> # Qt_Designer.desktopファイル [Desktop Entry] Type=Application Name=Qt Designer <バージョン名> GenericName=Qt Designer Comment= Path= Exec="/home/<ユーザ名>/Qt/<バージョン名>/gcc_64/bin/designer" %F Icon=/home/<ユーザ名>/.icons/Qt_Designer.png StartupNotify=true StartupWMClass=qtdesigner Terminal=false TerminalOptions= Categories=Development;IDE;Qt; MimeType=text/x-c++src;text/x-c++hdr;text/x-xsrc;application/x-designer;application/vnd.qt.qmakeprofile;application/vnd.qt.xml.resource;text/x-qml;text/x-qt.qml;text/x-qt.qbs; X-DBUS-ServiceName= X-DBUS-StartupType= X-KDE-SubstituteUID=false X-KDE-Username= <br><br> == 日本語入力 == 専用のインストーラからQtをインストールする場合、Qt Creatorにおいて、日本語が入力できない問題が存在する。<br> <br> これは、plugins/platforminputcontextsディレクトリにlibfcitxplatforminputcontextplugin.soファイルが欠如しているため、IMEの切り替えができないからである。<br> そのため、ユーザがlibfcitxplatforminputcontextplugin.soファイルを含むfcitx-qt5ライブラリを、ソースコードからビルドしてインストールする必要がある。<br> <br> 以下に、fcitx-qt5ライブラリをインストールする手順を示す。<br> # まず、Qt Creatorを起動して、[ヘルプ]メインメニューから[About Qt Creator...]を選択、バージョン情報を確認する。<br>以下の画像では、Qt Creatorのバージョンは6.0.2、Qt Creatorのビルドに使用されたQt SDKは6.2.2となっている。 #: [[ファイル:Install Qt 1.png|フレームなし|中央]] #: <br> # fcitx-qt5のインストールに必要な依存関係のライブラリをインストールする。 #: <code>sudo zypper install extra-cmake-modules libxkbcommon-devel</code> # fcitx-qt5のソースコードをダウンロードする。 #: <code>git clone https://github.com/fcitx/fcitx-qt5.git</code> # もし、上記の画像のように、<u>Qt Creatorのビルドに使用されたQt SDKが6の場合、</u><br><u>Qtメンテナンスツールを起動して、[コンポーネントの追加または削除]から該当するQtのバージョン以降の[Desktop gcc 64-bit]のみをインストールする。</u> #: <br> # ダウンロードしたfcitx-qt5のディレクトリに移動して、ビルド向けディレクトリを作成する。 #: <code>cd fcitx-qt5 && mkdir build && cd build</code> # fcitx-qt5ライブラリをビルドおよびインストールする。<br><u>インストールディレクトリは、自動的に/<Qtのインストールディレクトリ>/<バージョン>/gcc_64/plugins/platforminputcontextsディレクトリにインストールされる。</u> #: # Qt Creatorのビルドに使用されたQt SDKが5の場合 #: <code>export PATH="/<Qtのインストールディレクトリ>/<Qt5のバージョン>/gcc_64/bin:$PATH"</code> #: <code>export CPATH="/<Qtのインストールディレクトリ>/<Qt5のバージョン>/gcc_64/include:$CPATH"</code> #: <code>export LD_LIBRARY_PATH="/<Qtのインストールディレクトリ>/<Qt5のバージョン>/gcc_64/lib:$LD_LIBRARY_PATH"</code> #: <code>export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:$(pkg-config --variable pc_path pkg-config)"</code> #: <code>export PKG_CONFIG_PATH="/<Qtのインストールディレクトリ>/<Qt5のバージョン>/gcc_64/lib/pkgconfig:$PKG_CONFIG_PATH"</code> #: <br> #: # Qt Creatorのビルドに使用されたQt SDKが6の場合 #: <code>export PATH="/<Qtのインストールディレクトリ>/<Qt6のバージョン>/gcc_64/bin:$PATH"</code> #: <code>export CPATH="/<Qtのインストールディレクトリ>/<Qt6のバージョン>/gcc_64/include:$CPATH"</code> #: <code>export LD_LIBRARY_PATH="/<Qtのインストールディレクトリ>/<Qt6のバージョン>/gcc_64/lib:$LD_LIBRARY_PATH"</code> #: <code>export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:$(pkg-config --variable pc_path pkg-config)"</code> #: <code>export PKG_CONFIG_PATH="/<Qtのインストールディレクトリ>/<Qt6のバージョン>/gcc_64/lib/pkgconfig:$PKG_CONFIG_PATH"</code> #: <br> #: # ビルドおよびインストール #: <code>ENABLE_LIBRARY=$(pkg-config --exists fcitx icu-uc && echo ON || echo OFF) && \</code> #: <code>cmake .. -DENABLE_LIBRARY=$ENABLE_LIBRARY \</code> #: <code>-DCMAKE_C_COMPILER=<GCC 8以降:Qt Creatorのビルドに使用されたQt SDKが6の場合> -DCMAKE_CXX_COMPILER=<GCC 8以降:Qt Creatorのビルドに使用されたQt SDKが6の場合> \</code> #: <code>-DCMAKE_BUILD_TYPE=Release \</code> #: <code>-DENABLE_QT4=<Qt Creatorのビルドに使用されたQt SDKが4の場合はon、それ以外はoff> \</code> #: <code>-DENABLE_QT5=<Qt Creatorのビルドに使用されたQt SDKが5の場合はon、それ以外はoff> \</code> #: <code>-DENABLE_QT6=<Qt Creatorのビルドに使用されたQt SDKが6の場合はon、それ以外はoff> \</code> #: <code>-DCMAKE_PREFIX_PATH=/<Qtのインストールディレクトリ>/<バージョン>/gcc_64 # Qt Creatorのビルドに使用されたQt SDKのディレクトリ</code> #: <br> #: <code>make -j $(nproc)</code> #: <code>make install</code> # インストールしたlibfcitxplatforminputcontextplugin.soファイルを、/<Qtのインストールディレクトリ>/Tools/QtCreator/lib/Qt/plugins/platforminputcontextsディレクトリに配置する。<br>これにより、Qt Creator等において、FcitxでのIMEの切り替えができるようになる。<br><br><u>ただし、Qt Creatorをアップデートする場合は、fcitx-qt5を再インストールする必要があるため注意すること。</u> #: <br> #: <code>cp /<Qtのインストールディレクトリ>/<バージョン>/gcc_64/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so \</code> #: <code> /<Qtのインストールディレクトリ>/Tools/QtCreator/lib/Qt/plugins/platforminputcontexts</code> <br><br> == Felgoのインストール == ==== Felgoとは ==== Felgoは、Qtフレームワークをベースに大幅に拡張したクロスプラットフォームのソフトウェア開発ソリューションであり、<br> PC、Android、iOS、Web(WebAssembly)、組み込みシステム等の多くのプラットフォームでネイティブに動作する。<br> <br> Felgoは、以下に示すような独自のQt/QMLツール、クラウドサービス、Qtを拡張する200以上のAPIを追加したFelgo SDKを提供している。<br> * 高度なコントロールとネイティブなナビゲーション * テーマとスタイル * レイアウト * ファイル操作(ローカル/リモート) * データ管理とモデル/ビュー * マルチメディア * RESTネットワーク(※) * ネイティブなダイアログと機能 <br> ※RESTとは<br> Webシステムに適用したソフトウェアの設計様式のことであり、パラメータを指定して特定のURLにHTTPでアクセスする時、<br> XMLやJSONなどで記述されたメッセージが送られてくるようなシステム、および、そのような呼び出し規約のことである。<br> <br> 本来のRESTの設計原則は主として以下の4つの項目からなる。<br> * セッション等の状態管理を行わず、やり取りされる情報はそれ自体で完結して解釈することができる。(WebではHTTP自体にはセッション管理の機構はない) * 情報を操作する命令の体系が予め定義・共有されている。(WebではHTTPメソッドに相当) * 全ての情報は汎用的な構文で一意に識別される。(URL/URIに相当) * 情報の一部として、別の状態や別の情報への参照を含めることができる。(ハイパーメディア的な書式で情報を表現する。HTMLやXMLに相当) <br> ==== Felgoのインストール ==== 既存のQtにFelgoを拡張機能として追加することができる。<br> <br> まず、[https://marketplace.qt.io/products/felgo FelgoのQt Marketplace]にアクセスおよびログインした後、[Qt extension]を選択する。<br> 必要な情報を入力して、[Continue to payment]を選択する。<br> <br> 次に、Qtメンテナンスツールを起動して、[コンポーネントの選択]画面の[Marketplace]項目でFelgoを選択およびインストールする。<br> もし、Felgoをインストールできない場合は、Felgoインストーラを使用して、既存のQtとは別にFelgoをインストールする。<br> <br> <u>※注意</u><br> <u>最新版のQtに対応したFelgoがまだリリースされていない場合は、Felgoはビルドキットに追加されない。</u><br> <br> Felgoのアカウントの削除する場合は、[https://felgo.com/developers Felgoの公式Webサイト]にアクセスおよびログインする。<br> アカウント設定ページ右の[Edit] - アカウント設定ページ下の[Account Termination Request] - [Delete Account]ボタンを押下する。<br> <br><br> == Raspberry Piのクロスコンパイル == Raspberry Piでクロスコンパイルを行う場合、[[インストール - Qt5 Raspberry Pi]]のページを参照すること。<br> <br><br> == PinePhoneのクロスコンパイル == Raspberry Piでクロスコンパイルを行う場合、[[インストール_-_Qt5_PinePhone]]のページを参照すること。<br> <br><br> {{#seo: |title={{PAGENAME}} : Exploring Electronics and SUSE Linux | MochiuWiki |keywords=MochiuWiki,Mochiu,Wiki,Mochiu Wiki,Electric Circuit,Electric,pcb,Mathematics,AVR,TI,STMicro,AVR,ATmega,MSP430,STM,Arduino,Xilinx,FPGA,Verilog,HDL,PinePhone,Pine Phone,Raspberry,Raspberry Pi,C,C++,C#,Qt,Qml,MFC,Shell,Bash,Zsh,Fish,SUSE,SLE,Suse Enterprise,Suse Linux,openSUSE,open SUSE,Leap,Linux,uCLnux,Podman,電気回路,電子回路,基板,プリント基板 |description={{PAGENAME}} - 電子回路とSUSE Linuxに関する情報 | This page is {{PAGENAME}} in our wiki about electronic circuits and SUSE Linux |image=/resources/assets/MochiuLogo_Single_Blue.png }} __FORCETOC__ [[カテゴリ:RHEL]][[カテゴリ:SUSE]][[カテゴリ:Qt]][[カテゴリ:Raspberry_Pi]][[カテゴリ:PinePhone]]
インストール - Qt5
に戻る。
案内
メインページ
最近の更新
おまかせ表示
MediaWiki についてのヘルプ
ツール
リンク元
関連ページの更新状況
特別ページ
ページ情報
We ask for
Donations
Collapse