2013-12-23 4 views
2

저는 며칠 동안 파이썬 용 matplotlib 라이브러리를 설치하는 데 어려움을 겪고 있습니다. 내가 FreeType에서, 엑스 코드, X11있어, 그리고 바인딩 정리,하지만 지금 나는 다음과 같은 오류 도착하기 matplotlib 설치하려고하면코코아 오류로 인해 Macromedia Mavericks에서 pip를 통해 Matplotlib을 설치하지 못하셨습니까?

building 'matplotlib.backends._macosx' extension 

gcc-4.2 -fno-strict-aliasing -fno-common -dynamic -arch i386 -arch x86_64 -g -O2 
-DNDEBUG -g -O3 -DPY_ARRAY_UNIQUE_SYMBOL=MPL_matplotlib_backends__macosx_ARRAY_API 
-DPYCXX_ISO_CPP_LIB=1 -I/Library/Frameworks/Python.framework/Versions/2.7/lib 
/python2.7/site-packages/numpy/core/include -I/usr/local/include -I/usr/include 
-I/usr/X11/include -I/opt/local/include -I. -Iagg24/include 
-I/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 
-c src/_macosx.m 
-o build/temp.macosx-10.6-intel-2.7/src/_macosx.o 

In file included from /System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:161, 
    from /System/Library/Frameworks/Cocoa.framework/Headers/Cocoa.h:12, 
    from src/_macosx.m:1: 
    /System/Library/Frameworks/Foundation.framework/Headers/NSUserNotification.h:16: 
    error: expected ‘,’ or ‘}’ before ‘__attribute__’ 

이 NumPy와 사용되지 않는 API의의에 대한 경고의 번호와 함께 온다, 그러나 그것들은 문제를 일으키지 않는 것 같습니다. 누가 문제가 여기에 있는지 말해 줄 수 있습니까?

기록을 위해 gcc-4.2를 사용하고 있습니다.

답변

1

그냥 편집 /System/Library/Frameworks/Foundation.framework/Headers/NSUserNotification.h :

NSUserNotificationActivationTypeReplied NS_AVAILABLE(10_9, NA) = 3 

에 :

NSUserNotificationActivationTypeReplied /* NS_AVAILABLE(10_9, NA) */ = 3 
에서

sudo nano /System/Library/Frameworks/Foundation.framework/Headers/NSUserNotification.h 

변경 라인 (16)

그런 다음 matplotlib 설치를 다시 시도하십시오.

sudo pip install matplotlib 

그게 저를 위해 해결되었습니다!

출처 : https://www.mail-archive.com/[email protected]/msg00215.html

+0

이것은 파이썬을 빌드하려고 할 때도 내 문제를 해결했습니다. 이 머리글은 무엇에 속해 있습니까? 이 업그레이드가 업그레이드되어이 수동 편집을 방해 할 수있는 기회는 무엇입니까? –

+1

나는이 오류도 쳤지 만 시스템 라이브러리 헤더를 변경하는 것은 매우 현명하지 못한 일이다. 다른 시스템이 그 것에 의존하는지 알 수 없다. – JoeZuntz

0

확인 which -a gcc-4.2의 출력. 해당 /usr/bin/gcc-4.2 Xcode 제공된 gcc를 사용하지 않는 경우. 이 문제를 해결하려면 접두사가 CC=/usr/bin/gcc 인 빌드 명령 (또는 pip 등)을 실행하십시오. 이 오류가 수정되어야합니다.

관련 문제