উত্তর:
ডিস-প্যাকেজগুলি হ'ল ডেবিয়ান-নির্দিষ্ট কনভেনশন যা উবুন্টুর মতো তার ডেরাইভেটিভগুলিতেও উপস্থিত। মডিউলগুলি ডিবি-প্যাকেজ ম্যানেজার থেকে এই স্থানে আসার পরে ডি-প্যাকেজগুলিতে ইনস্টল করা হয়:
/usr/lib/python2.7/dist-packages
যেহেতু easy_install
এবং pip
প্যাকেজ ম্যানেজার থেকে ইনস্টল করা হয়, তারা ডিস্ট-প্যাকেজগুলি ব্যবহার করে তবে তারা এখানে প্যাকেজ রাখে:
/usr/local/lib/python2.7/dist-packages
থেকে ডেবিয়ান পাইথন উইকি :
সাইট-প্যাকেজগুলির পরিবর্তে ডিস্ট-প্যাকেজ। ডেবিয়ান প্যাকেজগুলি থেকে ইনস্টল করা তৃতীয় পক্ষের পাইথন সফ্টওয়্যারটি সাইট-প্যাকেজগুলিতে নয়, ডিস্ট-প্যাকেজগুলিতে চলে যায়। এটি পাইথন সিস্টেমের মধ্যে দ্বন্দ্ব হ্রাস করতে এবং কোনও উত্স-উত্স পাইথন বিল্ড আপনি ম্যানুয়ালি ইনস্টল করতে পারেন।
এর অর্থ হ'ল আপনি যদি উত্স থেকে ম্যানুয়ালি পাইথন ইনস্টল করেন তবে এটি সাইট-প্যাকেজ ডিরেক্টরি ব্যবহার করে। এটি আপনাকে দুটি ইনস্টলেশন পৃথক রাখতে দেয়, বিশেষত যেহেতু দেবিয়ান এবং উবুন্টু অনেকগুলি সিস্টেম ইউটিলিটির জন্য পাইথনের সিস্টেম সংস্করণে নির্ভর করে।
dist-packages
ডেবিয়ান-নির্দিষ্ট ডিরেক্টরি যেখানে apt
এবং বন্ধুরা তাদের স্টাফ ইনস্টল করে এবং site-packages
এটি স্ট্যান্ডার্ড pip
ডিরেক্টরি।
সমস্যাটি হ'ল: একই প্যাকেজের বিভিন্ন সংস্করণ বিভিন্ন ডিরেক্টরিতে উপস্থিত হলে কী হয়?
সমস্যার আমার সমাধানটি এখানে dist-packages
একটি সিমিলিংক করা site-packages
:
for d in $(find $WORKON_HOME -type d -name dist-packages); do
pushd $d
cd ..
if test -d dist-packages/__pycache__; then
mv -v dist-packages/__pycache__/* site-packages/__pycache__/
rmdir -v dist-packages/__pycache__
fi
mv -v dist-packages/* site-packages/
rmdir -v dist-packages
ln -sv site-packages dist-packages
popd
done
(যদি আপনি gnu সরঞ্জাম ব্যবহার না করেন তবে -v
বিকল্পটি সরিয়ে দিন )।