• 5279阅读
  • 5回复

请教XChinux和各位朋友,关于Qt4在linux下免安装的问题!!! [复制链接]

上一主题 下一主题
离线alang1122
 
只看楼主 倒序阅读 楼主  发表于: 2006-10-14
— 本帖被 XChinux 从 Qt for Windows 移动到本区(2010-02-07) —
我在1号机红旗DC5下编译并安装了Qt4.0.1,开发的界面程序正确运行并显示中文;
然后把1号机安装后的整个Qt-4.0.1目录拷贝到另一台2号机红旗DC5的机器上,能正常运行已开发好的程序但中文显示为乱码;
如把1号机编译好(即执行了make之后)的整个Qt包拷贝到2号机,然后在2号机执行make install安装,则程序运行正常且中文显示无误!!

请问大侠,make install还干了些什么工作,怎么解决这个问题,而不用每次都要执行make install??谢谢!!
[ 此贴被alang1122在2006-10-17 20:39重新编辑 ]
离线alang1122
只看该作者 1楼 发表于: 2006-10-14
各位朋友哪个帮解答一下了,谢谢!
离线lfm
只看该作者 2楼 发表于: 2006-10-16
我也用红旗,同问一下。
离线cavendish

只看该作者 3楼 发表于: 2006-10-16
抱歉,没用过红旗
离线XChinux

只看该作者 4楼 发表于: 2006-10-16
有一个可能是这样的,编译后的源码在make install时,会把源码的某些路径也加入到安装好的一些配置文件中的,所以,在编译自己写的程序时,会发现在编译信息中有源码目录,楼主在把Trolltech整个目录搬迁到另一台机器上后,并没有把源码目录(绝对路径一致)也搬过去,那么编译时就会找不到原来的源码路径,我想可能是这个原因导致的。详细的原因我也没深究。
  所以楼主可把Trolltech目录和源码目录一并拷贝到新系统中。当然,这是搭建开发环境的权宜之计。如果要做发布,则最好把程序需要的动态库和插件等一并与可执行打包,并合理正确设置LD_LIBRARY和插件目录。详情请看Qt Document里关于Qt程序怎样发布的章节。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线alang1122
只看该作者 5楼 发表于: 2006-10-17
根据斑竹的提醒,终于解决问题了,就是插件路径的问题!!

开始以为设置了相关的环境变量(以前Qt3常设置的那些)就可以了,因此造成了程序只能运行但显示不了中文的问题,后来才知道在Qt4.x----Qt4.1.4之间的版本,增加了一个新的环境变量QT_PLUGIN_DIR,用来寻找plugin目录下的codec目录路径的,设置了这个后,程序就能正确显示中文了!
而Qt4.1.4以后的版本则无需设置,可以随便copy整个目录Qt4.1.x或目录Trolltech到同系统新机器上即可!!

谢谢斑竹,多谢!
快速回复
限100 字节
 
上一个 下一个