2011-11-26 22 views
15

Korzystanie z Pythona 2.7.2. Podczas próby importowania pygame pojawia się następujący komunikat o błędzie:Instalacja Pygame dla 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 

Nie jestem do końca pewien, co to oznacza. Czy powinienem samemu skompilować pygame?

Odpowiedz

3

Wskazówka jest w ostatniej linii no matching architecture in universal wrapper. Najprawdopodobniej używasz skompilowanych 32-bitowych plików binarnych w systemie 64-bitowym.

Możesz spróbować ponownie zainstalować lub skompilować od zera, ale prawdopodobnie będzie o wiele łatwiej zmusić Pythona do działania w 32-bitowym. Wiele więcej informacji over here in this post.

+0

Dobra zmieniłem do 32-bit, ale teraz mówi, że pygame moduł nie istnieje. – user1064913

+0

Czy próbowałeś ponownie zainstalować PyGame po zmianie architektury? Prawdopodobnie już to wiesz, ale upewnij się, że użyłeś poprawnej nazwy modułu i wielkich liter, sprawdzając '>>> help ('modules')'. –

+0

Tak, próbowałem ponownie go zainstalować. Nie pojawia się na liście modułów. Myślę, że python zmienia się z powrotem na 64-bitowy po wyjściu z Pythona w terminalu. Czy istnieje sposób na stałe zmienić ten tryb na 32-bitowy? – user1064913

0

Miałem ten sam problem. Miałem Python 2.7.2, wersję instalacyjną dla OSX 10.6. Oto, co zrobiłem, aby to naprawić:

1) Usunięto moją aktualną instalację Pythona, zarówno z folderu aplikacji, jak iz/Library/Frameworks/Python.framework (właśnie usunąłem 2.7.2, tylko lewe 3.2)

2) ponownej instalacji Python 2.7.2, wersja instalacji dla OSX 10.3 (mój plik instalacyjny pygame został oznakowany OSX 10.3, co skłoniło mnie w tym kierunku)

3) ponownej instalacji pygame

import teraz pygame bez rzucania błędu.

+0

Cóż, oczywiście. Pobrana wersja Pythona była 32-bitowa, więc dlaczego nie miałaby działać? To nie jest rozwiązanie, ale "jeden krok naprzód - dwa kroki wstecz" obejście ... – cseder

0

Jeśli nie chcesz zepsuć pliku systemowego, najprostszym sposobem jest ponowna instalacja Pythona 2.7.2, ale tylko wersji 32-bitowej. Uzyskaj go here.

Dmg zawierający zarówno 64/32 bity powoduje ten bałagan.

+0

Pobrany instalator nie powiedzie się z powodu błędu "Nie znaleziono żadnego oprogramowania do zainstalowania" –

32

Python 2.7.3 Dmg Mac OS instalator instaluje zarówno 64-bitowe i 32-bitowe pliki binarne w:

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

Jest binarny 32-bit o nazwie python2.7-32 w tym folderze.

Aby użyć go w terminalu wystarczy wpisać python2.7-32 $ zamiast python

Aby użyć go w IDLE po prostu zmienić nazwę 64-bitowego python2.7 binarnego do czegoś podobnego python2.7-64 następnie zmień nazwę python2.7-32' to python2.7` i następnym uruchomieniu IDLE lub Terminal użyje 32-bitowego pliku binarnego. Po zakończeniu zmień go.

Można także wymusić launch bezczynnie w trybie 32-bitowym z terminalu:

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

Można utworzyć skrypt powłoki aplikacji Automator, aby ułatwić uruchomienie.

+1

uruchom python2.7-32 naprawiono mój problem – benlong

+2

Woo Hoo ! 4 lata i nadal działa :) –

+1

Niewiarygodne. 5 lat ... i działa jak magia !!! –

0

To, co zalecam, to używanie przyzwoitego IDE Pythona, takiego jak PyCharm.

Zainstalowałem zarówno wersję 3.3 (x64), 3.3 (x86), jak i 2.7.6 z python.org z uwzględnieniem obu architektur.

Wszystko, co muszę zrobić, to skonfigurować konfigurację tłumacza dla każdego i mogę wybrać i wybrać projekt na poziomie projektu.

Dla mnie jest to określony sposób na płynne tworzenie Pythona, Contra Python Mangling i ręczne obejścia.

Wersja Community of PyCharm IDE jest nawet darmowa jak w piwie! Przejdź się go w JetBrains Site

To bardzo proste w obsłudze i działa tak samo na obu systemach Windows, Linux i OS X. Działa również jako menadżera pakietów, więc można zainstalować różne składniki prosto z IDE i uruchom konsolę sesje przy użyciu różnych konfiguracji. Umożliwia także łatwe konfigurowanie virtualenv.

Wystarczająca propaganda! Zamiast tego wypróbuj go sam.

I tak, mam Pygame pracy przy użyciu tej metody ...