首页| 论坛| 消息

标题:请教XChinux和各位朋友,关于Qt4在linux下免安装的问题!!!
作者:alang1122
日期:2006-10-14 11:30
内容:

我在1号机红旗DC5下编译并安装了Qt4.0.1,开发的界面程序正确运行并显示中文;
然后把1号机安装后的整个Qt-4.0.1目录拷贝到另一台2号机红旗DC5的机器上,能正常运行已开发好的程序但中文显示为乱码;
如把1号机编译好(即执行了make之后)的整个Qt包拷贝到2号机,然后在2号机执行make install安装,则程序运行正常且中文显示无误!!
请问大侠,make install还干了些什么工作,怎么解决这个问题,而不用每次都要执行make install??谢谢!!


#1 [alang1122 10-14 11:35]
各位朋友哪个帮解答一下了,谢谢!
#2 [lfm 10-16 18:14]
我也用红旗,同问一下。
#3 [cavendish 10-16 19:45]
抱歉,没用过红旗
#4 [XChinux 10-16 21:20]
有一个可能是这样的,编译后的源码在make install时,会把源码的某些路径也加入到安装好的一些配置文件中的,所以,在编译自己写的程序时,会发现在编译信息中有源码目录,楼主在把Trolltech整个目录搬迁到另一台机器上后,并没有把源码目录(绝对路径一致)也搬过去,那么编译时就会找不到原来的源码路径,我想可能是这个原因导致的。详细的原因我也没深究。
所以楼主可把Trolltech目录和源码目录一并拷贝到新系统中。当然,这是搭建开发环境的权宜之计。如果要做发布,则最好把程序需要的动态库和插件等一并与可执行打包,并合理正确设置LD_LIBRARY和插件目录。详情请看Qt Document里关于Qt程序怎样发布的章节。
#5 [alang1122 10-17 20:33]
根据斑竹的提醒,终于解决问题了,就是插件路径的问题!!
开始以为设置了相关的环境变量(以前Qt3常设置的那些)就可以了,因此造成了程序只能运行但显示不了中文的问题,后来才知道在Qt4.x----Qt4.1.4之间的版本,增加了一个新的环境变量QT_PLUGIN_DIR,用来寻找plugin目录下的codec目录路径的,设置了这个后,程序就能正确显示中文了!
而Qt4.1.4以后的版本则无需设置,可以随便copy整个目录Qt4.1.x或目录Trolltech到同系统新机器上即可!!
谢谢斑竹,多谢!

回复 发表
主题 版块