簡體   English   中英

在osx 10.11中安裝wxPython

[英]Install wxPython in osx 10.11

當我嘗試安裝wxPython時,它顯示一個錯誤:

 > The Installer could not install the software because there was no > software found to install. 

我該如何解決?

wxPython正在使用遺留腳本 ,根據此技術說明, 捆綁安裝程序已棄用,並且(從El Capitan版本開始)不受支持:

捆綁式安裝程序包是不再受支持的舊式轉換輔助工具。 PackageMaker也不再受支持。 現在需要使用productbuild等工具轉換為平面文件安裝程序包。

這給你留下兩個選擇,

  1. 將安裝程序轉換為扁平包。
  2. 編譯wxWidgets並在本地安裝它。

要實現前者,請按照以下說明操作:

0 )假設您已經安裝了dmg並且已將pkg文件夾移動到工作位置

cd ~/repack_wxpython
cp -r /Volumes/wxPython/wxPython-ABC.pkg .

1 )使用pax實用程序從Contents/Resources提取有效內容文件( pax.gz )到將成為新包的根Contents/Resources的文件夾。

mkdir pkg_root
cd pkg_root
pax -f ../wxPython-ABC.pkg/Contents/Resources/wxPython-ABC.pax.gz -z -r
cd ..

2 )在bundle腳本文件夾中將bundle的preflight / postflight腳本重命名為preinstall / postinstall腳本,這是平板包所需的。

mkdir scripts
cp wxPython-ABC.pkg/Contents/Resources/preflight scripts/preinstall
cp wxPython-ABC.pkg/Contents/Resources/postflight scripts/postinstall

3 )使用pkgbuild工具創建扁平包:

pkgbuild --root ./pkg_root --scripts ./scripts --identifier com.wxwidgets.wxpython wxPython-ABC.pkg

如果要自定義傳遞的參數,這是pkbuild命令文檔

注意事項:原始捆綁包包含License.rtf和未包含在扁平包中的Welcome.txt文件。 需要通過定義自定義XML文件並使用productbuild命令創建另一個包來添加這些productbuild

用於Mac的wxpython的工作安裝程序似乎在預發布中可用:

https://groups.google.com/forum/#!topic/wxpython-dev/TMnoeAgf2Wg

這似乎對我有用。 為El Capitan工作。

以下是我成功用於安裝wxPython'Classic'(非'Phoenix')的步驟。
OSX 10.11或更新版本無法運行您嘗試過的安裝程序,但此方法可以正常運行。

  1. 將這兩個最新的源代碼放入兩個兄弟目錄中:
    https://github.com/wxWidgets/wxPython.git
    https://github.com/wxWidgets/wxWidgets.git
    (2015年12月16日之前的來源不適用於此方法)
  2. 更改目錄cd /pathToYourGitHubSources/wxPython並運行以下命令:
    python build-wxpython.py --build_dir=../bld --osx_cocoa --install
  3. 構建和安裝需要一段時間。 完成后,您可以嘗試導入wx,但可能首先需要以下步驟。
  4. 查看新創建的installed_files.txt以查看wxPython*文件所在的目錄,以及/wx/*.py/lib/*.pyc文件的位置。 這三個目錄可能是:
    /usr/lib/python2.7/site-packages
    /usr/lib/python2.7/site-packages/wx
    /usr/lib/python2.7/site-packages/wx/lib
  5. 從終端命令行設置環境和測試wx:

     export PYTHONPATH='/usr/lib/python2.7/site-packages/wx' export DYLD_LIBRARY_PATH='/usr/lib/python2.7/site-packages/wx/lib' python import sys import wxversion try: wxversion.select(['3.0.3']) except wxversion.VersionError: print "wx version failed detection" sys.path.insert(0, '/usr/lib/python2.7/site-packages') import wx print wx.version() 

如果打印了wx版本,它就可以了。
有些系統安裝了其他版本的wxPython或舊的wxPythons版本,這使我需要設置如上所示的環境,直到從系統中清除舊件。

這對我有用(10.11.16):

   sudo pip install --upgrade --trusted-host wxpython.org --pre -f http://wxpython.org/Phoenix/snapshot-builds/ wxPython_Phoenix 

如何正確安裝wxPython?

找到此問題的解決方案:

錯誤:

mac01:tools ganeshr $ ride.py

錯誤的wxPython版本。 您需要安裝具有unicode支持的wxPython 2.8.12.1才能運行RIDE。 wxPython 2.8.12.1可以下載

解決方案: - 在robotide / __ init__.py中添加supported_versions.append(“3.0”)支持

檢查wxPython是否已安裝:

$ pip list

wxPython(3.0.2.0)wxPython-common(3.0.2.0)

$ sudo vim /Library/Python/2.7/site-packages/robotide/__init__.py

嘗試:導入wxversion

來自wxversion導入VersionError

if sys.platform =='darwin':

supported_versions.append( “2.9”)

supported_versions.append(“3.0”)#添加此行,RIDE將支持wxPython(3.0.2.0)

wxversion.select(supported_versions)import wx

謝謝。

我發布了一個關於從源代碼構建的答案,並且@me​​moselyk發布了一個關於如何將軟件包轉換為在新OSX上安裝的有用答案。 但是,我發現簡單的解決方案是使用Brew包管理器
以下是我使用的步驟。

  • 使用以下單個命令安裝Brew:
    • ruby -e "$(curl -fsSL \\ https://raw.githubusercontent.com/Homebrew/install/master/install)"
  • 安裝wx; (也將安裝依賴項)
    • brew install wxpython --framework

測試錯誤: python -c 'import wx'

完成,但以下也可能是相關的。

  • 我多次運行以下命令來清除舊安裝,並確保我能夠導入正確的wx:
    • sudo pip uninstall wxPython
    • sudo pip uninstall wxPython-Phoenix
  • 我刪除了添加的系統環境變量,以使之前的安裝工作正常。
    • unset PYTHONPATH
    • unset DYLD_LIBRARY_PATH
    • unset DYLD_FRAMEWORK_PATH

安裝wx后,如果是臟安裝,則可能需要運行以下命令:
- brew link --overwrite wxmac
- brew doctor wxPython (如果檢測到某些東西,請遵循非常有用的指示)

如果你想訪問其他版本,這不是你的方法,但對於3.0.2.0 '版本,我認為這是要走的路。
如果有的話, brew upgrade wxPythonbrew upgrade wxPython到更新的版本。

對我來說,只需使用brew就可以了:

brew install wxpython

我很驚訝沒有人發布同樣的答案!

PS:我在El Capitan,10.11.3

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM