2015-10-18 136 views
1

我下載了最新的pygame 1.9.1源碼。首先,我設置以下的環境變量:看來我有一個rpath問題在OSX上安裝pygame El Capitan 10.11

export CC='/usr/bin/gcc' 
export CFLAGS='-isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk -I/opt/X11/include -arch i386 -arch x86_64' 
export LDFLAGS='-arch i386 -arch x86_64' 
export ARCHFLAGS='-arch i386 -arch x86_64' 

然後,在SDL.framework頭我複製他們都到一個名爲SDL處理在pygame的源的絕對路徑的一些問題的子文件夾。設置這些東西似乎讓我到了構建點。而且,安裝運行良好。但是,當我嘗試導入pygame時,我得到以下內容。

Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/Library/Python/2.7/site-packages/pygame-1.9.1release-py2.7-macosx-10.11-intel.egg/pygame/__init__.py", line 95, in <module> 
    from pygame.base import * 
ImportError: dlopen(/Library/Python/2.7/site-packages/pygame-1.9.1release-py2.7-macosx-10.11-intel.egg/pygame/base.so, 2): Library not loaded: @rpath/SDL.framework/Versions/A/SDL 
    Referenced from: /Library/Python/2.7/site-packages/pygame-1.9.1release-py2.7-macosx-10.11-intel.egg/pygame/base.so 
    Reason: image not found 

假設rpath是正確的,在指定的位置肯定有一個SDL可執行文件。但是,它可能不正確,如何檢查rpath。

回答

2

我沒有問題,安裝以下這裏所描述的過程: http://kidscancode.org/blog/2015/09/pygame_install/

雖然這種使用自制安裝所有的圖書館,如果你有他們,你應該能夠使用安裝pygame的:

$ pip3 install hg+http://bitbucket.org/pygame/pygame 

但是,要知道,Pygame的具有下埃爾卡皮坦了一些問題,如下所述: https://bitbucket.org/pygame/pygame/issues/284/max-osx-el-capitan-using-the-deprecated

最差的一個是日在圖形不能正確渲染。優勝美地的情況並非如此。

編輯:

看來,這可能是一個SDL問題,而不是pygame的問題的基礎上,這裏的討論: Rendering Glitch on Mac OSX El Capitan with OpenGL

我要看看我是否可以測試從1.2降級SDL_image .12至1.2.10確認。

+0

我們有很多python 2代碼不會很快更新,因爲我們有其他的軟件包依賴是python 2,所以我已經更新了我的問題,以便更具體。不過,我非常希望在SDL_image測試後看到您的問題更新。 – John

+0

是的,因爲這是SDL_image的問題,所以圖形問題也出現在Python 2中(只是試過了)。降級測試還沒有運氣,因爲它導致我陷入依賴問題。當我有更多時間時,可能不得不嘗試El Cap的新副本。 – Chris

2

1)首先,如果你使用的酋長,你需要root訪問權限添加到/ usr /地方:

sudo su 
chown -R $USER /usr/local 

2)然後安裝自制:http://brew.sh/(安裝Ruby,如果你沒有它)

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 

3)在此之後,使用自制安裝pygame的:

sudo brew install homebrew/python/pygame 

就職於米e :)