Python 如何跨平台编译打包? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
findbrick
V2EX    程序员

Python 如何跨平台编译打包?

  •  
  •   findbrick 2018 年 5 月 25 日 8036 次点击
    这是一个创建于 2787 天前的主题,其中的信息可能已经有所发展或是发生改变。

    比如我想在代码发布机器(centos7.3),编译打包.exe 可执行文件,然后可以在 windows 下运行 求教如何实现?

    11 条回复    2018-05-25 22:50:39 +08:00
    wlwood
        1
    wlwood  
       2018 年 5 月 25 日
    搞不了。
    除非,你在 centos 上,搞个 windows 模拟。
    但是,有这折腾,还不如直接在 windows 上直接打包。
    neoblackcap
        2
    neoblackcap  
       2018 年 5 月 25 日
    是一个脚本还是包括二进制代码?
    不过你们有这样的需要我建议你们还是寄希望与跨平台比较良好的语言,一旦 Python 涉及到 C 扩展,你的跨平台就不好做了。
    polaa
        3
    polaa  
       2018 年 5 月 25 日
    找个 windows 环境, 用 pyinstaller
    findbrick
        4
    findbrick  
    OP
       2018 年 5 月 25 日
    @wlwood 尝试很多方案都不行
    @neoblackcap 就是简单的 py 文件 然后编译打包成 exe 文件
    @polaa 只能这样了吗?
    wlwood
        5
    wlwood  
       2018 年 5 月 25 日
    @findbrick 可以这样,在 windows 上起个 server 服务,centos 上 client, 代码发布到 centos 后触发传递代码到 window 的 server 上执行打包,打包完成,再传递回来。
    master
        6
    master  
       2018 年 5 月 25 日
    Appveyor →_→
    neoblackcap
        7
    neoblackcap  
       2018 年 5 月 25 日
    @findbrick 其实如果很简单的程序,可以用 golang 改写,一键编译成对应平台的可执行文件,对于这个,golang 做得还行。如果比较复杂,一定要 Python 的话,那么就用 @wlwood 的方案或者你们上个 CI 服务,最不行你就上个虚拟机吧
    Greenm
        8
    Greenm  
       2018 年 5 月 25 日
    pytoexe 或者 wine + pyinstaller

    能实现需求,但是不推荐这样做。
    pango
        9
    pango  
       2018 年 5 月 25 日
    基本无解,不明白怎么会有这样的需求?直接在 win 下面打包 exe 极其简单,不要把问题搞复杂,留着时间陪家里人。

    不然就转 golang 吧,用过 golang 的跨平台编译之后真是感动的要哭。
    jmc891205
        10
    jmc891205  
       2018 年 5 月 25 日
    做成后端服务。。。然后通过 web 调用。。。
    encro
        11
    encro  
       2018 年 5 月 25 日
    pip install pyinstaller
    pyinstaller --onefile script.py
    没必要浪费时间。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2683 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 11:34 PVG 19:34 LAX 03:34 JFK 06:34
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86