Linux下快速静态编译Qt以及Qt动态/静态版本共存(2)

首先,静态编译的Qt程序一个debug版程序150M左右,一个release版本10M左右,这样你知道为什么我不会编译静态debug库了吧?因为没有必要。你可以使用strip,UPX(Windows)等工具来压缩你生成的庞大程序。空间与速度从来都是一对冤家,Windows下静态编译出的程序,经过UPX压缩可以减少到原来的一般体积,但是启动速度也随之严重下降。当然,论程序启动速度,自己的设计和实现才是关键所在,最后发布的程序要不要压缩,那需要根据实际情况而定。

祝你与Qt相处愉快!

PS. configure阶段出现 “Basic XLib functionality test failed“的解决办法:

编译qt-x11-opensource-src-4.5.3是出现“Basic XLib functionality test failed“

解决方法:

此完整出错信息是在./configure阶段
Basic XLib functionality test failed!
You might need to modify the include and library search paths by editing
QMAKE_INCDIR_X11 and QMAKE_LIBDIR_X11 in /home/zhu/Qt/qt-x11-opensource-src-4.5.2/mkspecs/linux-g++

进config.test/x11/xlib 执行make命令,看出错信息
g++ -Wl,-O1 -o xlib xlib.o    -L/usr/X11R6/lib -lXext -lX11 -lm
/usr/bin/ld: cannot find -lXext
可以看到,g++在/usr/X11R6/lib下,找不到libXext.so

其原因就在于需要安装libX11的开发包,根据自己的系统特点,安装 libX11-dev libXext-dev libXtst-dev

对于Ubuntu,直接 sudo apt-get install libx11-dev libxext-dev libxtst-dev

问题解决!

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wwfsgx.html