2011-11-26 66 views
15

Sử dụng Python 2.7.2. Khi tôi cố gắng nhập khẩu pygame tôi nhận được thông báo lỗi này:Cài đặt Pygame cho Mac OS X 10.6.8

Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pygame/__init__.py", line 95, in <module> 
    from pygame.base import * 
ImportError: dlopen(/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pygame/base.so, 2): no suitable image found. Did find: 
    /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pygame/base.so: no matching architecture in universal wrapper 

Tôi không chắc chắn điều này có nghĩa là gì. Tôi có nên tự mình biên dịch pygame không?

Trả lời

3

Đầu mối nằm ở dòng cuối cùng no matching architecture in universal wrapper. Nhiều khả năng bạn đang sử dụng các tệp nhị phân 32 bit được biên dịch trước trên hệ thống 64 bit.

Bạn có thể thử cài đặt lại hoặc biên dịch từ đầu nhưng có lẽ sẽ dễ dàng hơn nhiều khi chỉ cần buộc python chạy trong 32 bit. Rất nhiều thông tin khác over here in this post.

+0

Được rồi tôi đã thay đổi thành 32 bit nhưng bây giờ nó nói rằng mô-đun pygame không tồn tại. – user1064913

+0

Bạn đã thử cài đặt lại PyGame sau khi thay đổi kiến ​​trúc chưa? Ngoài ra, bạn có thể đã biết điều này nhưng chắc chắn rằng bạn đã sử dụng đúng tên mô-đun và viết hoa bằng cách kiểm tra '>>> help ('modules')'. –

+0

Có, tôi đã thử cài đặt lại nó. Nó không hiển thị trong danh sách mô-đun. Tôi nghĩ rằng python thay đổi trở lại 64-bit sau khi tôi thoát python trong thiết bị đầu cuối. Có cách nào để thay đổi chế độ này thành chế độ 32 bit vĩnh viễn không? – user1064913

0

Tôi đã gặp sự cố tương tự. Tôi đã có Python 2.7.2, phiên bản cài đặt cho OSX 10.6. Đây là những gì tôi đã làm để sửa chữa nó:

1) Đã xóa bản cài đặt Python hiện tại, cả từ thư mục ứng dụng và /Library/Frameworks/Python.framework (Tôi vừa xóa 2.7.2, chỉ còn lại 3.2)

2) cài đặt lại Python 2.7.2, phiên bản cài đặt cho OSX 10,3 (tập tin cài đặt pygame tôi bị gán cho OSX 10.3, trong đó nhắc nhở tôi theo hướng này)

3) pygame cài đặt lại

nhập khẩu Bây giờ pygame mà không ném một lỗi.

+0

Vâng, tắt khóa học. Phiên bản Python bạn đã tải xuống là 32 bit, vậy tại sao nó không hoạt động? Đây không phải là một giải pháp, nhưng một "bước một bước trở lại" workaround ... – cseder

0

Nếu bạn không muốn gây rối với tệp hệ thống thì cách dễ nhất là cài đặt lại Python 2.7.2 nhưng chỉ phiên bản 32 bit. Nhận nó here.

Dmg bao gồm cả 64/32 bit gây ra sự lộn xộn này.

+0

tải xuống trình cài đặt không thành công với lỗi "Không tìm thấy phần mềm nào được cài đặt" –

32

Các Python 2.7.3 Dmg trình cài đặt Mac OS cài đặt cả hai mã nhị phân 64-bit và 32-bit trong:

/Library/Frameworks/Python.framework/Versions/2.7/bin/

Có một 32-bit nhị phân gọi là python2.7-32 trong thư mục đó.

Để sử dụng nó trong Terminal chỉ cần gõ python2.7-32 $ thay vì python

Để sử dụng nó trong IDLE chỉ đơn giản là đổi tên 64-bit python2.7 nhị phân để cái gì đó như python2.7-64 sau đó đổi tên python2.7-32' to python2.7` và lần sau khi bạn khởi động IDLE hoặc Terminal, nó sẽ sử dụng nhị phân 32 bit. Thay đổi lại khi bạn hoàn tất.

Bạn cũng có thể buộc ra mắt IDLE ở chế độ 32-bit từ Terminal:

$ arch -i386 /Library/Frameworks/Python.framework/Versions/2.7/bin/idle2.7 -n

Bạn có thể tạo một kịch bản ứng dụng vỏ Automator để làm cho nó dễ dàng hơn để khởi động.

+1

chạy python2.7-32 khắc phục sự cố của tôi – benlong

+2

Woo Hoo ! 4 tuổi và vẫn hoạt động :) –

+1

Đáng kinh ngạc. 5 năm ... và hoạt động như ma thuật !!! –

0

Tôi khuyên bạn nên sử dụng một IDE Python khá, như PyCharm.

Tôi đã cài đặt cả 3.3 (x64), 3.3 (x86) và 2.7.6 từ python.org với cả hai kiến ​​trúc được bao gồm.

Tất cả những gì tôi phải làm là thiết lập một cấu hình thông dịch cho mỗi và tôi có thể chọn và chọn dự án theo cấp dự án.

Đối với tôi đây là cách xác định phát triển Python trơn tru, contra Python Mangling và cách giải quyết thủ công.

Phiên bản cộng đồng của IDE PyCharm thậm chí miễn phí như trong bia! Đi làm cho nó qua tại JetBrains Site

Đó là một làn gió để sử dụng và hoạt động giống nhau trên cả Windows, Linux và OS X. Nó cũng đóng vai trò như một người quản lý gói, vì vậy bạn có thể cài đặt các thành phần khác nhau trực tiếp từ IDE và chạy Bảng điều khiển các phiên sử dụng các cấu hình khác nhau. Nó cũng cho phép bạn thiết lập virtualenv dễ dàng.

Tuyên truyền đầy đủ! Hãy thử tự mình thay thế.

Và có, tôi đã PyGame làm việc bằng cách này ...