পাইথন প্যাকেজটি ব্যবহারকারী-স্থানীয় ইনস্টল করার সহজ উপায় কী?


32

স্থানীয় পাইথন ইনস্টলেশনের জন্য আমি ভার্চুয়ালেনভের সাথে ডিল করতে চাই না , আমি PYTHONPATHপরিবেশগত পরিবর্তনশীলকে মোকাবেলা না করে স্থানীয়ভাবে কয়েকটি প্যাকেজ ইনস্টল করতে চাই, আমি কীভাবে এটি করব?


আপনি "মোকাবেলা" বলছেন যেন ভার্চুয়ালেনভ কোনও ঝামেলা। আমি ঠিক এর বিপরীতটি খুঁজে পেয়েছি। (সম্ভবত আপনি চান --system-site-packages?)
Andreas Klöckner

এটি হাইপোথটিকালি পোজ করা হয়েছিল :) ভ্যুচুয়ালেনভ দুর্দান্ত তবে এটি প্রতিটি ব্যবহারের ক্ষেত্রে খাপ খায় না।
অ্যারন আহমদিয়া

উত্তর:


48

পাইথন ( 2.6 এবং 3.0 হিসাবে ) এখন স্থানীয় ইনস্টলগুলির জন্য ~ / .local ডিরেক্টরি অনুসন্ধান করে, যা ইনস্টল করার জন্য প্রশাসনিক সুযোগ-সুবিধার প্রয়োজন হয় না, তাই আপনাকে কেবল আপনার ইনস্টলারটিকে সেই ডিরেক্টরিতে নির্দেশ করতে হবে।

আপনি যদি ইতিমধ্যে প্যাকেজটি ডাউনলোড করেন fooএবং ম্যানুয়ালি এটি ইনস্টল করতে চান তবে টাইপ করুন:

cd path/to/foo
python setup.py install --user

আপনি যদি Easy_install ব্যবহার করছেন এবং প্যাকেজটি ডাউনলোড এবং ইনস্টল করতে চান:

easy_install --prefix=$HOME/.local/ foo

রফিক দ্বারা আপডেট

pip install --user foo

নিম্নলিখিত উত্তরটি historicalতিহাসিক উদ্দেশ্যগুলির জন্য সরবরাহ করা হয়েছে: আপনি ডাউনলোড এবং ইনস্টল করার জন্য পিপ ব্যবহার করছেন তবে এটি একটু বেশি কাজ:

pip install --install-option="--prefix=$HOME/.local" foo

3
আপডেট: পিপ এখন একটি - ব্যবহারকারীর পতাকা সমর্থন করে: pip install --user SomePackage (ম্যানুয়ালটিতে লিঙ্ক) এটি ব্যবহার করে, সমস্ত
OS থেকে

5

যদিও আমি পাইথনকে ভাষা হিসাবে পছন্দ করি তবে পাইথন প্যাকেজ বিতরণ করা গোলযোগ mess পাইথনের সাথে পরিচিত নয় এমন লোকদের আমি সর্বদা খুঁজে পাই।

অ্যারন দ্বারা বর্ণিত হিসাবে ব্যবহারকারী-স্থানীয় ইনস্টলের পাশে (- ব্যবহারকারীর, বা - পূর্ববর্তী ব্যবহার করে), আরেকটি বিকল্প হ'ল ইজিবিল্ড ( http://hpcugent.github.com/easybuild/ )। পাইথন প্যাকেজগুলির জন্যই নয়, কোনও (বৈজ্ঞানিক) সফ্টওয়্যার প্যাকেজের জন্যও। ইজিবিল্ড একবার এর জন্য সমর্থন পেলে একটি সফ্টওয়্যার প্যাকেজ তৈরি এবং ইনস্টল করা মূলত একটি কমান্ড।

বর্তমানে সমর্থিত সফটওয়্যার প্যাকেজগুলির তালিকার জন্য https://github.com/hpcugent/easybuild/wiki/List-of-supported-software-packages দেখুন

দাবি অস্বীকার: আমি ইজিবিল্ডের বিকাশকারী।


2

@ অ্যারন: পরিবেশ পরিবর্তনশীল Y পাইথনপথটিতে স্থানীয় সাইট-প্যাকেজগুলির পথ যোগ করার বিষয়ে নিশ্চিত হন


এটি পাইথন ২.6 এবং পাইথন ৩.০ হিসাবে স্বয়ংক্রিয়ভাবে সাইটের পাথের অন্তর্ভুক্ত রয়েছে :)
অ্যারন আহমদিয়া

অপশনটি ব্যবহার না করে @ অ্যারোনআহমাদিয়া না --prefix
জেনস টিমারম্যান

@ জেনস টিম্মারম্যান - আপনি যখন পাইথন চালাচ্ছেন যে কোনও সময় মডিউলগুলি আমদানি করতে শুরু করার সময় পাইথন দেখায় এমন সাইটের পথটি। আপনি যখন পাইথন প্যাকেজ ইনস্টল করছেন তখন প্রদত্ত প্যাকেজটি কোথায় ইনস্টল করবেন তা উপসর্গ বিকল্পটি নির্দিষ্ট করে। দুটি সম্পূর্ণ পৃথক ধারণা।
অ্যারন আহমেদিয়া

@ অ্যারোনআহমদিয়া হ্যাঁ, আমার বক্তব্যটি হ'ল আপনি যখন ইজি_সিন্টল - প্রিফিক্স = / টিএমপি ব্যবহার করবেন তখন আপনার পাইথনপ্যাথ ভেরিয়েবলটিতে "/tmp/lib/pythonx.x/site-packages" যুক্ত করা দরকার বা এটি পাইথন দ্বারা বাছাই করা হবে না।
জেনস টিমারম্যান

@ অ্যারোনআহমদিয়া পেস্টবিন.
জেনস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.