2013-01-29 48 views
12

Tôi đang cố cài đặt numba cho python nhưng sau khi làm theo hướng dẫn từ trang chủ, tôi nhận được lỗi này là trang extension_types không thể tìm thấy.Cài đặt numba cho python

Tôi rất cảm kích nếu ai đó biết tôi đang làm gì sai hoặc nếu tôi bỏ lỡ thứ gì đó mà tôi nên cài đặt.

Cảm ơn bạn rất nhiều trước.

Python 2.7.2+ (default, Jul 20 2012, 22:15:08) 
Type "copyright", "credits" or "license" for more information. 

IPython 0.10.2 -- An enhanced Interactive Python. 
?   -> Introduction and overview of IPython's features. 
%quickref -> Quick reference. 
help  -> Python's own help system. 
object? -> Details about 'object'. ?object also works, ?? prints more. 

In [1]: import numba 
--------------------------------------------------------------------------- 
ImportError        Traceback (most recent call last) 

/home/mijc/Downloads/numba/<ipython console> in <module>() 

/home/mijc/Downloads/numba/numba/__init__.py in <module>() 
     2 # type inferer 

     3 from numba.special import * 
----> 4 from numba import module_type_inference 
     5 
     6 import os 

/home/mijc/Downloads/numba/numba/module_type_inference.py in <module>() 
     6 from numba import * 
     7 from numba.minivect import minitypes 
----> 8 from numba import typesystem, symtab 
     9 
    10 import numpy.random 

/home/mijc/Downloads/numba/numba/typesystem/__init__.py in <module>() 
     2 from exttypes import * 
     3 from closuretypes import * 
     4 from ssatypes import * 
     5 from templatetypes import * 
     6 from typemapper import * 

/home/mijc/Downloads/numba/numba/typesystem/basetypes.py in <module>() 
     6 
     7 import numba 
----> 8 from numba import extension_types, error 
     9 from numba.minivect.minitypes import * 
    10 from numba.minivect.minitypes import map_dtype 

ImportError: cannot import name extension_types 

EDIT: Tôi đã cài đặt numba qua:

git clone https://github.com/numba/numba.git 
cd numba 
python setup.py install 

Khi tôi cố gắng để cài đặt nó thông qua pip, tôi nhận được lỗi sau:

pip install numba --upgrade 
Downloading/unpacking numba 
    Downloading numba-0.5.0.tar.gz (333Kb): 333Kb downloaded 
    Running setup.py egg_info for package numba 
    Traceback (most recent call last): 
     File "<string>", line 14, in <module> 
     File "/home/mijc/Downloads/numba/build/numba/setup.py", line 90, in <module> 
     cython_gdb=True), 
     File "/usr/local/lib/python2.7/dist-packages/Cython/Distutils/extension.py", line 108, in __init__ 
     **kw) 
    TypeError: unbound method __init__() must be called with Extension instance as first argument (got Extension instance instead) 
    Complete output from command python setup.py egg_info: 
    Traceback (most recent call last): 

    File "<string>", line 14, in <module> 

    File "/home/mijc/Downloads/numba/build/numba/setup.py", line 90, in <module> 

    cython_gdb=True), 

    File "/usr/local/lib/python2.7/dist-packages/Cython/Distutils/extension.py", line 108, in __init__ 

    **kw) 

TypeError: unbound method __init__() must be called with Extension instance as first argument (got Extension instance instead) 

---------------------------------------- 
Command python setup.py egg_info failed with error code 1 
+0

Bạn đã cài đặt numba như thế nào? Tôi không gặp khó khăn khi gửi nó ở đây: http://stackoverflow.com/questions/14527364/how-do-you-install-the-blaze-module-continuum-analytics-in-python/14527365#14527365 – BenDundee

+0

%% Tôi đã sử dụng pip. Tôi đã cài đặt Cython, llvmpy, meta và sau đó là tê tê. Chỉnh sửa: Sai, tôi thực sự không. Tôi có một repo git và cài đặt cái đó. Khi tôi cố gắng cài đặt nó qua pip tôi nhận được một lỗi. – mijc

+0

Dường như các lỗi đến từ cùng một địa điểm? Bạn có chạy thử nghiệm khi bạn cài đặt không? 'python setup.py test', tôi nghĩ vậy? – BenDundee

Trả lời

0

Tạo một môi trường ảo mới với virtualenv và cài đặt tất cả các thành phần cần thiết theo thứ tự được đưa ra trong hướng dẫn cài đặt trong môi trường này.

5

Tôi đã gặp vấn đề tương tự và đối với tôi giải pháp đã được nâng cấp distribute thành 0,6.45.

3

Tôi thấy câu hỏi này hơi cũ, nhưng tôi sẽ đặt kinh nghiệm của mình ở đây trong trường hợp nó giúp người khác googling. Giải pháp đơn giản nhất cho tôi là cài đặt bản phân phối Anaconda: https://store.continuum.io/ Lưu ý rằng có một phiên bản "rất tự do" để sử dụng chung, và một phiên bản học thuật tốt cho ... tốt, sử dụng học tập. :)

Numba thực sự được hỗ trợ bởi những người liên tục, ít nhất theo một trong số tutorials của họ. Tôi đã cài đặt nó và bây giờ chỉ mới bắt đầu chơi xung quanh với điều này. Tôi đã thích nó cho đến nay (mặc dù đã có một số rắc rối nhỏ nhận được nó để chơi tốt đẹp với một số mô-đun Cython tôi đã tạo ra trước đây). Nếu bạn đi theo tuyến đường Continuum, chúng có phần nào bị ẩn blog Tôi thấy hữu ích (liên kết trên trang chính nằm trong "Công ty", đây không phải là nơi đầu tiên tôi nhìn). Kiểm tra những thứ của họ được gắn thẻ "Numba;" có những ví dụ ở đó.

Lý do bí mật khác của tôi khi sử dụng Numba qua Anaconda: vì chúng có vẻ tương đối mới, tôi cho rằng chúng có thể rất "trên đầu" giải quyết các vấn đề hoặc vấn đề khiến Numba làm việc cho bạn trong bản phân phối của họ - muốn xây dựng một tên tốt và sản phẩm và tất cả những điều đó. Đây là, tất nhiên, chỉ là suy đoán thuần túy về phía tôi.

Nhược điểm duy nhất: không bao gồm Picloud trong Anaconda. Tôi đã sử dụng khá nhiều trong quá khứ, vì vậy đây là điều đáng thất vọng. Nó chỉ có nghĩa là một công việc nhiều hơn cho bản thân mình, nhưng không làm việc là tốt đẹp :)

Lưu ý: Tôi không liên kết với Continuum cả. Tôi chỉ ngạc nhiên với sản phẩm của họ cho đến nay.

4

Tôi hy vọng bạn đang sử dụng Linux và bạn đã cài đặt pip. Trên Linux Debian, tôi có thể dễ dàng cài đặt numba bằng lệnh sau:

sudo apt-get install build-essential 
sudo apt-get install llvm 
pip install llvmpy 
pip install cython 
pip install numba 

Sau đó, bạn đã làm xong!

+0

tôi nhận được lỗi sau từ: * pip cài đặt llvmpy * Thu llvmpy Sử dụng cache llvmpy-0.12.7.tar.gz đầu ra Complete từ lệnh python setup.py egg_info: Lỗi : không thể gọi ['llvm-config', '--version'] Thử thiết lập LLVM_CONFIG_PATH =/path/to/llvm-config Lưu ý: Tôi đã cài đặt llvm –

0

Làm việc trên cửa sổ tôi thêm cùng một vấn đề i cài đặt Miniconda thực hiện

conda install numba 

này cài đặt một thông dịch viên python với tất cả các gói của numba sau đó tôi sao chép này gói để env thông dịch viên của tôi

Và bạn đã hoàn thành

Các vấn đề liên quan