2014-07-02 27 views
8

Tôi muốn thử sử dụng Flask với Python3. Tôi đã có Python 3.4 trên Ubuntu 14.04, mà được cho là tàu với pip bao gồm. Vì vậy, tôi đã cố gắngLàm thế nào để cài đặt Flask trên Python3 bằng pip?

pip3 install flask 

này kết thúc bằng:

Cleaning up... 
Command /usr/bin/python3 -c "import setuptools, tokenize;__file__='/tmp/pip_build_kramer65/flask/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-i98xjzea-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /tmp/pip_build_kramer65/flask 
Storing debug log for failure in /tmp/tmpqc3b2nu5 

Vì vậy, tôi đã cố gắng nhập khẩu nó, nhưng không có kết quả:

[email protected]:~/cxs$ python3 
Python 3.4.0 (default, Apr 11 2014, 13:05:11) 
[GCC 4.8.2] on linux 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import flask 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
ImportError: No module named 'flask' 

tôi có thể đương nhiên tải nó về và cài đặt sử dụng sudo python3 setup.py install nó theo cách đó, nhưng tôi muốn làm điều đó "cách tiêu chuẩn" để mọi thứ dễ dàng và tiêu chuẩn hơn để thiết lập trên các máy sản xuất.

Có ai biết cách tôi có thể nhập Flask bằng Python3 và pip không? Tất cả các mẹo đều được chào đón!

Nhật ký lỗi có sẵn trong http://pastebin.com/hd6LyVFP

+0

bài viết nội dung của '/ tmp/tmpqc3b2nu5' xin vui lòng. – msvalkon

+0

@msvalkon - Có khá nhiều nội dung, vì vậy tôi dán nó vào một con nhộng: http://pastebin.com/hd6LyVFP Mọi ý tưởng? – kramer65

Trả lời

15

Bạn có vẻ có vấn đề về quyền. Từ nhật ký bạn đã dán vào pastebin:

error: could not create '/usr/local/lib/python3.4/dist-packages/flask': Permission denied 

Điều này là do cố gắng cài đặt gói trên toàn cầu trừ khi bạn chỉ định một vị trí cài đặt nhất định. Nếu bạn muốn cài đặt ứng dụng này trên toàn cầu, bạn phải sử dụng sudo hoặc cài đặt với tư cách người dùng có đặc quyền.

Hãy thử như sau:

sudo pip3 install flask 

Hoặc chỉ định một thư mục nhất định:

pip install -t <path> flask 

Tuy nhiên, với phương pháp sau bạn sẽ phải luôn luôn tiêm đường dẫn đến sys.modules vì vậy tôi đề nghị bạn chỉ sử dụng sudo nếu bạn có thể.

Hoặc thậm chí thích hợp hơn, sử dụng virtualenv. Virtualenv cho phép bạn rất dễ dàng đóng gói ứng dụng của bạn cho sản xuất vì bạn chỉ có thể cài đặt các gói bạn cần và do đó bạn đã có gói tự động tách biệt. Tạo một requirements.txt sau đó đơn giản như pip freeze > requirements.txt. Hãy nhớ rằng nếu bạn kết thúc bằng virtualenv, bạn không được sử dụng sudo để cài đặt các gói vì chúng sẽ được cài đặt bên ngoài virtualenv.

+0

Làm thế nào ngu ngốc của tôi. Tôi nên đã thấy điều đó. Cảm ơn rất nhiều! – kramer65

0

Đối với phiên bản Python 3.6.4, có thể cài đặt Flask bằng cách thực hiện:

sudo pip3.6 install flask 
Các vấn đề liên quan