查看完整版本: [-- linux下怎么发布程序? --]

QTCN开发网 -> Qt基础编程 -> linux下怎么发布程序? [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

guo2777 2011-10-07 13:20

linux下怎么发布程序?

vs上懂得发布。 这次在ubuntu下用 qtcreater 写的程序。。 不知道怎么发布。。
release过了, 有个文件下  有可执行文件。 直接点可以打开。  
怎么和vs一样 。 打包起来?  在win上有可以查dll的软件。。  linux下怎么去找需要的dll。。。

dbzhang800 2011-10-07 13:37
和Windows一样,Manual中也详细介绍:
http://doc.qt.nokia.com/4.6/deployment-x11.html

而如何打包,应该和发行版相关了。或者像Qt Creator一样,使用商业版的 BitRock InstallBuilder http://installbuilder.bitrock.com/qt-developers.html

guo2777 2011-10-07 13:43
vs上是建一个安装部署。然后把执行文件和dll加进去。。。。  qtcreater。。。 这不懂得怎么弄。。 郁闷。
qtcreater商业版才有安装部署的工程吗?
那就是说 不能打包成安装包?
那就把需要的插件 dll 放到release好的文件里, 然后 再别的linux机子上。 直接打开这个文件?

dbzhang800 2011-10-07 13:49
引用第2楼guo2777于2011-10-07 13:43发表的  :
vs上是建一个安装部署。然后把执行文件和dll加进去。。。。  qtcreater。。。 这不懂得怎么弄。。 郁闷。
qtcreater商业版才有安装部署的工程吗?
那就是说 不能打包成安装包?
那就把需要的插件 dll 放到release好的文件里, 然后 再别的linux机子上。 直接打开这个文件?

VS 和 Qt 没什么必然联系。Windows下的QtCreator 也是用开源的 nsis 进行打包的,而且Qt自身没有为桌面程序打包提供任何辅助功能。

你VS键安装部署,即使不是Qt程序,你也一样用吧?

linux下面一样,各个发行版都有自己的打包工具。deb、rpm等等。Qt Creator自身的bin安装包是使用 BitRock InstallBuilder 生成的。但不会影响你的选择。

不过考虑到你们买得起“昂贵”的VS,一个BitRock InstallBuilder,对你们肯定也不算什么。

guo2777 2011-10-07 15:21
你说的。。 好难懂唉 。。。 我只是学生。vs08 ..破解的 。。。
载个rpm打包工具。。。。是吧。。。?

roywillow 2011-10-07 15:57
我是直接把各种.so各种plugin放到程序所在目录,然后把qt提供的脚本创建成文件放进去,通过脚本运行
安装包什么的,写的一向是小程序所以用不到……

guo2777 2011-10-07 17:58
我竟然找不到 .so文件。。。 plugin 找不到、、、、  救命 。。。哎

guo2777 2011-10-07 18:17
找不到 qtcore4 ...

roywillow 2011-10-07 18:31
我的那些东西是在QtSDK安装文件夹下的desktop里的某一层文件夹中找到的

guo2777 2011-10-07 18:45
有哪些? .os呢? 用到network.  sql。 需要哪些 .os  sql的知道是哪些。 network的不懂得 昏

dbzhang800 2011-10-07 19:11
引用第9楼guo2777于2011-10-07 18:45发表的 回 8楼(roywillow) 的帖子 :
有哪些? .os呢? 用到network.  sql。 需要哪些 .os  sql的知道是哪些。 network的不懂得 昏

先去看看Manual中关于X11下程序的发布问题。

其实只要你对Windows下的插件等等问题概念上清楚,在Linux下是完全一样的,应该不会有困难。主要是linux下一些东西,比如动态库的搜索路径、环境变量等等,需要你去了解。

roywillow 2011-10-07 19:51
是so啦……
pro中QT += 后写的啥你就跟着啥呗
core就跟着libQtCore4.so.4.7.X(后面版本号随机应变吧)
gui就是libQtGui4.so.XXX
以此类推
linux跟windows的发布相当类似的,包括plugin的处理之类的
只不过windows自己知道往工作目录(还是程序所在目录?)搜索dll,而linux你就要用脚本来告诉系统
文档上比较推荐用脚本的方法

guo2777 2011-10-07 20:07
什么样的脚本呢? 什么名字。。什么格式。。。什么内容。。。

dbzhang800 2011-10-07 20:11
引用第12楼guo2777于2011-10-07 20:07发表的 回 11楼(roywillow) 的帖子 :
什么样的脚本呢? 什么名字。。什么格式。。。什么内容。。。

就不能先看一下Qt自带的manual么??

发布一个Qt程序是相当简单的,但是如果你对打包不熟,想打包的话,任务是非常的艰巨:

如果你想为 Debian 或 Ubuntu 打包,下面两个是必须的:

http://www.debian.org/doc/manuals/maint-guide/index.zh-cn.html
https://wiki.ubuntu.com/PackagingGuide/Complete



查看完整版本: [-- linux下怎么发布程序? --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Gzip disabled