Tôi đã thử Arch Linux gần đây và vì tôi là một lập trình viên Python muốn cài đặt requestgói. Để làm như vậy tôi cần cài đặt piptrình quản lý gói Python bằng cách gọi
$ sudo easy_install pip
Tiếp theo tôi đã cài đặt gói yêu cầu với
$ sudo pip3 install requests
Nếu bây giờ tôi khởi động Python và nhập gói yêu cầu thì nội dung gói bị thiếu hoàn toàn. Thông thường nên có một loạt các lớp và chức năng.
Python 3.5.1 (default, Mar 3 2016, 09:29:07)
[GCC 5.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import requests
>>> dir(requests)
['__doc__', '__loader__', '__name__', '__package__', '__path__', '__spec__']
Vì vậy, tôi đã xem /usr/lib/python3.5/site-packagesthư mục chứa các gói Python đã cài đặt và phát hiện ra rằng requeststhư mục đó không có quyền đọc cho mọi người.
$ ls /usr/lib/python3.5/site-packages
drwxr-x--- 4 root root 4096 Mar 1 17:04 requests
drwxr-x--- 2 root root 4096 Mar 1 17:04 requests-2.13.0.dist-info
drwxr-xr-x 5 root root 4096 Apr 14 2016 setuptools
drwxr-xr-x 2 root root 4096 Apr 11 2016 setuptools-20.7.0-py3.5.egg-info
drwxr-xr-x 2 root root 4096 Oct 11 2015 six-1.10.
Có cách nào để cài đặt các gói Python mới trong Arch với các đặc quyền phù hợp không? Tôi đã sử dụng Debian trước đây và đã trải qua quy trình tương tự để cài đặt gói Python và chưa bao giờ phát hiện ra vấn đề này.
Có,
—
MrLeeh
sudo pacman -S python-requestshoạt động nhưng chỉ dành cho Python2. Tôi cũng đã thử pip3 installmà không có sudo nhưng ở đó tôi gặp lỗi.
python2-request nên là gói cho python2. Có vẻ như python2 là một phụ thuộc vào arch, nhưng không phụ thuộc vào debian. Nếu đó là một tùy chọn, hãy xóa pip3 và cài đặt lại với:
—
doriclazar
sudo pacman -S python-pipvà sau đó chạypip3 install requests
Tôi vừa thử cài đặt python-pip với
—
MrLeeh
sudo pacman -S python-pip. Tôi đã làm nó trên một máy ảo và xóa sạch nó trước khi tôi làm như vậy. Tuy nhiên, pip3 install requestskết quả hiện tại trong Distribution not foundLỗi : pkg_resources.DistributionNotFound: The 'pip==9.0.1' distribution was not found and is required by the application. Khi tôi sử dụng cũng vậy sudo pip3 install requests. Chuyện lạ.
Tôi đã phải cập nhật các gói của tôi với
—
MrLeeh
pacman -Syyu. Ngoài ra, tôi cần phải thiết lập quyền viết thủ công cho người dùng của mình để /usr/lib/python3.6/site-packagescó thể cài đặt pip. Không nó hoạt động. Nhưng bây giờ mọi người dùng đều có thể sử dụng cài đặt pip :( Trên cài đặt Debian chỉ có thể được thực hiện bằng sudo nhưng mọi người dùng đều có thể sử dụng các gói. Vì vậy, tôi tự hỏi mình có gì khác biệt ở đây.
sudo pacman -S python-requestshoặc với pip3: Không nênpip3 install requestschạy pip với root. Nếu bạn chạysudo python3ngay bây giờ, bạn sẽ có thể nhập các gói đã cài đặt vớisudo pip3 install,