2012-09-09 17 views
7

Tôi đang thiết lập trên một máy Mac mới và tôi đã hài hước cùng với việc cài đặt pip và một vài gói. Khi đột nhiên, mỗi lệnh pip Tôi muốn cố gắng chạy sẽ némpip cho "ImportError: Không có mô-đun tên setuptools" nhưng tôi có thể nhập các bộ cài đặt trong trình thông dịch python

Exception: 
Traceback (most recent call last): 
    File "/Library/Python/2.6/site-packages/pip-1.2.1-py2.6.egg/pip/basecommand.py", line 107, in main 
    status = self.run(options, args) 
    File "/Library/Python/2.6/site-packages/pip-1.2.1-py2.6.egg/pip/commands/install.py", line 248, in run 
    import setuptools 
ImportError: No module named setuptools 

tôi figured tôi đã vô tình xóa một thư mục hoặc một cái gì đó, vì vậy tôi cố gắng cài đặt lại setuptools, theo lời khuyên của other answers trên trang web này. Tôi đã tải xuống trứng setuptools từ here và chạy nó như một kịch bản lệnh shell. Got sản lượng này:

Processing setuptools-0.6c11-py2.7.egg 
Removing /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg 
Copying setuptools-0.6c11-py2.7.egg to /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages 
setuptools 0.6c11 is already the active version in easy-install.pth 
Installing easy_install script to /Library/Frameworks/Python.framework/Versions/2.7/bin 
Installing easy_install-2.7 script to /Library/Frameworks/Python.framework/Versions/2.7/bin 

Installed /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg 
Processing dependencies for setuptools==0.6c11 
Finished processing dependencies for setuptools==0.6c11 

Bây giờ, nếu tôi bắt đầu một phiên python tương tác, tôi có thể import setuptools mà không có lỗi, nhưng pip (và các kịch bản dòng lệnh khác) phàn nàn rằng nó không được cài đặt. Bất kỳ ý tưởng tại sao Python dường như tìm thấy nó, nhưng không phải là các kịch bản khác?

Nếu nó giúp, đây là những gì trong sys.path:

/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg 
/Library/Frameworks/Python.framework/Versions/2.7/lib/python27.zip 
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7 
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin 
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac 
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages 
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk 
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old 
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload 
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages 
+1

Lưu ý rằng lỗi pip của bạn hiển thị Python 2.6 trong dấu vết, nhưng phần còn lại đang sử dụng Python 2.7 Dòng trên cùng của tập lệnh pip cấp cao nhất của bạn trông như thế nào? – Keith

Trả lời

7

bạn pip dường như không có trong thỏa thuận với Python của bạn. Hãy so sánh:

File "/Library/Python/2.6/site-packages/pip-1.2.1-py2.6.egg/pip/basecommand.py", line 107, in main 

để

Installed /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg 

Nếu python2.7 có setuptools, sau đó bạn nên có

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

sẵn, trong trường hợp này

easy_install-2.7 pip 

nên cung cấp cho bạn pip-2.7.

+2

Tôi nhận ra vấn đề thực tế chỉ đơn giản là tôi cần khởi động lại sau khi cài đặt Python 2.7. Đôi khi không được làm sạch đúng cách khi tôi nâng cấp từ 2.6. Nhưng chỉ định 'easy_install' nào sẽ sử dụng cũng sẽ thực hiện thủ thuật. –