मैं स्थानीय स्तर पर विश्व स्तर पर पाइप पैकेज कैसे स्थापित करूं?


101

मैं pip3 का उपयोग करके flake8 पैकेज स्थापित करने का प्रयास कर रहा हूं और ऐसा लगता है कि यह स्थापित करने से इंकार करता है क्योंकि पहले से ही एक स्थानीय स्थान पर स्थापित है।

मैं इसे विश्व स्तर पर (सिस्टम स्तर) स्थापित करने के लिए कैसे मजबूर कर सकता हूं?

pip3 install flake8
Requirement already satisfied (use --upgrade to upgrade): flake8 in ./.local/lib/python3.4/site-packages

कृपया ध्यान दें कि मैं एक सामान्य समाधान (जो डेबियन, ओएस एक्स शायद यहां तक ​​कि विंडोज पर काम करना चाहिए) को प्राथमिकता दूंगा, जिसे किसी भी मंच पर उपयोग किया जाना चाहिए ताकि मैं खुद को गंतव्य निर्दिष्ट नहीं करना चाहता।

कुछ अजीब कारण के लिए यह व्यवहार करता है जैसे कि मैंने पहले ही निर्दिष्ट --userकिया था जो मेरे मामले में मैंने नहीं किया था।

जिस तरह से मैं विश्व स्तर पर एक पैकेज स्थापित करने में सक्षम था, पहले इसे हटाने और इसके बाद इसे फिर से स्थापित करना था। किसी तरह ऐसा लगता है कि पाइप (8.1.1) स्थानीय स्तर पर मौजूद होने पर वैश्विक रूप से पैकेज स्थापित करने से इनकार करता है।

अस्वीकरण: प्रयोगों के दौरान किसी भी आभासी वातावरण का उपयोग या नुकसान नहीं किया गया था।


3
क्या आपने रूट उपयोगकर्ता या sudo से कोशिश की है?
मैटिनो

क्या आपने कोशिश की है pip install flake8 --upgrade?
मौरो बराल्डी

इसी तरह के मुद्दों से संबंधित w / आभासी वातावरण (वेनव) का उपयोग --system-site-packagesआपके वेनव में विश्व स्तर पर स्थापित पैकेजों को विरासत में लेने के लिए विकल्प का उपयोग करता है। देखें stackoverflow.com/a/61326709/4445175
Wlad

जवाबों:


144

आप ध्वज के sudoसाथ प्रयास क्यों नहीं करते H? यह काम कर जाना चाहिए।

sudo -H pip install flake8

एक नियमित sudo pip install flake8अपने घर निर्देशिका का उपयोग करने की कोशिश करेगा। -Hयह निर्देश देता है प्रणाली के घर निर्देशिका का उपयोग करने के लिए। Https://stackoverflow.com/a/43623102/ पर अधिक जानकारी


107
HHlobal के रूप में?
मैट

65
-Hमें के रूप में हे sudo, मेरे घर निर्देशिका का उपयोग बंद। H stackoverflow.com/a/43623102
nikhilweee

7
यह वास्तव में इसे विश्व स्तर पर स्थापित नहीं करता है, बल्कि इसके बजाय इसे उपयोगकर्ता की 'रूट' होम डायरेक्ट्री में
संग्रहीत

@nikhilweee मुझे समझ नहीं आया कि pip3 install ipythonजब virtualenv को निष्क्रिय किया जाता है तो यह कैसे अलग है , वे उसी site-packagesनिर्देशिका में स्थापित होते हैं ।
Iamfrancisyo

मेरे लिए @parsecpython यह ट्रिक करता है और संकुल को
/usr/local/lib/python3.8/dist-packages

8

शायद --force-reinstallकाम करेगा, नहीं --ignore-installedतो चाल चलनी चाहिए।


4

क्या आप उपयोग कर रहे हैं virtualenv? यदि हाँ, virtualenv निष्क्रिय करें। यदि आप उपयोग नहीं कर रहे हैं, तो यह पहले से ही व्यापक रूप से स्थापित है (सिस्टम स्तर)। पैकेज को अपग्रेड करने का प्रयास करें।

pip install flake8 --upgrade

3
बिल्कुल सच नहीं है।
अप्रैल को GMaster

2

मैं वास्तव में आपके मुद्दे को नहीं देखता हूं। विश्व स्तर पर कोई भी पैकेज है जो आपके python3 पथ के साइट पैकेज फ़ोल्डर में है।

यदि आप इसे स्थानीय स्तर पर उपयोग करना चाहते हैं, तो आपको एक virtualenv को कॉन्फ़िगर करना होगा और एक सक्रिय आभासी वातावरण के साथ संकुल को फिर से स्थापित करना होगा।


एक वेनव बनाते समय आप --system-site-packages .venv/devवैश्विक पैकेजों को प्राप्त करने के लिए उपयोग कर सकते हैं ताकि आपको प्रत्येक वेनव में उन्हें पुनः स्थापित न करना पड़े। यह उन पैकेजों के लिए समझ में आता है जो किसी भी परियोजना में उपयोग करना चाहते हैं, अर्थात काले, फ्लैके 8, पाइस्टेस्ट। उदाहरण:python -m venv --system-site-packages .venv/dev
Wlad

0

अजगर में पाइप स्थापना कहां होती है?

मैं एक विंडोज़ समाधान दूंगा जिसका मैं सामना कर रहा था और हल करने में कुछ समय लगा।

सबसे पहले, विंडोज़ में (मैं विंडोज को यहां ओएस के रूप में ले जाऊंगा), यदि आप करते हैं pip install <package_name>, तो यह विश्व स्तर पर डिफ़ॉल्ट रूप से स्थापित होगा ( यदि आपने वर्चुअल एनवायरमेंट को सक्रिय नहीं किया है )। एक बार जब आप एक आभासी वातावरण सक्रिय करते हैं और आप इसके अंदर होते हैं, तो सभी पाइप अधिष्ठापन उस आभासी वातावरण के अंदर होंगे।


पाइप उक्त पैकेजों को स्थापित कर रहा है, लेकिन मैं उनका उपयोग नहीं कर सकता ?

इस पाइप के लिए आपको चेतावनी दी जा सकती है कि पाइप निष्पादनयोग्य जैसे pip3.exe, pip.exeआपके पथ चर पर नहीं हैं। इसके लिए आप इस रास्ते को (आमतौर पर - C:\Users\<your_username>\AppData\Roaming\Programs\Python\) अपने पर्यावरण चर में जोड़ सकते हैं । इसके बाद अपना पुनः आरंभ करें cmd, और अब अपने स्थापित अजगर पैकेज का उपयोग करने का प्रयास करें। यह अब काम करना चाहिए।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.