您的位置:首页 > 编程语言 > Qt开发

彻底解决ubuntu环境下,Qt5.5以上版本无法进行中文注释的问题。

2017-11-20 17:29 711 查看
**声明:测试的系统环境为ubuntu14.04/ubuntu16.04

测试qt的版本有:qt5.6.0/qt5.7.0

方法通过测试,qt可以正常输入中文注释。**

1. 安装fcitx-frontend-qt5,很重要,很多教程里面没有这个,导致无法正常输入中文注释。笔者在这里纠结了好久,不管这个有没有效,建议安装。

sudo apt-get install fcitx-frontend-qt5


2. 安装CMake,由于后面编译文件的时候,对CMake有具体要求,因此在前面的时候直接将cmake升级到3.0以上。 在这里不建议采用源码编译的方式进行,至于为什么,那是因为太费事了。笔者一步一坑走过来的。建议直接更新源升级即可。

sudo apt-get install software-properties-common
sudo add-apt-repository ppa:george-edison55/cmake-3.x
sudo apt-get update
sudo apt-get install cmake


3. 安装 fcitx-libs-dev

sudo apt-get install fcitx-libs-dev


4. 安装extra-cmake-modules_1.4.0,由于在编译fcitx-qt5 源码时会报错。错误提示如下

CMake Error at CMakeLists.txt:8 (find_package):
Could not find a package configuration file provided by "ECM" (requested
version 1.4.0) with any of the following names:
ECMConfig.cmake
ecm-config.cmake
Add the installation prefix of "ECM" to CMAKE_PREFIX_PATH or set "ECM_DIR"
to a directory containing one of the above files.  If "ECM" provides a
separate development package or SDK, be sure it has been installed.
-- Configuring incomplete, errors occurred!


解决方法如下:

到这个页面 https://launchpad.net/ubuntu/+source/extra-cmake-modules/1.4.0-0ubuntu1 下载 extra-cmake-modules_1.4.0.orig.tar.xz
cd extra-cmake-modules-1.4.0
cmake .
make
sudo make install


注意:注意:注意:重要事情说三遍,在安装extra-cmake-modules_1.4.0如果提示一下错误,那边并没有安装成功。

~/Downloads/extra-cmake-modules-1.4.0$ cmake .
CMake Warning at tests/CMakeLists.txt:28 (find_package):
Could not find a package configuration file provided by "Qt5LinguistTools"
with any of the following names:
Qt5LinguistToolsConfig.cmake
qt5linguisttools-config.cmake
Add the installation prefix of "Qt5LinguistTools" to CMAKE_PREFIX_PATH or
set "Qt5LinguistTools_DIR" to a directory containing one of the above
files.  If "Qt5LinguistTools" provides a separate development package or
SDK, be sure it has been installed.
-- Looking for Sphinx Documentation Builder...
-- Sphinx Documentation Builder not found - documentation will not be built (see http://sphinx-doc.org/) -- Configuring done
-- Generating done
-- Build files have been written to: /home/cposture/Downloads/extra-cmake-modules-1.4.0


解决方法如下:

设置 CMAKE_PREFIX_PATH 环境变量 为 qtbase 目录(<Qt安装目录>/5.7/Src/qtbase/),我这里为:
export CMAKE_PREFIX_PATH="~/Qt5.7.0/5.7/Src/qtbase/"
如果还是不行,则修改为
export CMAKE_PREFIX_PATH="/安装路径/Qt5.7.0/5.7/gcc_64/lib/cmake/"
或export PATH="/安装路径/Qt5.7.0/5.7/gcc_64/bin":$PATH,为了避免麻烦的话,直接在命令行输入这一行就好了。


5. 安装xkbcommon

http://xkbcommon.org/ 下载最新版的 xkbcommon
解压后,
sudo apt-get install bison
./configure --prefix=/usr --libdir=/usr/lib/x86_64-linux-gnu --disable-x11
make
sudo make install


补充一点:如果在安装的时候一是缺少OpenGL的头文件,可以安装一下以下的库

sudo apt-get install libgl1-mesa-dev libglu1-mesa-dev


6. 下载fcitx-libs 源码并编译安装,具体步骤如下

首先确定你的Qt的安装目录,我这里是~/Qt5.7.0/,你的或者可能在/home/<用户名>/Qt5.7.0/

export PATH="/5.7/gcc_64/bin":$PATH


下载fcitx-libs源码

git clone https://github.com/fcitx/fcitx-qt5[/code] 
如果这里提示木有git,下载安装一个即可。

sudo apt-get install git


下载源码解压后按照以下步骤编译

cd fcitx-qt5
cmake .(这里是有个点的,一定要记住哦)
make
sudo make install


**7. 将编译好的libfcitxplatforminputcontextplugin.so文件分别拷贝到Tools/QtCreator/lib/Qt/plugins/platforminputcontexts。和 Qt5.7.0/5.7/GCC_64/plugins/platforminputcontexts并且将两个文件的权限提上去。

chmod +x 文件路劲/文件名


笔者这两个文件中, 这个Qt5.7.0/5.7/GCC_64/plugins/platforminputcontexts文件下的文件是带锁的,此时需要解锁,然后进行替换。

sudo chmod 777 /文件路径/文件名


8. 配置系统环境

echo 'export XMODIFIERS=@im=fcitx' >> .bashrc
echo 'export QT_IM_MODULE=fcitx' >> .bashrc


最好确认下是否配置好,笔者就碰到过没有配置成功的情况。

sudo gedit .bashrc


9. 关机重启。请记住,一定要关机重启,避免不能输入中文。

10. 建议大家可以下载我编译的文件,然后按照步骤1、步骤7、8、9尝试一下,笔者并没有尝试,但从理论上来说是可以拷贝并生效的。

下载地址:

备注:笔者默认大家都是装了搜狗输入法的,如果没装,请参照搜狗官网即可。在这里就不加赘述了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ubuntu 中文注释 qt5-5
相关文章推荐