您的位置:首页 > 编程语言 > Python开发

ubuntu上将Python小应用制作为deb安装包

2017-09-24 19:31 309 查看
ubuntu上将Python工程打包(安装包)
        我们写好一个python工程后常常需要将软件打包,便于将写好的软件安装 在其他没有安装工作环境的电脑上。下面介绍一个python工程的打包过程, 分为两大步骤:

                                            1、将工程打包生成一个可执行文件;

                                            2、将可执行文件和工程依赖的所有文件制作成.deb安装包。

      一、 将工程打包生成一个可执行文件 

             1. 首先给系统装个easy_install, 如果装了的可以跳过这步 sudo apt-get install python-setuptools python-dev build-essential

             2. 官网上下载pyinstaller,网址 http://www.pyinstaller.org/              3.解包进入源码目录 (1)、unzip PyInstaller-3.2.zip (2)、cd pyinstaller-3.2
             4. 拷贝py文件 将需打包的工程文件夹里面所有需要的文件(包含主函数文件,如test.py)拷贝到当前目录(pyinstaller3.2)
             5. 生成可执行文件 cd到pyinstaller目录,执行  python pyinstaller.py test.py

             6.将工程里面除了.py文件(作用:保留源码)外的所有依赖文件(如数据文件)按原来在工程中的目录 拷贝到当前目录的/test/dist/test下,在                其他工作目录下运行可执行文件(如/usr/test(绝对路径)),看是否可 以执行,若不能运行,可能是以下原因:

                                        (1)、路径中有汉字;

                                        (2)、你的python程序中有路径不会随文件目录变化而变化;

                                        (3)、依赖文件没有拷贝或拷贝不完整。

     二、将可执行文件和工程依赖的所有文件制作成.deb安装包
          1、新建一个文件夹,例如在用户目录下新建mydeb文件夹

          2、在mydeb文件夹建立如下结构的文件夹和文件

               |——mydeb 

                      |————usr 

                            |————lib 

                                 |——可执行文件及执行所需依赖文件(安装后,就在你的/usr/lib生成相应的可执行 文件) 

                            |————share 

                                 |—icons 

                         
b4dd
            |——deb.png(启动器图标文件生成到/usr/share/icons/) 

                                 |———applications 

                                      |——deb.desktop(桌面文件生成到/usr/share/applications/) 

                    |————DEBIAN(大写、用来制作打包文件) 

                           |————control(描述deb包的信息必须的文件) 

                  说明: deb.desktop的建立,sudo gedit deb.desktop,下方设置为.desktop格式,输入如下内容: 

                             [Desktop Entry] 

                             Name=mydeb                              #这个是程序名称 

                             Comment=制作deb的工具          #注释 

                             Exec=/usr/lib/test                        #可执行文件存放的位置 

                             Icon=/usr/share/deb.png            #图标存放的位置 

                            Terminal=false                            #是否使用终端 

                            Type=Application                        #应用类型 

                            X-Ubuntu-Touch=true                  #这个暂时我也不知道是什么用的 

                            Categories=Developmen           t#分类的位置 

                            Name[en]=desktop 

                      注意:1、#的内容都要删除,不要有任何注释等不必要的信息,否则有时会出现 启动程序错误。       

                                2、文件夹名首尾千万不要出现空格,否则会出错。 

                                  Categories可以取以下值,表示程序的启动快捷方式放在哪个菜单下:应用菜Application; Network放在                                                          互联网 (Internet);办公 Office;图形 Graphics;声音和视AudioVideo;
系统工具 System;编程 Development;                                            附件Utility;影音 AudioVideo;游戏 Game;首 选项 Settings(GNOME;GTK;Settings;HardwareSettings;);                                                    系统管理System。

                                   control文件内容输入如下内容: 

                                                  package: mydeb                                         #安装包的名称 

                                                  version: 1.0.0                                              #版本 

                                                  architecture: i386                                        #平台

                                                  maintainer: yang                                         #维护者 

                                                  description: you can description the deb    #描述安装包的信息

             3、打包 在mydeb文件夹的路径上:sudo dpkg -b mydeb program-mydeb_1.0.0_i386.deb 打包 (deb包正确的命名

                  规 program-name_version_architeture.deb,最好与它们在 control文件 里对应的语句相同) 

              4、安装 sudo dpkg -i program-mydeb_1.0.0_i386.deb 安装(在应用程序编程菜单的附件下) 或者直接双击.deb文件,会                                      进 入软件中心,点击安装即可。安装好软件后启动器在/usr/share下的的applications中,可以直接启动。

             5 、卸载 sudo dpkg -P mydeb 卸载

            注: 1、本文非本人原创,参考http://blog.csdn.net/yangbingzhou/article/details/33318625(略有                               
                                                      改 动) 和 http://blog.csdn.net/linda1000/article/details/12946297 

                    2、本例也许并不是很符合.deb打包标准,但是可以安装运行

                    3、大二自学时的打包过程记录,多多指教。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: