我的系统是fedora15英文环境,qt4.7.4
问题1、开始的时候无法输入中文,无法切换输入法
问题2、qt界面中的按钮等中文不显示,这是为什么呢
浪费了我好多天,参考了网上好多资料。才最后解决前面的两个问题。

解决方法:
1、通过下面方法可以实现在qtcreator输入中文,切换输入法:
1)、首先要安装ibus输入法
《fedora中安装IBus的中文输入法(pinyin)》
2)、安装IBus-qt4 (fedora15是自带的)
yum install ibus-qt4
3)、终端输入:vi ~/.profile ,在.profile中添加一下内容。(也可以在系统环境变量:/etc/profile中添加)。关于配置环境变量的知识,参考《Sheell配置文件 环境变量设置》。
export XMODIFIERS="@im=ibus"export GTK_IM_MODULE=ibusexport QT_IM_MODULE=ximexport ibus &export LC_CTYPE=zh_CN.utf8
4)、重启就ok了。
解释:
/etc/X11/xinit/xinput.d/ibus.conf

所以,如果未装 ibus-qt,GTK程序会直接使用ibus, QT程序会通过xim使用ibus。
a、直接在qt源码目录下configure出错
经过网上的一番搜索,发现是缺少fontconfig造成的,于是重新configure:
#./configure -fontconfig
b、在fontconfig下面make出错
问题又来了,configure未通过,提示Fontconfig未通过,于是进入/config.tests/x11/fontconfig目录,执行make,发现缺少freetype相关的头文件,首先保证freetype开发库已经安装:
问题又来了,configure未通过,提示Fontconfig未通过,于是进入/config.tests/x11/fontconfig目录,执行make,发现缺少freetype相关的头文件,首先保证freetype开发库已经安装:
#yum install freetype#yum install freetype-devel
再次在这里make,还是出错,发现缺少fontconfig开发库,于是
再次make,不再出错。#yum install fontconfig-devel
错误情况介绍:
命令yum install fontconfig-devel问题解决。
通过。#./configure -fontconfig
d、发布带中文字库的qt
完成。#gmake
#gmake install
运行结果如下:

这个时候终端输入:
#fontconfig &
查看,font标签窗口,里面已经有中文字库支持了

备注1:
在linux上,qt中其实不需要更改编码,就可以正常显示中文。
既不需要在main函数中加入如下代码,也不需要在qtcreator选项中配置文件编码。qt默认的UTF-8 有BOM的格式,已经很好的解决了中文乱码问题。
QTextCodec *codec = QTextCodec::codecForName("UTF-8");QTextCodec::setCodecForTr(codec);QTextCodec::setCodecForLocale(codec);QTextCodec::setCodecForCStrings(codec);