2014-12-02 18 views
5

Özet: pip install gevent çalışmıyor.Mac OSP üzerinde python gevent yapılamıyor. 10.10

aşağı kazma, gevent .tar.gz indirilen ve elle yapı ran: python setup.py build, aynı hata var:

running build 
running build_py 
running build_ext 
building 'gevent.core' extension 
clang -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -U__llvm__ -DLIBEV_EMBED=1 -DEV_COMMON= -DEV_CLEANUP_ENABLE=0 -DEV_EMBED_ENABLE=0 -DEV_PERIODIC_ENABLE=0 -Ibuild/temp.macosx-10.10-x86_64-2.7/libev -Ilibev -I/Users/travisjohnson/.pyenv/versions/2.7.5/include/python2.7 -c gevent/gevent.core.c -o build/temp.macosx-10.10-x86_64-2.7/gevent/gevent.core.o 
In file included from gevent/gevent.core.c:313: 
In file included from gevent/libev.h:2: 
... 
29 various compiler warnings 
... 
29 warnings generated. 
clang -bundle -bundle_loader python.exe -L/usr/local/opt/readline/lib -L/usr/local/opt/readline/lib -L/Users/travisjohnson/.pyenv/versions/2.7.5/lib -U__llvm__ build/temp.macosx-10.10-x86_64-2.7/gevent/gevent.core.o -o build/lib.macosx-10.10-x86_64-2.7/gevent/core.so 
ld: file not found: python.exe 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 
error: command 'clang' failed with exit status 1 

İlk düşüncem "şey haline python.exe bağlamak için clang söylüyor benziyor" dir, başlangıçta ben saçma olduğunu düşündüm (bu pencere değil), ama: https://docs.python.org/devguide/setup.html#unix python.exe yapıdan sonra python için varsayılan isim (büyük/küçük harf duyarsızlığı nedeniyle), şimdi bilmiyorum.

Bunu saatlerce kazıyorum ve bir sonraki adımın yok. I found something similar (I think) on a different project, ama neden üzerinde herhangi bir açıklama ya da ne düzeltildi, sadece düzeltildi (xcode ve geliştirici araçlarımın güncel olduğunu kontrol ettim)

Bir sonraki kayıp içindeyim Buradaki adımlar, bana doğru yönde işaret edebilir mi?

  • python ikili yerini bulma:

    DÜZENLEME: Manuel I hata aşımı değil tarafından bu spesifik adım aldın adım adım sürümü çalıştırmayı içine biraz daha Kazı (pyenv tarafından kullanılmayan dolgu)

  • Elle yani günlüğüne listelenen clang komutunu çalıştırarak, ama benim python ikili yolu ile python.exe değiştirilmesi: /Users/username/.pyenv/versions/adid/bin/python2.7

Yani python ikilisine doğru bir yol almıyor gibi görünüyor? Ne yazık ki, yapım sürecinin kalanını bilmiyorum, böylece kendi başıma devam edemiyorum ve bu yol düzeltmesinin, setup.py tarafından yürütülen sürece nasıl yerleştirileceğini bilmiyorum. Bu sorunları 10.10'a güncellemeden önce yapmadım (başka bir şey olabilirdi, birkaç gün oldu ve başka şeyler yaptım), bu yüzden bunun neden sadece yeni bir sorun olduğunu bilmiyorum.

https://github.com/yyuu/pyenv/issues/273

Unable to install compiled Python modules under pyenv on OS X 10.10 sorunun adıdır:

+0

Bu makinede xcode-select --install' yapmayı denediniz mi? 'clang' ile ilgili hatalar genellikle eksik/yanlış yapılandırılmış C++ derleyicisinden kaynaklanır. – oxymor0n

+0

Evet, başka yerlerde benzer öneriler buldum, denediğim ilk şeylerden biriydi. – Conslo

+0

Sizi bloke eden başka bir şey olmalı, sadece 10.10'a yükleyin - clang veya gcc'yi daha yeni bir sürüme yükseltmeyi denediniz mi? –

cevap

5

Anlaşılan bu benim Virtualenv yöneticisi ile bir konudur.

DÜZENLEME: Hayır öyle değil.

Bu, python numaralı bir hatadır. OSX'de python'un os sürüm karşılaştırmalarının naif olması naif oldu ve 10.10'da çift haneli bir rakamla kırıldı ve daha sonra daha eski bir OSX'te olduğunuzu düşündü. Bu, derlenmiş modülleri (bazı kararlar vermek için kullanıldığında) kurmanın dışında genellikle fark edilmeden gider. 2.7.7 ya da 2.7.8 (ama onlardan biriydi) yayımlanan düzeltme ile versiyon ise https://bugs.python.org/issue21811

hatırlamıyorum, fakat sonuç yapabilirsiniz geçerli:

Bu

burada giderilmiştir OSX 10.10 veya daha yeni sürümlerde 2.7 eski sürümlerini kullanmayın. Eğer bu konuya koşuyorsanız, şahsen ben kullanılan python versiyonunu yükseltmek için basarım;) (2.7.11 neyse bazı harika ssl geliştirmeler var).

+0

Benim gibi mücadele eden herkes için düzeltme ile python versiyonu 2.7.8 idi. Cevabınız için teşekkürler! –

+0

Hatayı kendiniz çözebilirsiniz, bkz. Https://github.com/pyenv/pyenv/issues/273#issuecomment-285038543 – Andrei