Linux RedHat 9 QT 4的编译、调试环境的搭建
Linux RedHat 9 上自带的QT版本是QT 3.1.1 的,但是我现在要用的是QT4,所以必要升级一下;
我下载的是“qt-x11-opensource-src- 4.4.3 .tar.gz”,先说一下,这个版本的有一个错误,就是:
它会报“`TIFFReadRGBAImageOriented' undeclared”的错误,修改方法:打开 qtiffhandler.cpp 把 TIFFReadRGBAImageOriented(tiff, width, height, reinterpret_cast<uint32 *>(tiffImage.bits()), ORIENTATION_TOPLEFT, 0))改为
TIFFReadRGBAImage(tiff, width, height, reinterpret_cast<uint32 *>(tiffImage.bits()), 0)就好了,因为RedHat 9里的 usr/include/tiffio.h没有前一个函数。
进入你解压包的路径然后用cd src/plugins/imageformats/tiff 就可以进入qtiffhandler.cpp 用vi打开,可以修改了
还有就是,可能有些RedHat9.0的系统有一个叫做Bug的东西,就是那个几个我也不知道是什么的文件:kssl.h,profile.h,krb5.h,这几个会报错,在你安装的过程中,有些系统可能不会,反正我的就会,我在网上找了很久,才知道有一个Bug,具体怎么修改,可以参考http://redmine.kannel.org/issues/192#change-355这篇文章
好啦,上面是我先说一下我安装过程中所遇到的最蛋疼的麻烦,当然还有其他,这里也不说了,开始正式安装过程了
把qt-x11-opensource-src-4.3.4.tar.gz拷贝到 /usr/local目录下
tar -zxvf qt-x11-opensource-src-4.3.4.tar.gz 解压
mv qt-x11-opensource-src-4.3.4 Qt-x11 重命名为Qt-x11;
打开个终端,输入:
ln -s /usr/kerberos/include/com_err.h /usr/include/
ln -s /usr/kerberos/include/profile.h /usr/include/
ln -s /usr/kerberos/include/krb5.h /usr/include/
反正在这个系统里是这样设置的,不然你编译一般就会报出一个关于“krb5.h”的错误。
下面开始就开始编译安装罗,就等吧。
在终端内,cd到解压出来的文件下面,然后输入:
./configure
gmake
gmake install
整个过程大约需要2个多小时。
安装好之后就出现下面的界面,对了,它安装的默认路径是:/usr/local/Trolltech/Qt- 4.4.3 下面
设置环境变量(实际上是设置编译环境):
在/etc/profile 加入:
#for QT-X11-4.4.3
export QTDIR=/usr/local/Trolltech/Qt-4.4.3
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
export PATH=$QTDIR/bin:$PATH
export QMAKESPEC=$QTDIR/mkspecs/linux-g++
#source /etc/profile 使环境变量生效,确保要用的编译器摆在首位,以屏蔽系统自带的编译器。
系统默认开启的是Qt3,现在我们来修改,启动Qt3的关联文件在“/usr/bin”下面,找到“designer”,我们发现这个文件果然链接的是Qt3的执行文件,在清楚了designer是个链接,通过designer指向qt3的designer, 现在想让designer默认为qt4的designer, 只要重定向链接。同样,想要qmake也默认为QT4的也一样,只要重定向链接。
sudo rm /usr/bin/designer
sudo ln -s /usr/local/Trolltech/Qt- 4.4.3 /bin/designer /usr/bin/designer
sudo rm /usr/bin/qmake
sudo ln -s /usr/local/Trolltech/Qt- 4.4.3 /bin/qmake /usr/bin/qmake
我的建议最好把那个跟“/usr/local/Trolltech/Qt- 4.4.3 ”下面的执行文件有关的都修改一下链接。这样便可以彻底的使用QT4了。
QT4默认的字体会出现乱码,我们来设置下,打开qtconfig,选“Forts”按照下图来设置,其他不变。
这样基本就算结束了,你可以打开你的Qt4 designer啦,不过这时候你可能会发现,很不习惯,它的每个窗口都是零碎的,反正我的就是这样,这也把我折磨了很久,真是那个郁闷呀,最后发现在你刚才打开的界面中的主界面那个菜单中点击 “编辑”——>“属性”——>“用户界面模式 ”选择“瞄接的窗口 ”,这时候确定,你就会发现,它正常了。
在RedHat下装这些软件,还真把我给折磨啊,第一次用Linux,唉…… 还真不会用也!!!!!!!!!