亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

使用Pyinstaller的最新踩坑實(shí)戰(zhàn)記錄

 更新時(shí)間:2017年11月08日 09:50:54   作者:零の雜貨鋪  
這篇文章主要給大家介紹了最近在使用Pyinstaller的踩坑實(shí)戰(zhàn)記錄,主要介紹了PYTHON2X.DLL缺失和WINDOWS2003 32BIT提示程序無(wú)效這兩個(gè)問(wèn)題的解決方法,文中給出了詳細(xì)的解決方法,需要的朋友們下面來(lái)一起看看吧。

前言

將py編譯成可執(zhí)行文件需要使用PyInstaller,之前給大家介紹了關(guān)于利用PyInstaller將python程序.py轉(zhuǎn)為.exe的方法,在開(kāi)始本文之前推薦大家可以先看下這篇文章,本文主要給大家介紹了Pyinstaller最新踩坑實(shí)戰(zhàn)記錄,現(xiàn)在網(wǎng)上關(guān)于pyinstaller的問(wèn)題充斥著各種copy過(guò)來(lái)copy過(guò)去的答案,這大概就是各種無(wú)腦博客爬蟲(chóng)站最讓人討厭的地方。
而且這方面的問(wèn)題,stackoverflow也是回答的千奇百怪。

強(qiáng)烈推薦官方文檔 http://pythonhosted.org/PyInstaller/usage.html#options

引言

這里記錄下我的兩個(gè)踩坑解決方法,第一個(gè)其實(shí)網(wǎng)上有人寫(xiě)出來(lái)過(guò),但是太容易被各種噪聲淹沒(méi)了。第二個(gè)則是摸索了一下午自己找到的解決方法。

一、PYTHON2X.DLL缺失

先聲明環(huán)境

Windows10+python2.7.11 64bit+pyqt4 64bit+pyinstaller3.2解決

網(wǎng)上遇見(jiàn)這種錯(cuò)誤基本有這幾種:

  • 手動(dòng)尋找.dll文件并移到對(duì)應(yīng)文件夾下,網(wǎng)上被流傳最廣的做法,我測(cè)試后無(wú)效
  • 修改SPEC文件,添加各種路徑,這種手動(dòng)添加路徑的方法也著實(shí)令人頭疼
  • 編譯時(shí),使用-path參數(shù)等,也是需要手動(dòng)添加路徑

其實(shí),官方文檔里給出了一個(gè)參數(shù)

--win-private-assemblies

這個(gè)參數(shù)是指將共享的程序集變?yōu)樗接谐绦蚣?,這樣的話即使改變環(huán)境,編譯的程序依然只會(huì)執(zhí)行私有程序集而忽視不同環(huán)境下的共享程序集。這個(gè)參數(shù)尤其適合在一臺(tái)機(jī)器上編譯完成后在各種不同環(huán)境下執(zhí)行。

與之相近的還有一個(gè)參數(shù)

--win-no-prefer-redirects

這兩個(gè)參數(shù)是在比較新的pyinstaller版本中才有的選項(xiàng),所以爬蟲(chóng)站點(diǎn)copy的老博客自然不會(huì)介紹這類方法。

二、WINDOWS2003 32BIT提示程序無(wú)效

環(huán)境如下:

Windows2k3 32bit+python 2.7.11 32bit+pyqt 32bit+pyinstaller2.1解決

其實(shí)就是有一個(gè)需求是在32位的win2003上執(zhí)行打包后的pyqt。

最初是安裝了最新版的一套32位python+pyqt+pyinstaller在32位的win7上編譯執(zhí)行成功了,但是把已經(jīng)是32位的程序放到2003上卻報(bào)錯(cuò)說(shuō)是無(wú)效的win32程序。一開(kāi)始懷疑2003和win7的32位難道還不一樣?

結(jié)果一套最新程序在win2003上編譯完還是報(bào)了同樣的錯(cuò)。

搜索無(wú)果后,偶然看到一個(gè)帖子,是說(shuō)PHP5.5不支持Win2003,在運(yùn)行時(shí)就會(huì)報(bào)無(wú)效的win32程序這個(gè)錯(cuò),恍然想到會(huì)不會(huì)是編譯用到的哪個(gè)組件同樣不支持Win2003了呢?

原本未打包的程序在2003上可以執(zhí)行,那么多半是pyinstaller的問(wèn)題,直接將pyinstaller回退到仍然在官方列表里的最老版本2.1,發(fā)現(xiàn)也只有2.1還支持python2.6以下的版本,打包成功不在報(bào)錯(cuò)。

但是這里又有一點(diǎn)小問(wèn)題,打包的pyqt程序點(diǎn)擊后沒(méi)有任何效果,這次懷疑是參數(shù)問(wèn)題,測(cè)試后發(fā)現(xiàn),首先,老版本的pyinstaller沒(méi)有我之前說(shuō)的那兩個(gè)改變程序集的命令;其次,如果使用-w去掉了命令行框的話,pyqt也沒(méi)有辦法執(zhí)行起來(lái),因此最后只使用-F –clean兩個(gè)參數(shù)來(lái)打包,測(cè)試后文件可以執(zhí)行。

其他

其實(shí)還有些小問(wèn)題,但是這些問(wèn)題答案都好找,就不在這里詳細(xì)講了。

  • pywin32官網(wǎng)上很好下到對(duì)應(yīng)版本
  • 直接的pyqt安裝包官網(wǎng)不再提供了,可以去sourceforge下到
  • 編譯的時(shí)候報(bào)VC的錯(cuò),安裝Microsoft Visual C++ 20xx Redistributable Package,注意32位和64位

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

  • Python統(tǒng)計(jì)字符內(nèi)容的占比的實(shí)現(xiàn)

    Python統(tǒng)計(jì)字符內(nèi)容的占比的實(shí)現(xiàn)

    本文介紹了如何使用Python統(tǒng)計(jì)字符占比,包括字符串中字母、數(shù)字、空格等字符的占比,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-08-08
  • Httprunner簡(jiǎn)介、安裝及基本使用教程

    Httprunner簡(jiǎn)介、安裝及基本使用教程

    httprunner是一款面向 HTTP(S) 協(xié)議的通用測(cè)試框架。只需編寫(xiě)維護(hù)一份 YAML/JSON 腳本,即可實(shí)現(xiàn)自動(dòng)化測(cè)試、性能測(cè)試、線上監(jiān)控、持續(xù)集成等多種測(cè)試需求,本文給大家介紹Httprunner安裝使用教程,感興趣的朋友一起看看吧
    2022-02-02
  • Python?webargs?模塊的簡(jiǎn)單使用

    Python?webargs?模塊的簡(jiǎn)單使用

    webargs是一個(gè)用于解析和驗(yàn)證HTTP請(qǐng)求對(duì)象的Python庫(kù),今天通過(guò)本文給大家介紹Python?webargs?模塊的安裝使用,感興趣的朋友一起看看吧
    2022-01-01
  • TensorFlow2基本操作之合并分割與統(tǒng)計(jì)

    TensorFlow2基本操作之合并分割與統(tǒng)計(jì)

    這篇文章主要介紹了TensorFlow2基本操作之合并分割與統(tǒng)計(jì),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-09-09
  • 詳解Python函數(shù)print用法

    詳解Python函數(shù)print用法

    今天給大家?guī)?lái)的是關(guān)于Python的相關(guān)知識(shí),文章圍繞著Python print函數(shù)的用法展開(kāi),文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06
  • windows10 pycharm下安裝pyltp庫(kù)和加載模型實(shí)現(xiàn)語(yǔ)義角色標(biāo)注的示例代碼

    windows10 pycharm下安裝pyltp庫(kù)和加載模型實(shí)現(xiàn)語(yǔ)義角色標(biāo)注的示例代碼

    這篇文章主要介紹了windows10 pycharm下安裝pyltp庫(kù)和加載模型實(shí)現(xiàn)語(yǔ)義角色標(biāo)注,本文通過(guò)圖文實(shí)例相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-05-05
  • Python web框架fastapi中間件的使用及CORS跨域問(wèn)題

    Python web框架fastapi中間件的使用及CORS跨域問(wèn)題

    fastapi "中間件"是一個(gè)函數(shù),它在每個(gè)請(qǐng)求被特定的路徑操作處理之前,以及在每個(gè)響應(yīng)之后工作,它接收你的應(yīng)用程序的每一個(gè)請(qǐng)求,下面通過(guò)本文給大家介紹Python web框架fastapi中間件的使用及CORS跨域問(wèn)題,感興趣的朋友一起看看吧
    2024-03-03
  • typing.Dict和Dict的區(qū)別及它們?cè)赑ython中的用途小結(jié)

    typing.Dict和Dict的區(qū)別及它們?cè)赑ython中的用途小結(jié)

    當(dāng)在 Python 函數(shù)中聲明一個(gè) dictionary 作為參數(shù)時(shí),我們一般會(huì)把 key 和 value 的數(shù)據(jù)類型聲明為全局變量,而不是局部變量。,這篇文章主要介紹了typing.Dict和Dict的區(qū)別及它們?cè)赑ython中的用途小結(jié),需要的朋友可以參考下
    2023-06-06
  • Python編程入門指南之函數(shù)

    Python編程入門指南之函數(shù)

    這篇文章主要為大家介紹了Python編程之函數(shù),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-01-01
  • 聊聊python中令人迷惑的duplicated和drop_duplicates()用法

    聊聊python中令人迷惑的duplicated和drop_duplicates()用法

    這篇文章主要介紹了聊聊python中令人迷惑的duplicated和drop_duplicates()用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-05-05

最新評(píng)論