2012-02-09 12 views
23

Tôi muốn sử dụng wxPython trên máy tính Mac OS 10.7 (Sư tử) của mình. (Tôi là một người tị nạn Tkinter.) Tôi đã nâng cấp từ Python 2.7.1, sau đó tải xuống và cài đặt wxPython2.8-osx-unicode-2.8.12.1-universal-py2.7.dmg. Dưới đây là những gì tôi nhận được:Làm cách nào để cài đặt wxPython trên Mac OS X?

Python 2.7.2 (v2.7.2:8527427914a2, Jun 11 2011, 15:22:34) 
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin 
Type "copyright", "credits" or "license()" for more information. 
>>> import wx 
Traceback (most recent call last): 
    File "<pyshell#0>", line 1, in <module> 
    import wx 
    File "/usr/local/lib/wxPython-unicode-2.8.12.1/lib/python2.7/site-packages/wx-2.8-mac-unicode/wx/__init__.py", line 45, in <module> 
    from wx._core import * 
    File "/usr/local/lib/wxPython-unicode-2.8.12.1/lib/python2.7/site-packages/wx-2.8-mac-unicode/wx/_core.py", line 4, in <module> 
    import _core_ 
ImportError: dlopen(/usr/local/lib/wxPython-unicode-2.8.12.1/lib/python2.7/site-packages/wx-2.8-mac-unicode/wx/_core_.so, 2): no suitable image found. Did find: 
    /usr/local/lib/wxPython-unicode-2.8.12.1/lib/python2.7/site-packages/wx-2.8-mac-unicode/wx/_core_.so: no matching architecture in universal wrapper 

Điều này cho tôi biết điều gì và tôi phải làm gì?

Trả lời

1

Liên kết của Mike là một liên kết tuyệt vời cho câu trả lời, nhưng chỉ để hoàn thành ...

wxPython sử dụng wxMac, sử dụng Carbon, được giới hạn chỉ 32 bit thực thi. Tuy nhiên Python2.7 (64bit) đi kèm với lệnh python-32.

$ python-32 
>> import wx 
40

Homebrew cung cấp wxWidgets 2.9 trong toàn bộ 64bit vinh quang bao gồm wxWidgets.

brew install wxmac

+10

điều này là không đủ. Tôi vẫn gettint lỗi đó. Bạn cũng cần phải: 'brew install wxpython' – CpILL

+2

Vâng, như @CpILL nói, làm' brew install wxpython'. Nó sẽ tự động cài đặt 'wxmac' làm phụ thuộc. – snd

3

Sử dụng brew * để cài đặt wxmac bằng cách sử dụng lệnh sau đây.

brew cài đặt --python wxmac --devel

khi bạn cài đặt các wxmac tạo ra một liên kết tượng trưng giữa cài đặt wx vào thư viện python.

sudo ln -s /usr/local/Cellar/wxmac/2.9.4.0/lib/python2.7/site-packages/wx /Library/Python/2.7/site-packages/wx

I Hope nó sẽ hữu ích cho những người cài đặt trong tương lai.

* nếu bạn không có Brew cài đặt trước, cài đặt nó bằng cách sử dụng lệnh sau: ruby ​​-e "$ (curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"

+2

Ý bạn là, 'brew install wxpython', phải không? – swdev

+0

Nó thực sự là 'brew install wxpython', và' wxmac' sẽ được cài đặt như một phần của cài đặt 'wxpython'. Cũng không cần (trong trường hợp của tôi) để làm symlink, vì 'brew' sẽ thực hiện công việc cho bạn, nếu các gói trang web của Homebrew nằm trong python' sys.path' của bạn. –

12

Tôi đề nghị:

brew install wxpython 

từ wxPython cài đặt wxmac, không cần phải cài đặt nó một cách riêng biệt:

brew install wxmac 
Warning: wxmac-3.0.2_2 already installed 
+0

Điều đó đã làm cho tôi – Ivelin