インストール - Qt5
概要
Qtは、デスクトップ、組み込み、モバイルプラットフォーム向けのソフトウェアやユーザーインターフェイスの作成を効率化するために設計されたツールを備えた完全な開発フレームワークである。
Qt 5.15 LTSのサポート期間は、Qtレガシーライセンスは2023年5月26日まで、Qtサブスクリプションライセンスは2025年5月26日までである。
Qtライセンスを購入するには、http://www.qt.io/download/ を参照すること。
Qt ライセンス
Qtは、様々なユーザのニーズに対応できるよう、様々なライセンスオプションが用意されている。
商用ライセンスでライセンスされたQtは、第三者とソースコードを共有したくない場合やGNU LGPL version 3の条項に準拠できない場合、プロプライエタリ / 商用ソフトウェアの開発に適している。
LGPL version 3の下でライセンスされたQtは、GNU LGPL version 3またはGNU GPL version 3の条項と条件に従うことができれば、Qtアプリケーションの開発に適している。
Qtマーケットプレイスライセンス契約に基づいてライセンスされたQtコンポーネントは、
商用またはGNU LGPL version 3またはGNU GPL version 3の条件に基づいてライセンスされたQtソフトウェアコンポーネントと共通のQtアプリケーションの開発に適している。
Qtには、元の開発者から特定のオープンソースライセンスの下でライセンスされているサードパーティのコードも含まれている。
また、Qtのサンプルは、The Qt Companyの商用ライセンスおよびBSD 3条項ライセンスの下で入手可能である。
Qtライセンスの概要については、http://qt.io/licensing/ を参照すること。
通常のインストール
依存関係のライブラリのインストール
Qtの依存関係のライブラリをインストールする。
これらのライブラリは不要な可能性がある。(調査中)
# 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
Qtのダウンロード
最新版のQtをダウンロードするため、以下のコマンドを実行する。
ファイル情報を知りたい場合はこのWebサイトを参照する。
wget http://download.qt.io/official_releases/online_installers/qt-unified-linux-x64-online.run
ダウンロードしたファイルのアクセス権限を変更する。
chmod +x qt-unified-linux-x64-online.run
Qtのインストール
/usr/localディレクトリ等にインストールする場合は、スーパーユーザでインストールする。
ホームディレクトリにインストールする場合は、ローカルユーザでインストールする。
次に、GCCおよびmake、付随するライブラリをインストールする。
# RHEL sudo dnf groupinstall "Development tools" # SUSE sudo zypper install --type pattern devel_basis
Qtをインストールする。
./qt-unified-linux-x64-online.run
Qtのインストール画面に従って、インストールを実行する。
Qtをインストールした後、必要ならば、以下のコマンドを実行する。
これは、pkg-config
コマンドが指すディレクトリを変更する設定である。
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" ./*
ソースコードからインストール
必須環境
- 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以降
- Clang Code Model、Clang Tools、ClangFormat、Clang PCH Manager、Clang Refactoringプラグインに必要である。
- LLVM C++ APIは互換性を保証するものではないので、それ以降のバージョンがコンパイルできない場合は、そのバージョンをサポートしていない。
- オプション : Qbs 1.7.x
- Qtのソースコードには、Qbs自身も含まれている。
また、Qtをビルドする時のオプション設定を以下に記載する。
# オプション : 環境変数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=<ライブラリを保持するディレクトリ>
依存関係のライブラリのインストール
Qtのソースコードをコンパイルするために必要な依存関係のライブラリをインストールする。
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
SUSEにおいて、マルチメディア関連やBluetooth等を使用したソフトウェアを開発する場合、下表に示すパッケージをインストールする。
機能 | インストールするライブラリ | configureスクリプトのオプション |
---|---|---|
Bluetooth | bluez bluez-devel bluez-tools | |
画像 | openjpeg-devel openjpeg2-devel libjpeg62-devel libpng12-devel libpng16-devel libtiff-devel libmng-devel libwebp-devel libjasper-devel |
|
マルチメディア | ffmpeg-4-libavdevice-devel ffmpeg-4-private-devel gstreamer-devel gstreamermm-devel gstreamer-plugins-base-devel gstreamer-plugins-bad-devel gstreamer-plugins-rs-devel gstreamer-devtools-devel 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) libmariadb-devel libmariadbd-devel libmariadbprivate (MariaDB) unixODBC-devel (ODBC) sqlite3-devel (SQLite) |
|
プリンタ | cups-devel | |
X11 | libXft-devel libX11-devel libxcb-devel libXext-devel libXfixes-devel libXrender-devel libxcb-devel xcb-util-keysyms-devel xcb-util-image-devel xcb-util-wm-devel libXfixes-devel xcb-util-renderutil-devel libXinerama-devel libXcomposite-devel libXcursor-devel libXrandr-devel libXtst-devel 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 xcb-util-keysyms-devel xcb-util-wm-devel xorg-x11-devel libxkbcommon-x11-devel libxkbcommon-devel libXi-devel libxkbfile-devel xorg-x11-util-devel xorg-x11-libs |
|
X Wayland | xwayland-devel | |
WebEngine | 必須 : flex bison gperf glibc-devel-static libcap-devel readline-devel mozilla-nss-devel mozilla-nspr-devel libgcrypt20 libgcrypt-devel libgudev-1_0-devel ruby npm16 nodejs16-devel nodejs-common libdrm-devel pciutils-devel xmlsec1-nss-devel systemd-devel libxshmfence-devel libqt5-qtsvg-devel libqt5-qtsvg-private-headers-devel オプション1 : libxml2-devel libxml++-devel libxslt-devel minizip-devel jsoncpp-devel liblcms2-devel libevent-devel protobuf-devel libprotobuf-c-devel pipewire-devel krb5-devel オプション2(不安定なため注意すること) : libopus-devel libvpx-devel libpoppler-devel libpoppler-glib-devel |
|
アクセシビリティ | at-spi2-atk-devel at-spi2-core-devel | |
SCTP | lksctp-tools-devel | -sctp |
- 上表のライブラリを全てインストールする場合
sudo zypper install \
bluez bluez-devel bluez-tools \
openjpeg-devel openjpeg2-devel libjpeg62-devel libpng12-devel libpng16-devel libtiff-devel libmng-devel libwebp-devel libjasper-devel \
ffmpeg-4-libavdevice-devel ffmpeg-4-private-devel \
gstreamer-devel gstreamermm-devel gstreamer-plugins-base-devel gstreamer-plugins-bad-devel gstreamer-plugins-rs-devel gstreamer-devtools-devel \
gnome-video-effects-devel gstreamer-editing-services-devel \
alsa-devel libpulse-devel openal-soft-devel libgypsy-devel \
festival-devel libspeechd-devel \
libserialport-devel libsensors4-devel unixODBC-devel sqlite3-devel cups-devel \
libXft-devel libX11-devel libxcb-devel libXext-devel libXfixes-devel libXrender-devel libxcb-devel xcb-util-keysyms-devel xcb-util-image-devel \
xcb-util-wm-devel libXfixes-devel xcb-util-renderutil-devel libXinerama-devel libXcomposite-devel libXcursor-devel libXrandr-devel libXtst-devel \
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 \
xcb-util-keysyms-devel xcb-util-wm-devel xorg-x11-devel libxkbcommon-x11-devel libxkbcommon-devel libXi-devel libxshmfence-devel \
libxkbfile-devel xorg-x11-util-devel xorg-x11-libs xwayland-devel \
at-spi2-atk-devel at-spi2-core-devel lksctp-tools-devel \
flex bison gperf libcap-devel readline-devel mozilla-nss-devel mozilla-nspr-devel libdrm-devel \
libxml2-devel libxml++-devel libxslt-devel minizip-devel jsoncpp-devel liblcms2-devel libevent-devel protobuf-devel libprotobuf-c-devel pipewire-devel krb5-devel \
libgcrypt20 libgcrypt-devel libgudev-1_0-devel ruby npm-default pciutils-devel xmlsec1-nss-devel systemd-devel \
libqt5-qtsvg-devel libqt5-qtsvg-private-headers-devel
fliteライブラリおよびlibspeechdライブラリのインストール
もし、fliteライブラリおよびlibspeechdライブラリがパッケージ管理システムに存在しない場合、
fliteライブラリおよびlibspeechdライブラリのビルドに必要なライブラリをインストールする。
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
fliteライブラリの公式Webサイト、または、fliteライブラリのGithubにアクセスして、ソースコードをダウンロードする。
または、git clone
コマンドを実行して、fliteライブラリのソースコードをダウンロードする。
git clone https://github.com/festvox/flite.git cd flite
fliteライブラリをビルドおよびインストールする。
./configure --prefix=<fliteライブラリのインストールディレクトリ> --enable-shared make -j $(nproc) make get_voices -j $(nproc) make install
libspeechdライブラリのGithubにアクセスして、ソースコードをダウンロードする。
または、git clone
コマンドを実行して、libspeechdライブラリのソースコードをダウンロードする。
git clone https://github.com/brailcom/speechd.git cd speechd
libspeechdライブラリをビルドおよびインストールする。
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
ソースコードのダウンロード
Qtのソースコードをダウンロードする。
- Qt Everywhere (推奨)
wget https://download.qt.io/official_releases/qt/x.x/x.x.x/single/qt-everywhere-src-x.x.x.tar.xz
tar xf qt-everywhere-opensource-src-x.x.x.tar.gz
- Githubの使用
- GithubからQtのソースコードを個別にダウンロードする。
git clone https://github.com/qt/qt5.git
- ダウンロードしたスーパーリポジトリに移動する。
cd qt5
git checkout <Qtのバージョン>
- または
git checkout <Qtのショートバージョン>
init-repository
コマンドは、Qtが提供する指定したモジュールのソースコードを取得するためのツールである。- スーパーリポジトリは小さく、全てのモジュール(ライブラリ)はgit submodulesとして保持されている。
- 利用可能な全てのモジュールについてはQt5の公式Webサイト、ツールについては
init-repository --help
コマンドまたはQt5のGithubを参照すること。 ./init-repository --module-subset=essential,qtsvg,qtvirtualkeyboard,qtquickcontrols
./init-repository -f --module-subset=qtquick3d,qtquicktimeline,qtwayland
# 必要な場合は個別に追加ダウンロードする
- GithubからQtのソースコードを個別にダウンロードする。
ソースコードのビルド
ビルド用ディレクトリを作成する。
mkdir build && cd build
Qtをビルドおよびインストールする。
- configureスクリプトを使用する場合
CC=<GCC 8以降のGCC実行ファイルのパス> CXX=<GCC 8以降のG++実行ファイルのパス> \
../configure -release \
-opensource -confirm-license -v \
-opengl es2 \
# このオプションは不要の可能性あり-no-use-gold-linker -recheck-all \
# このオプションは不要の可能性あり-no-compile-examples -make libs \
-skip qtandroidextras -skip qtmacextras -skip qtwinextras \
-prefix <Qtのインストールディレクトリ> \
-no-pch
- qmakeを使用する場合
- オプションのClang Code Modelプラグインをビルドする場合、LLVMのインストールディレクトリへのパスを指定する必要がある。
export LLVM_INSTALL_DIR=<LLVMのインストールディレクトリ>
qmake ../qt-creator/qtcreator.pro
make qmake_all
make -j $(nproc)
- もし、
Project ERROR: Unknown module(s) in QT: script
というエラーが出力される場合、以下のコマンドを実行する。 make -j $(nproc) module-qtscript
- cmakeを使用する場合
- Qtのソースコードをビルドする。
cmake -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=<Qtのインストールディレクトリ> <LLVMのインストールディレクトリ> ../qt-creator
ninja -C ../ build
コンパイルには多くの時間が掛かることに注意する。
(バイナリファイルは、qt-createor-build/binディレクトリに作成される)
Qtのインストール
Qtをインストールする。
make install INSTALL_ROOT=<Qtのインストールディレクトリ>
QtWebEngineのインストール
QtWebEngineを別途インストールする場合は、以下の手順に従う。
- もし、必要ならば、Qtの公式WebサイトからQtWebEngineをダウンロードする。
- もし、上記URLからQtWebEngine単体をダウンロードしてビルドする場合は、ローカルヘッダが利用可能であることを確認する。
find <QtWebEngineのソースコードがあるディレクトリ> -type f -name "*.pr[io]" | xargs sed -i -e 's|INCLUDEPATH += |&$$QTWEBENGINE_ROOT/include |'
- QtWebEngineでのジャンボビルドを無効化する。 (標準のジャンボビルドシステムでは、コンパイル時に不明のエラーが出力されるため)
sed -i -e 's|use_jumbo_build=true|use_jumbo_build=false|' /<QtWebEngineのソースコードがあるディレクトリ>/src/buildtools/config/common.pri
- QtWebEngineは、現在のパブリックリリースよりも遅いリリースを目的としているため、Qt 5.15.2向けとしてビルドするように変更する。
sed -e '/^MODULE_VERSION/s/5.*/5.15.2/' -i /<QtWebEngineのソースコードがあるディレクトリ>/.qmake.conf
- PulseAudioライブラリを実行時ではなく、ビルド時にリンクするようにする。
これは、新しいPulseAudioでの問題を防ぐことにもなる。sed -e '/link_pulseaudio/s/false/true/' -i /<QtWebEngineのソースコードがあるディレクトリ>/src/3rdparty/chromium/media/media_options.gni
- ビルドシステムの変更点として、
make
に-j 20
等を渡す場合、LFSの環境変数NINJAJOBS
の使用でビルドが破壊されることを修正する。sed -i 's/NINJAJOBS/NINJA_JOBS/' /<QtWebEngineのソースコードがあるディレクトリ>/src/core/gn_run.pro
- Qt WebEngineをビルドおよびインストールする。
mkdir build && cd build
export PATH="/<Qtのインストールディレクトリ>/bin:$PATH"; \
export LD_LIBRARY_PATH="/<Qtのインストールディレクトリ>/lib64:$LD_LIBRARY_PATH"; \
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:$(pkg-config --variable pc_path pkg-config)" \
export PKG_CONFIG_PATH="/<Qtのインストールディレクトリ>/lib/pkgconfig:$PKG_CONFIG_PATH"
qmake .. -- -system-ffmpeg -webengine-icu
make -j $(nproc)
make install
- インストールされたライブラリ依存ファイル(.prlファイル)から、ビルドディレクトリへの参照を削除する。
find /<Qtのインストールディレクトリ> -name \*.prl -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
デスクトップエントリの追加
以下のコマンドを実行して、デスクトップエントリを追加する。
vi ~/.local/share/applications/Qt_Creator.desktop
# 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;
vi ~/.local/share/applications/Qt_MaintenanceTool.desktop
# 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;
vi ~/.local/share/applications/Qt_Designer.desktop
# 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=
日本語入力
専用のインストーラからQtをインストールする場合、Qt Creatorにおいて、日本語が入力できない問題が存在する。
これは、plugins/platforminputcontextsディレクトリにlibfcitxplatforminputcontextplugin.soファイルが欠如しているため、IMEの切り替えができないからである。
そのため、ユーザがlibfcitxplatforminputcontextplugin.soファイルを含むfcitx-qt5ライブラリを、ソースコードからビルドしてインストールする必要がある。
以下に、fcitx-qt5ライブラリをインストールする手順を示す。
- まず、Qt Creatorを起動して、[ヘルプ]メインメニューから[About Qt Creator...]を選択、バージョン情報を確認する。
以下の画像では、Qt Creatorのバージョンは6.0.2、Qt Creatorのビルドに使用されたQt SDKは6.2.2となっている。 - fcitx-qt5のインストールに必要な依存関係のライブラリをインストールする。
sudo zypper install extra-cmake-modules libxkbcommon-devel
- fcitx-qt5のソースコードをダウンロードする。
git clone https://github.com/fcitx/fcitx-qt5.git
- もし、上記の画像のように、Qt Creatorのビルドに使用されたQt SDKが6の場合、
Qtメンテナンスツールを起動して、[コンポーネントの追加または削除]から該当するQtのバージョン以降の[Desktop gcc 64-bit]のみをインストールする。 - ダウンロードしたfcitx-qt5のディレクトリに移動して、ビルド向けディレクトリを作成する。
cd fcitx-qt5 && mkdir build && cd build
- fcitx-qt5ライブラリをビルドおよびインストールする。
インストールディレクトリは、自動的に/<Qtのインストールディレクトリ>/<バージョン>/gcc_64/plugins/platforminputcontextsディレクトリにインストールされる。- # Qt Creatorのビルドに使用されたQt SDKが5の場合
export PATH="/<Qtのインストールディレクトリ>/<Qt5のバージョン>/gcc_64/bin:$PATH"
export CPATH="/<Qtのインストールディレクトリ>/<Qt5のバージョン>/gcc_64/include:$CPATH"
export LD_LIBRARY_PATH="/<Qtのインストールディレクトリ>/<Qt5のバージョン>/gcc_64/lib:$LD_LIBRARY_PATH"
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:$(pkg-config --variable pc_path pkg-config)"
export PKG_CONFIG_PATH="/<Qtのインストールディレクトリ>/<Qt5のバージョン>/gcc_64/lib/pkgconfig:$PKG_CONFIG_PATH"
- # Qt Creatorのビルドに使用されたQt SDKが6の場合
export PATH="/<Qtのインストールディレクトリ>/<Qt6のバージョン>/gcc_64/bin:$PATH"
export CPATH="/<Qtのインストールディレクトリ>/<Qt6のバージョン>/gcc_64/include:$CPATH"
export LD_LIBRARY_PATH="/<Qtのインストールディレクトリ>/<Qt6のバージョン>/gcc_64/lib:$LD_LIBRARY_PATH"
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:$(pkg-config --variable pc_path pkg-config)"
export PKG_CONFIG_PATH="/<Qtのインストールディレクトリ>/<Qt6のバージョン>/gcc_64/lib/pkgconfig:$PKG_CONFIG_PATH"
- # ビルドおよびインストール
ENABLE_LIBRARY=$(pkg-config --exists fcitx icu-uc && echo ON || echo OFF) && \
cmake .. -DENABLE_LIBRARY=$ENABLE_LIBRARY \
-DCMAKE_C_COMPILER=<GCC 8以降:Qt Creatorのビルドに使用されたQt SDKが6の場合> -DCMAKE_CXX_COMPILER=<GCC 8以降:Qt Creatorのビルドに使用されたQt SDKが6の場合> \
-DCMAKE_BUILD_TYPE=Release \
-DENABLE_QT4=<Qt Creatorのビルドに使用されたQt SDKが4の場合はon、それ以外はoff> \
-DENABLE_QT5=<Qt Creatorのビルドに使用されたQt SDKが5の場合はon、それ以外はoff> \
-DENABLE_QT6=<Qt Creatorのビルドに使用されたQt SDKが6の場合はon、それ以外はoff> \
-DCMAKE_PREFIX_PATH=/<Qtのインストールディレクトリ>/<バージョン>/gcc_64 # Qt Creatorのビルドに使用されたQt SDKのディレクトリ
make -j $(nproc)
make install
- インストールしたlibfcitxplatforminputcontextplugin.soファイルを、/<Qtのインストールディレクトリ>/Tools/QtCreator/lib/Qt/plugins/platforminputcontextsディレクトリに配置する。
これにより、Qt Creator等において、FcitxでのIMEの切り替えができるようになる。
ただし、Qt Creatorをアップデートする場合は、fcitx-qt5を再インストールする必要があるため注意すること。cp /<Qtのインストールディレクトリ>/<バージョン>/gcc_64/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so \
/<Qtのインストールディレクトリ>/Tools/QtCreator/lib/Qt/plugins/platforminputcontexts
Felgoのインストール
Felgoとは
Felgoは、Qtフレームワークをベースに大幅に拡張したクロスプラットフォームのソフトウェア開発ソリューションであり、
PC、Android、iOS、Web(WebAssembly)、組み込みシステム等の多くのプラットフォームでネイティブに動作する。
Felgoは、以下に示すような独自のQt/QMLツール、クラウドサービス、Qtを拡張する200以上のAPIを追加したFelgo SDKを提供している。
- 高度なコントロールとネイティブなナビゲーション
- テーマとスタイル
- レイアウト
- ファイル操作(ローカル/リモート)
- データ管理とモデル/ビュー
- マルチメディア
- RESTネットワーク(※)
- ネイティブなダイアログと機能
※RESTとは
Webシステムに適用したソフトウェアの設計様式のことであり、パラメータを指定して特定のURLにHTTPでアクセスする時、
XMLやJSONなどで記述されたメッセージが送られてくるようなシステム、および、そのような呼び出し規約のことである。
本来のRESTの設計原則は主として以下の4つの項目からなる。
- セッション等の状態管理を行わず、やり取りされる情報はそれ自体で完結して解釈することができる。(WebではHTTP自体にはセッション管理の機構はない)
- 情報を操作する命令の体系が予め定義・共有されている。(WebではHTTPメソッドに相当)
- 全ての情報は汎用的な構文で一意に識別される。(URL/URIに相当)
- 情報の一部として、別の状態や別の情報への参照を含めることができる。(ハイパーメディア的な書式で情報を表現する。HTMLやXMLに相当)
Felgoのインストール
既存のQtにFelgoを拡張機能として追加することができる。
まず、FelgoのQt Marketplaceにアクセスおよびログインした後、[Qt extension]を選択する。
必要な情報を入力して、[Continue to payment]を選択する。
次に、Qtメンテナンスツールを起動して、[コンポーネントの選択]画面の[Marketplace]項目でFelgoを選択およびインストールする。
もし、Felgoをインストールできない場合は、Felgoインストーラを使用して、既存のQtとは別にFelgoをインストールする。
※注意
最新版のQtに対応したFelgoがまだリリースされていない場合は、Felgoはビルドキットに追加されない。
Felgoのアカウントの削除する場合は、Felgoの公式Webサイトにアクセスおよびログインする。
アカウント設定ページ右の[Edit] - アカウント設定ページ下の[Account Termination Request] - [Delete Account]ボタンを押下する。
Raspberry Piのクロスコンパイル
Raspberry Piでクロスコンパイルを行う場合、インストール - Qt5 Raspberry Piのページを参照すること。
PinePhoneのクロスコンパイル
Raspberry Piでクロスコンパイルを行う場合、インストール_-_Qt5_PinePhoneのページを参照すること。