Tôi đang gặp sự cố lạ khi cố cài đặt thư viện python bằng tệp setup.py của nó. khi tôi chạy tệp setup.py, tôi nhận được lỗi nhập, nói rằng ImportError: No module named Cython.Distutils
, nhưng tôi có mô-đun như vậy và tôi có thể nhập nó vào dòng lệnh python mà không gặp bất kỳ sự cố nào. Tại sao tôi có thể nhận được lỗi nhập này ??python ImportError: Cython.Distutils
Tôi đã xem xét khoảng vài chục trường hợp lỗi nhập, đọc về nhập và gói, v.v., nhưng dường như không thể tìm ra. Bây giờ tôi đang ở hai ngày rưỡi bị mắc kẹt vào thời điểm này, vì vậy tôi nghĩ đã đến lúc yêu cầu giúp đỡ!
Thư viện được gọi là zenlib. Tôi nghĩ rằng vấn đề có thể phải làm với thực tế là tôi đang sử dụng Enthought Python Distribution mà tôi đã cài đặt ngay trước đó, thay vì sử dụng Python2.7 đi kèm với Ubuntu 12.04.
More nền: Dưới đây là chính xác những gì tôi nhận được khi cố gắng chạy setup.py:
[email protected]:~/zenlib/src$ sudo python setup.py install
Traceback (most recent call last):
File "setup.py", line 4, in <module>
from Cython.Distutils import build_ext
ImportError: No module named Cython.Distutils
Nhưng nó hoạt động từ dòng lệnh:
>>> from Cython.Distutils import build_ext
>>>
>>> from fake.package import noexist
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named fake.package
Lưu ý việc nhập khẩu đầu tiên làm việc và thứ hai ném một lỗi. Hãy so sánh này để vài dòng đầu tiên của setup.py:
#from distutils.core import setup
from setuptools import setup
from distutils.extension import Extension
from Cython.Distutils import build_ext
import os.path
tôi chắc chắn rằng các phân phối Enthought Python và không phải là trăn đi kèm với Ubuntu là những gì được điều hành bởi mặc định bằng cách thêm vào trước biến $ PATH môi trường bash của tôi bằng cách chỉnh sửa ~/.bashrc
, thêm này như dòng cuối cùng:
export PATH=/usr/local/epd/bin:$PATH
và thực sự which python
spits ra /usr/local/epd/bin/python
... không biết những gì khác để cố gắng, tôi đã đi vào thư mục gói trang web của tôi, (/usr/local/epd/lib/python2.7/site-packages
) và cung cấp cho toàn quyền (r , w, x) đến Cython
, Distutils
, build_ext.py
và các tệp __init__.py
. Có lẽ ngớ ngẩn để thử, và nó không thay đổi gì cả.
Không thể nghĩ ra nên thử gì tiếp theo !? Bất kỳ ý tưởng?
Tôi không thể nghĩ ra bất cứ điều gì, nhưng những gì trong 'sys.path' của bạn ? –
hiện 'sudo python -c 'nhập Cython.Distutils'' làm việc? – jfs
experiemnt của tôi mang lại kết quả tương tự, tôi di một bản cài đặt Python 2.7 trên ubuntu 12-04, cython, numpy, scipy. Lỗi tương tự Traceback (cuộc gọi gần đây nhất cuối cùng): Tệp "setup.py", dòng 4, trong từ Cython.Distutils import build_ext ImportError: Không có mô-đun tên Cython.Distutils. Không có câu trả lời nào dường như đã giải quyết vấn đề này. Kính gửi các chuyên gia HELP !!! –
pythOnometrist