python程序linux打包_python 打包成linux程序 - CSDN
精华内容
参与话题
  • linux程序打包 使用的是pyinstaller 打开终端 sudo pip pyinstaller 报错 是pip出现的bug sudo vi /usr/bin/pip 最后三行改成下所示 from pip import main if name == ‘main’: sys.exit(main._main()) 输入:wq ...

    linux程序打包
    使用的是pyinstaller
    打开终端
    sudo pip pyinstaller
    报错
    是pip出现的bug
    sudo vi /usr/bin/pip
    最后三行改成下所示
    from pip import main
    if name == ‘main’:
    sys.exit(main._main())
    输入:wq
    保存退出
    再运行sudo pip pyinstaller
    安装成功
    pyinstaller --version
    进行验证
    pyinstaller就此安装成功

    展开全文
  • linux环境打包python工程为可执行程序

    千次阅读 2019-03-14 15:36:21
    本次又个需求,在ubuntu上面开发的python代码程序需要打包成一个可执行程序然后交付给甲方,因为不能直接给源码给甲方,所以寻找方法将python开发的源码打包成一个可执行程序,注意是打包成在ubuntu上面的可执行程序...

    本次又个需求,在ubuntu上面开发的python代码程序需要打包成一个可执行程序然后交付给甲方,因为不能直接给源码给甲方,所以寻找方法将python开发的源码打包成一个可执行程序,注意是打包成在ubuntu上面的可执行程序,不是打包成在window上的可执行程序,如果需要打包成windows上的可执行程序请参照此博客,链接:windows下打包python源码成可执行文件

     

    本次在ubuntu上打包python源码的方法和在window上打包的有点类似,大概流程如下:

    1、在ubuntu上安装easy_install

    #sudo apt-get install python-setuptools python-dev build-essential

    2、下载并安装pyinstaller

    在网址下载pyisntaller的包,地址:http://www.pyinstaller.org/,下载对应的tar包

    假设下载下来的包是:pyinstaller_2.1.tar.gz

    然后使用命令解压包:#tar -cf pyinstaller_2.1.tar.gz

    进入解压后的目录:#cd pyinstaller_2.1

    最后执行命令安装pyinstaller:#sudo python setup.py install

    如果中间没有报错的话,pyinstaller就安装完成了

    3、打包python项目源码

    假如说你的python源码的结构目录如下:

    total 16
    drwxrwxr-x 2 jelly jelly 4096 Mar 14 15:13 config
    drwxrwxr-x 2 jelly jelly 4096 Mar 14 15:13 database
    -rw-rw-r-- 1 jelly jelly    2 Mar 14 15:13 main.py
    -rw-rw-r-- 1 jelly jelly    3 Mar 14 15:13 manager.py
    

    图中可以看到有两个文件夹,两个py源码文件,mian.py是主函数文件

    然后,我们使用命令打包源码

    #pyinstaller -F main.py

    然后就会生成如下目录

    total 28
    drwxrwxr-x 3 jelly jelly 4096 Mar 14 15:18 build
    drwxrwxr-x 2 jelly jelly 4096 Mar 14 15:13 config
    drwxrwxr-x 2 jelly jelly 4096 Mar 14 15:13 database
    drwxrwxr-x 2 jelly jelly 4096 Mar 14 15:18 dist
    -rw-rw-r-- 1 jelly jelly    2 Mar 14 15:13 main.py
    -rw-rw-r-- 1 jelly jelly  813 Mar 14 15:18 main.spec
    -rw-rw-r-- 1 jelly jelly    3 Mar 14 15:13 manager.py
    

    图中dist文件夹下面就是生成的可执行文件,可以使用命令./main执行生成的可执行文件

    但是此时你会发现有问题,因为这个打包的方法它只会打包当前目录下的所有py文件,而不会打包config和database这两个文件夹,所以此时的可执行文件打包的并不完整,此时该怎么做呢,咱们接着来

    4、重新打包

    重新打包的的意思是需要修改那个main.spec文件,然后再使用这个文件进行打包,操作流程如下

    打开main.spec文件,修改前如下内容

    # -*- mode: python ; coding: utf-8 -*-
    
    block_cipher = None
    
    
    a = Analysis(['main.py'],
                 pathex=['/home/jelly/test'],
                 binaries=[],
                 datas=[],
                 hiddenimports=[],
                 hookspath=[],
                 runtime_hooks=[],
                 excludes=[],
                 win_no_prefer_redirects=False,
                 win_private_assemblies=False,
                 cipher=block_cipher,
                 noarchive=False)
    pyz = PYZ(a.pure, a.zipped_data,
                 cipher=block_cipher)
    exe = EXE(pyz,
              a.scripts,
              a.binaries,
              a.zipfiles,
              a.datas,
              [],
              name='main',
              debug=False,
              bootloader_ignore_signals=False,
              strip=False,
              upx=True,
              runtime_tmpdir=None,
              console=True )
    

    修改后的main.spec文件内容如下:

    # -*- mode: python ; coding: utf-8 -*-
    
    block_cipher = None
    
    
    a = Analysis(['main.py'],
                 pathex=['/home/jelly/test'],
                 binaries=[],
                 datas=[],
                 hiddenimports=[],
                 hookspath=[],
                 runtime_hooks=[],
                 excludes=[],
                 win_no_prefer_redirects=False,
                 win_private_assemblies=False,
                 cipher=block_cipher,
                 noarchive=False)
    
    dict_database = Tree('/home/jelly/test/database',prefix='database')
    a.datas += dict_database
    dict_config = Tree('/home/jelly/test/config',prefix='config')
    a.datas += dict_config
    
    pyz = PYZ(a.pure, a.zipped_data,
                 cipher=block_cipher)
    exe = EXE(pyz,
              a.scripts,
              a.binaries,
              a.zipfiles,
              a.datas,
              [],
              name='main',
              debug=False,
              bootloader_ignore_signals=False,
              strip=False,
              upx=True,
              runtime_tmpdir=None,
              console=True )
    

    可以看到,中间添加了添加两个文件夹的绝对路径,是和这个路径相对应的

    pathex=['/home/jelly/test'],

    这个路径是之前工具自己生成的,所以我们添加的两个目录的绝对路径也和它保持一致,这个修改完成后久可以了

    5、编译生成

    安装第4步的修改完成后,再执行命令

    #pyinstaller mian.spec

    即可,这样打包的程序就包含了两个依赖的文件夹了

    其实最后感觉和在window上面打包生成window上的可执行文件的流程差不多,工具也都是用的pyinstaller打包。

    感谢感谢!!!

     

    展开全文
  • Linux下使用pyinstaller打包python程序

    万次阅读 2018-09-30 15:24:38
    下载pyinstaller 使用pip3下载源码: pip3 download pyinstaller (注意下载的位置,使用pwd命令查看) 也可以使用第三方下载,直接下载到指定的目录:...tar...

    下载pyinstaller

    使用pip3下载源码:

    pip3 download pyinstaller

    (注意下载的位置,使用pwd命令查看)

    也可以使用第三方下载,直接下载到指定的目录:https://download.csdn.net/download/qq_36618531/10697770

    安装pyinstaller

    1.解压下载的归档文件。

       使用命令

    tar zxvf PyInstaller-3.4.tar.gz PyInstaller-3.4

    2.cd到刚刚解压的文件夹下

       运行命令:

    sudo python3 setup.py build
    sudo python3 setup.py install

    3.查看是否安装成功

      使用命令

    pyinstaller

    使用pyinstaller

    1.cd到你放要打包的.py文件夹下

    2.运行命令

    pyinstaller Name.py

     可以使用选项  -F 将所有文件打包到同一个文件中

     

     显示以上信息则打包成功。

    (注意.py文件应该命名为英文)

    3.打开dist可以看见刚刚打包好的程序,直接运行即可。其他文件及文件夹可以删除。

    展开全文
  • 使用PyInstaller打包python文件 在和myscript.py同目录下执行命令:pyinstaller mycript.py然后会看到新增加了两个目录build和dist,dist下面的文件就是可以发布的可执行文件, 你会发现dist目录下面有一堆...

    1.安装PyInstaller

        pip install pyinstaller

        pyinstaller --version

    2.使用PyInstaller打包python文件

      在和myscript.py同目录下执行命令:
    pyinstaller mycript.py然后会看到新增加了两个目录build和dist,dist下面的文件就是可以发布的可执行文件,
    你会发现dist目录下面有一堆文件,各种都动态库文件和myscrip可执行文件
    
    
    pyInstaller支持单文件模式,只需要执行:
    pyinstaller -F mycript.py
    你会发现dist下面只有一个可执行文件,这个单文件就可以发布了,可以运行在你正在使用的操作系统类似的系统的下面。


    展开全文
  • 咨询下,windows下开发的python程序,能不能直接在windows下打包linux下可执行文件,在linux下装依赖包装不明白了,求老司机给普及下!
  • Python是解释性语言,我们如何将普通的Python项目(含有依赖,redis)打包成可运行的一个文件(实际为文件夹吧)。下面描述一个基本流程,供大家参考。以下流程是我们实际线上REDIS数据修改的一个需求,可以简单的...
  • python打包运行在Linux

    千次阅读 2019-10-09 17:01:19
    工具在window下可以打为exe,在Linux下可以打为执行程序 # 安装PyInstaller: pip install pyinstaller # 进入程序目录,用以下命令执行你的python文件 # 会生成dist目录 pyinstaller yourprogram.py # 进入dist下...
  • Python开发 之 Python3打包(windows/linux)详解

    万次阅读 多人点赞 2020-04-13 09:17:52
    文章目录1、唠唠叨叨2、背景3、Python打包工具3.1、py2exe3.2、cx_Freeze3.3、PyInstaller4、Windows打包4.1、单个文件打包4.1.1、核心源码4.1.2、程序运行4.1.3、打包4.1.4、打包后效果4.2、多个文件打包4.2.1、...
  • linux下使用pyinstaller打包python脚本

    千次阅读 2018-06-14 12:43:47
    最近给运维写一个系统维护的python脚本,但是被告知生产环境有很多服务器没有安装python解释器,于是在网上搜索多pyinstaller解决方案,本文简单记录之。 下载pyinstaller。 最新的pyinstaller版本为2.0版本,...
  • python文件打包为windows linux下可执行的二进制文件 日期:2018年08月15日 环境准备 确保.py文件在当前python环境下可正常运行 python环境建议:python3.5(官方版)pyinstaller 3.3.1 anaconda3.6...
  • 背景: 利用setuptools来实现,所以先安装setuptools,其实Python2.7.9及之后的版本都自带安装setuptools了,无需在另外安装 如果没有安装setuptools的直接下载源码包解压安装就行了 示例:以linux环境为例 1....
  • Python项目打包发布方法

    万次阅读 多人点赞 2020-03-01 19:31:21
    目前python打包工具有多个,目前比较好用的为pyinstaller,该工具可以支持在window和linux下使用。 在windows下,大小为几十K的源文件打包成exe文件,可能为几十兆,原因是把程序所引用的库文件也一起打包在一起。...
  • 在Windows下把python转化成可执行程序还是比较简单,用py2exe就可以了。Linux下比较方便的有这么几种:1. py2installer
  • python用cx_Freeze打包程序

    万次阅读 2013-12-27 23:59:05
    python中比较常用的转exe方法有三种,分别是cx_freeze,py2exe,PyInstaller。py2exe恐怕是三者里面知名度最高的一个,但是同时相对来说它的打包质量恐怕也是最差的一个。pyinstaller打包很好,但是操作工序较为...
  • 事情是这样的我用打包命令:pyinstaller -F E:\python\clpicdownload\mypython.py打包了一个exe程序,但是运行时提示我缺 少bs4模块然后我就去查pyinstaller的使用方法,找到pyinstaller有一个-p参数: 1.设置导入...
  • 如何将python3.6软件的py文件打包成exe程序

    万次阅读 多人点赞 2017-09-30 19:42:26
    在我们完成一个Python项目或一个程序时,希望将Python的py文件打包成在Windows系统下直接可以运行的exe程序。在浏览网上的资料来看,有利用pyinstaller和cx_Freeze进行打包的方法。关于cx_Freeze打包的方法,可以...
  • 首先,需要明确的一点是,必须在 windows 安装 python,并且用 windows 下的 python 来执行打包的操作,才可以得到 exe 可执行程序(可以先在 linux 下完成调试)。 因为无论是 py2exe 还是 pyinstaller,都是针对...
  • Python 如何将项目打包成exe可执行程序

    万次阅读 多人点赞 2019-05-23 13:51:29
    大家都知道,Python是一种脚本语言,也就是解释型的语言,需要解释器来进行解释以后才可以执行,而Python源代码需要在Python虚拟机上面运行,但是我们做好的程序,不可能给用户使用的时候还让他安装一个Python环境,...
  • 用freeze.py打包python程序成可执行程序(linux) 2009-12-16 19:55:13 分类: 用freeze.py打包python程序成可执行程序(linux)    为了将一批py程序打包成可执行程序以便发布,之前使用过cxfreeze来完成...
1 2 3 4 5 ... 20
收藏数 25,365
精华内容 10,146
关键字:

python程序linux打包