python程序打包成linux程序_python 打包成linux程序 - CSDN
精华内容
参与话题
  • 使用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下面只有一个可执行文件,这个单文件就可以发布了,可以运行在你正在使用的操作系统类似的系统的下面。


    展开全文
  • Python是解释性语言,我们如何将普通的Python项目(含有依赖,redis)打包成可运行的一个文件(实际为文件夹吧)。下面描述一个基本流程,供大家参考。以下流程是我们实际线上REDIS数据修改的一个需求,可以简单的...

    Python是解释性语言,我们如何将普通的Python项目(含有依赖,redis)打包成可运行的一个文件(实际为文件夹吧)。下面描述一个基本流程,供大家参考。以下流程是我们实际线上REDIS数据修改的一个需求,可以简单的理解为将数据A改为B,项目地址可见https://github.com/antianchi/data_process_20190429.git

    1. 整个项目结构描述:
      我项目的包只有util、process,main.py为入口文件。其余文件夹为打包而服务。
    2. 创建setup.py文件:
      #coding=utf-8
      from distutils.core import setup
      setup(
          name='data_process',
          version='4.0',
          author='安天池',
          author_email='861710865@qq.com',
          maintainer='安天池',
          maintainer_email='xxx@qq.com',
          url='www.eastcom.com',
          packages=["","process","util"]
      )

       

    3. 在terminal中执行命令:pip freeze > requirements.txt 。生成当前项目的依赖配置文件,此文件中的内容包含了整个项目的依赖,我们只需要保留非系统的依赖即可,例如我的项目依赖了REDIS,requirements.txt 文件内容如下:
      configparser==3.5.0
      croniter==0.3.25
      redis==3.2.1

       

    4. 使用命令>pip download -d packages/ -r requirements.txt 将系统外的依赖下载到packages目录,执行完毕目录如下:
    5. 执行打包命令python setup.py sdist,执行完毕后,生成的文件所在位置。忘记描述,所有的命令执行,直接在Pycharm的terminal中执行即可,免得打开命令提示符。
    6. 将生成的data_process-4.0.zip拷贝到文件系统,然后解压,将packages,requirements.txt 放入解压后的文件夹,此文件夹内容如下:
    7. 执行项目,由于我的电脑已经将redis的额外依赖安装了,是可以直接执行python main.py的,否则将会报错,说缺少redis,那么此时,你就需要在当前文件夹下执行命令:pip install --no-index --find-links=packages/ -r requirements.txt将依赖安装到系统。
    8. 若你的系统缺少pip命令,那么你需要去下载pip-19.1.tar.gz,下载地址https://pypi.org/project/pip/#files此处找到,此tar文件针对linux;若你是在WIn上,可以执行python get-pip.py,安装pip,此文件的下载也在刚才的地址,演示就不提供了。


       
    展开全文
  • 应公司要求,领导要对python程序进行打包处理。所以一场煎熬战无声打响,这个过程是最烦人,最没有人愿意干的(明知道是个坑,还得跳!!!!!!!!)。要求是ubantu系统下,但是我的电脑是windows,所以现在...

    应公司要求,领导要对python程序进行打包处理。所以一场煎熬战无声打响,这个过程是最烦人,最没有人愿意干的(明知道是个坑,还得跳!!!!!!!!)。要求是ubantu系统下,但是我的电脑是windows,所以现在windows下小试牛刀。。。。。不说了,开始正题:

    1.在windows系统下

    准备工作:1.windows10系统

                      2.python3.5.x

    前言:

    将python脚本打包为可执行的exe文件是通常的需求,python也提供了许多的第三方库,比如:bbFreeze,py2ese,pyinstaller,cx_Freeze,py2app等等。它们都各自有优缺点,经过查询大量的文献,我最终选择了pyinstaller,因为它操作起来相对比较简单,而且有较好的支持。

    这是一个来自Freezing Your Code的统计

    1.安装pyinstaller

    方法一:离线安装

                  先安装依赖库pywin32,然后下载pyinstaller,安装方法如下不推荐)。

    方法二:在线安装

                 (1)简单粗暴,什么也不用管。(注:下图的安装显示是我已经安装完的显示。。。。。。)

    pip install pyinstaller

     

              (2)检查是否安装成功

    pyinstaller --version

    到此安装结束!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

    2.将我们想要打包的程序打包成.exe

    (1)进入你要打包的python目录内

    (2)将你要打包的程序完整以及程序的依赖文件放到一个新的文件夹内

    (3)执行打包命令pyinstaller test.py 即可。

    下面来进行一个简单的演示!!!!!!!!!!!!!!!!!!!!!!

    我简单的写了一个测试文件pk_test.py.一个简单的hello,word!

     

    步骤一:进入你要打包的python目录内

    步骤二:将你要打包的程序完整以及程序的依赖文件放到一个新的文件夹内

    注:比如需要pandas包,就将pandas放到pk_test.py的目录中。(注意!网上说如果不放的话可能出错,,但是我没有放也没有出错,,,,,,,,,,玄学!!!!!!!!!!!!!如果报错请检查是否是因为没有放依赖的原因)

    步骤三:执行打包命令pyinstaller test.py 即可。

    执行完的结果如上图所示:会生成许多依赖的文件包,,,不关心它们,,,只需要dist文件夹即可!!!进入dist,会有一个pk_test文件夹(****我们所需要的,请一并拷走****,不然会报错),进入pk_test文件夹找到pk_test.exe双击即可!!

    关键来了!!!!我双击pk_test.exe屏幕一闪而过!!!!然后就没有然后了!!!!!!!于是,我在命令窗口中运行,,,,,,

    顿时我哭了,什么鬼!!然后接着查,,,,,,,,,,,,,,最后发现!应该和C++程序闪是一个道理!!于是,我又做了一番修正,,,然后编译打包,,,,(没有闪退!!!!!!!!)

    修改如下:

    import os
    print('hello word!')
    os.system('pause')

    到此,简单的打包已经结束!!!!!!!!!!!!!!!!!!!!!!!

    3.测试一下稍复杂的程序

    #!/usr/bin/env python
    # encoding: utf-8
    '''
    @author: 真梦行路
    @file: pk_test.py
    @time: 2018/8/10 10:16
    '''
    import os
    import numpy as np
    import matplotlib.pyplot as plt
    x=np.random.rand(100)
    y=np.sin(x)
    plt.figure()
    plt.plot(x)
    plt.show()
    os.system('pause')

    完美!!!!!!!!!!!!等等。。。。。。。后面怎么有烦人的黑窗口。。。(接下来!!!!!)

    4.打包命令的小操作。

    在cmd窗口键入:pyinstaller -h就会出现pyinstaller的所用帮助说明。

    pyinstaller -w -F pk_test.py
    

     

    5.带第三放库以及读取文件的测试

    第三方库选择pandas和tensorflow,以及pandans需要用到的.csv文件。

    准备:按照上述方法,将主函数test.py,以及数据文件夹data放到一个文夹中,执行打包命令。(没有放pandans和tensflow安装包)

    运行:发现报错,提示没有找到pandas._lilbs.tslibs.np_datetime。难道是因为我没有把pandans放进去?于是,接着测试。

    也没有什么用,应该不是这个问题,于是又是一番百度。终于找到了一种解决办法!

    解决办法:1.找到自己电脑中的D:\python3.5\Lib\site-packages\PyInstaller\hooks目录

    2.新建一个文件名为hook-pandas.py,写入以下内容并保存。

    #!/usr/bin/env python
    # encoding: utf-8
    '''
    @author: 真梦行路
    @file: hook-pandas.py
    @time: 2018/8/10 13:03
    '''
    hiddenimports = ['pandas._libs.tslibs.timedeltas',
    'pandas._libs.tslibs.nattype',
    'pandas._libs.tslibs.np_datetime',
    'pandas._libs.skiplist']

    测试!!!!!!!!!!!!!!!!!!!!又发现新的报错。

    打包完成!!!!(而且pandas和tensorflow也自动打进去了)。

    (注:在打包过程中也可能出现其他的报错!目前我没有遇到,如果遇到,大家尝试解决!)

    2.在ubantu系统中

    准备工作:1.ubantu16.04

                        2.python3.5.x

                        3.pip

    在ubantu系统中,使用python对.py文件打包成可执行程序与在windows下基本上没有什么区别,最主要的区别就是Linux命令的使用。下面就简单的演示一下:(注:我使用的是pip安装,习惯了)

    1.安装

    (1)首先获取root权限使用sudo -i 命,令,输入密码,获取权限(当然也可以在执行命令前加sudo)

    (2)使用pip3 install pyinstaller 进行安装pyinstaller。(我的是python3所以用pip3)(原版本已经安装完成!!故此显示)

    (3)检查是否安装成功

    2.测试

    测试跟windows一样,(ubantu系统没有闪退问题)就不多写了。现测试一个python写的函数库调用,看能否打包成功。

    准备:主文件test.py,调用文件hello.py。

    打包:(1)按照官方文档对多个文件打包要执行多文件命令(结果和windows一样)

    (2)找到dist文件夹下的test文件夹,执行test

    根据结果来看,不管是主文件test.py,还是调用文件hello.py都执行成功。

    注:我又测试了一下将test.py ,hello.py放到一个文件夹中,只打包test.py发现也能运行;然后将hello.py删掉,然后再打包,打包失败。

    (注:在打包过程中也可能出现其他的报错!目前我没有遇到,如果遇到,大家尝试解决!)

    还有就是,如何打包二进制文件,如何更换图标,如何在打包过程中如何新建文件夹以及子目录,等等

    具体其他的命令可以通过官方文档查阅!

     

    展开全文
  • 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就此安装成功

    展开全文
  • 咨询下,windows下开发的python程序,能不能直接在windows下打包成linux下可执行文件,在linux下装依赖包装不明白了,求老司机给普及下!
  • Linux下使用pyinstaller打包python程序

    万次阅读 2018-09-30 15:24:38
    下载pyinstaller 使用pip3下载源码: pip3 download pyinstaller (注意下载的位置,使用pwd命令查看) 也可以使用第三方下载,直接下载到指定的目录:...tar...
  • linux环境打包python工程为可执行程序

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

    千次阅读 2019-10-09 17:01:19
    工具在window下可以打为exe,在Linux下可以打为执行程序 # 安装PyInstaller: pip install pyinstaller # 进入程序目录,用以下命令执行你的python文件 # 会生成dist目录 pyinstaller yourprogram.py # 进入dist下...
  • Python 如何将项目打包成exe可执行程序

    万次阅读 多人点赞 2019-05-23 13:51:29
    大家都知道,Python是一种脚本语言,也就是解释型的语言,需要解释器来进行解释以后才可以执行,而Python源代码需要在Python虚拟机上面运行,但是我们做好的程序,不可能给用户使用的时候还让他安装一个Python环境,...
  • Python项目打包发布方法

    万次阅读 多人点赞 2020-03-01 19:31:21
    目前python打包工具有多个,目前比较好用的为pyinstaller,该工具可以支持在window和linux下使用。 在windows下,大小为几十K的源文件打包成exe文件,可能为几十兆,原因是把程序所引用的库文件也一起打包在一起。...
  • 如何将python3.6软件的py文件打包成exe程序

    万次阅读 多人点赞 2017-09-30 19:42:26
    在我们完成一个Python项目或一个程序时,希望将Python的py文件打包成在Windows系统下直接可以运行的exe程序。在浏览网上的资料来看,有利用pyinstaller和cx_Freeze进行打包的方法。关于cx_Freeze打包的方法,可以...
  • 背景: 利用setuptools来实现,所以先安装setuptools,其实Python2.7.9及之后的版本都自带安装setuptools了,无需在另外安装 如果没有安装setuptools的直接下载源码包解压安装就行了 示例:以linux环境为例 1....
  • 在Windows下把python转化可执行程序还是比较简单,用py2exe就可以了。Linux下比较方便的有这么几种:1. py2installer
  • 事情是这样的我用打包命令:pyinstaller -F E:\python\clpicdownload\mypython.py打包了一个exe程序,但是运行时提示我缺 少bs4模块然后我就去查pyinstaller的使用方法,找到pyinstaller有一个-p参数: 1.设置导入...
  • linux下使用pyinstaller打包python脚本

    万次阅读 2013-04-09 16:40:41
    最近给运维写一个系统维护的python脚本,但是被告知生产环境有很多服务器没有安装python解释器,于是在网上搜索多pyinstaller解决方案,本文简单记录之。 1. 下载pyinstaller。 最新的pyinstaller版本为2.0版本,...
  • python封装exe

    万次阅读 多人点赞 2020-08-07 14:19:55
    最近写了一个小小的程序,需要进行封装exe,为了简单,就直接用了pyinstaller这个模块,对于python3.6版本的童鞋来说,简直方便的不要。下面就给大家介绍一下如何用pyinstaller去封装程序为exe程序。 首先,需要安装...
  • 用freeze.py打包python程序成可执行程序(linux) 2009-12-16 19:55:13 分类: 用freeze.py打包python程序成可执行程序(linux)    为了将一批py程序打包成可执行程序以便发布,之前使用过cxfreeze来完成...
  • python文件打包为windows linux下可执行的二进制文件 日期:2018年08月15日 环境准备 确保.py文件在当前python环境下可正常运行 python环境建议:python3.5(官方版)pyinstaller 3.3.1 anaconda3.6...
  • python用cx_Freeze打包程序

    万次阅读 2013-12-27 23:59:05
    python中比较常用的转exe方法有三种,分别是cx_freeze,py2exe,PyInstaller。py2exe恐怕是三者里面知名度最高的一个,但是同时相对来说它的打包质量恐怕也是最差的一个。pyinstaller打包很好,但是操作工序较为...
1 2 3 4 5 ... 20
收藏数 25,328
精华内容 10,131
关键字:

python程序打包成linux程序