近幾個月一直在搞QML框架下的UI控件,沒有更新博客。今天記錄下Ubuntu系統下Qt開發工具使用中文輸入法的流程。
(題外話,Linux系統下的開發,離線是沒法搞的(誇張手法),不聯網簡直就是事倍功半!)
Ubuntu系統下Qt開發平台使用中文輸入法的流程,主要包括兩個工作:Ubuntu系統安裝相應的中文輸入法,Qt安裝相關調用輸入法的插件工具。
Ubuntu系統安裝相應的中文輸入法
一、確定Ubuntu系統是32位的還是64位的。
命令:sudo uname -- 返回:i686-32位系統、 x86_64-64位系統
二、下載中文輸入法-搜狗拼音
由於Qt開發平台使用中文輸入法使用的是基於fcitx輸入法的相關插件工具,故輸入法需要選擇基於fcitx輸入法的相關中文輸入法。
搜狗拼音是在fcitx輸入法基礎之上安裝的。Linux下搜狗拼音的安裝包下載網址如下:(注意系統版本)
http://pinyin.sogou.com/linux/
安裝命令:sudo dpkg -i *.deb 安裝時會提示缺少libqt3dquickwidgets相關庫,使用 sudo apt install 提示的庫名 即可。
三、設置系統可調用切換該輸入法
1.首先安裝小企鵝輸入法-fcitx,並將輸入方式由原來的ibus切換為fcitx(已安裝並顯示有fcitx的無需此步驟)
依次進入 系統設置——>語言支持,若出現 Software data is broken, 則關掉 在命令行輸入 sudo apt-get install -f 對系統進行修復;
重新打開 系統設置——>語言支持,若出現 language is not support completed ,要求你安裝,你就安裝。
安裝完成后,將輸入方式由原來的ibus切換為fcitx,關閉。
如果還是沒有fcitx的圖標,使用命令:
sudo apt-get update
sudo apt-get upgrade
重啟系統。(sudo reboot)
2.輸入法設置
在桌面的右上角選擇fcitx的configureFcitx配置項
添加輸入法
去掉那個只“顯示當前語言”的選項,然后搜索框輸入sog,你會發現搜狗輸入法已經有了,選中輸入法即可
至此,中文輸入法添加並設置成功,打開任意編輯器,選擇桌面右上角fcitx的語言切換,切換到搜狗拼音,即可在編輯器中輸入中文。
參考:https://blog.csdn.net/u010648921/article/details/82624219?utm_medium=distribute.pc_relevant.none-task-blog-title-2&spm=1001.2101.3001.4242
Qt安裝相關調用輸入法的插件工具
一、安裝fcitx-qt5工具
1.由於fcitx使用的是cmake來生成makefile的,故首先需要安裝cmake
命令 sudo apt install cmake
cmake要編譯fcitx-qt5需要的依賴包有:ECM,XKBCommon,Qt5DBus,Qt5Widgets,Qt5,Qt5Gui,Qt5Core以及fcitx-utils 模塊,Qt5這幾個應該安裝Qt5后就會有不用擔心,fcitx-utils,
ECM,XKBCommon可能要自己安裝。
還有一點要說明,這個插件的編譯要用到C++11的支持。如果你的GCC/G++版本低於4.8,那你必須先升級,以前的版本可能還可以屏蔽了C++11的支持,但這個版本的經我驗證不行。
2.安裝fcitx-qt5
export PATH="/opt/Qt5.6.2/5.6/gcc_64/bin":$PATH
git clone https://github.com/fcitx/fcitx-qt5.git
cd fcitx-qt5
mkdir build && cd build
cmake -DCMAKE_PREFIX_PATH=<your_qt_path>/Qt5.8.0/5.8/gcc_64/lib .
cd ..
make && sudo make install
3.缺少ECM
安裝ECM
wget https://launchpadlibrarian.net/189487929/extra-cmake-modules_1.4.0.orig.tar.xz
tar -xJf extra-cmake-modules_1.4.0.orig.tar.xz
cd extra-cmake-modules_1.4.0
mkdir build && cd build
cmake ..
cd ..
make && sudo make install
4.缺少XKBCommon
安裝XKBCommon
wget http://xkbcommon.org/download/libxkbcommon-0.5.0.tar.xz
tar -xJf extra-cmake-modules_1.4.0.orig.tar.xz
cd extra-cmake-modules_1.4.0
mkdir build && cd build
cmake ..
cd ..
make && sudo make install
編譯libxkbcommon用到yacc,如果沒有這個命令,會遇到下面的錯誤,yacc在 bison軟件包中
安裝yacc,命令 sudo apt-get install bison
5.缺少Qt5
命令:cmake -DQt5_DIR=<your qt path>/Qt5.6.2/5.6/gcc_64/lib/cmake/Qt5
6.缺少fcitx-utils
安裝fcitx-utils,命令sudo apt-get install fcitx-utils
7.再次重新編譯fcitx-qt5
進入fcitx-qt5/build目錄下
cmake -DCMAKE_PREFIX_PATH=<your_qt_path>/Qt5.6.2/5.6/gcc_64/lib -DECM_DIR=<your_qt_path> ..
cd ..
make
sudo make install
安裝成功
二、將相關庫和插件放入Qt目錄下
向qt5的庫文件和插件 加入 fcitx輸入法管理工具的相關支持,默認的Qt支持的是ibus輸入法(自帶ibus的相關庫或插件)
1.將對fcitx支持的庫文件拷貝至Qt目錄中,
fcitx-qt5——>platforminputcontext——>libfcitxplatforminputcontextplugin.so 拷貝至 /Tools/QtCreator/lib/Qt/plugins/platforminputcontexts下
2.將對fcitx支持的插件拷貝至Qt目錄中
fcitx-qt5——>dbusaddons——>libFcitxQt5DBusAddons.so 、 libFcitxQt5DBusAddons.so.1 、 libFcitxQt5DBusAddons.so.1.0
fcitx-qt5——>widgetsaddons——>libFcitxQt5WidgetsAddons.so 、 libFcitxQt5WidgetsAddons.so.1 、libFcitxQt5WidgetsAddons.so.1.0
拷貝至
Qt5.6.2/Tools/QtCreator/lib/qtcreator
或者 Qt5.6.2/5.6/gcc_64/lib
下。
參考:https://blog.csdn.net/weixin_30522183/article/details/95315172
參考: https://blog.csdn.net/SingDancer/article/details/53258918?utm_source=blogxgwz2
參考:https://blog.csdn.net/flfihpv259/article/details/51556464
歡迎轉載,歡迎指正,更歡迎點贊。轉載請附原文鏈接。