পিপ সহ নির্দিষ্ট প্যাকেজ সংস্করণ ইনস্টল করা


1310

আমি মাইএসকিউএল_পিথন অ্যাডাপ্টারের 1.2.2 সংস্করণ ইনস্টল করার চেষ্টা করছি, --no-site-packagesবিকল্পটি দিয়ে তৈরি একটি নতুন ভার্চুয়ালেনভ ব্যবহার করে । পাইপিতে প্রদর্শিত বর্তমান সংস্করণটি 1.2.3 । পুরানো সংস্করণ ইনস্টল করার কোন উপায় আছে? আমি একটি নিবন্ধ পেয়েছি যা জানিয়েছে যে এটি করা উচিত:

pip install MySQL_python==1.2.2

ইনস্টল থাকা অবস্থায়, এটি এখনও MySQL_python-1.2.3-py2.6.egg-infoপ্যাকেজ প্যাকেজে প্রদর্শিত হয়। এটি কি এই প্যাকেজটির জন্য নির্দিষ্ট সমস্যা, বা আমি কিছু ভুল করছি?


16
ইঙ্গিতটির জন্য ধন্যবাদ, এটি আমার জন্য ওপেনপেক্সল এর একটি পুরানো সংস্করণ ইনস্টল করার জন্য কাজ করেছিলpip install MySQL_python==1.8.9
টিম

4
হ্যাঁ, এটি pip install -Iv pandas==0.12.0
পান্ডার

1
আমার জন্যও কাজ করেছেন: পিপ ইনস্টল xvfbwrapper == 0.2.4
অমিতডট্ট

উত্তর:


892

টি এল; ডিআর:

  • pip install -Iv(অর্থাত্ pip install -Iv MySQL_python==1.2.2)

প্রথমত, আপনি যা করতে চেষ্টা করছেন তা নিয়ে দুটি সমস্যা দেখছি। যেহেতু আপনার ইতিমধ্যে একটি ইনস্টল সংস্করণ রয়েছে তাই আপনার বর্তমান চালকটি আনইনস্টল করা উচিত বা ব্যবহার করা উচিতpip install -I MySQL_python==1.2.2

তবে, আপনি শীঘ্রই খুঁজে পাবেন যে এটি কাজ করে না। আপনি যদি pip install -Iv MySQL_python==1.2.2পাইপের ইনস্টলেশন লগটি লক্ষ্য করেন বা আপনি এটি করেন তবে আপনি দেখতে পাবেন যে পাইপিআই ইউআরএল লিঙ্কটি মাইএসকিউএল_পিথন v1.2.2 এর জন্য কাজ করে না। আপনি এটি এখানে যাচাই করতে পারেন: http://pypi.python.org/pypi/MySQL-python/1.2.2

ডাউনলোড লিঙ্ক 404 এবং ফালব্যাক ইউআরএল লিঙ্কগুলি সোর্সফোর্জ ডট নেট এর সাম্প্রতিক আপগ্রেড এবং পাইপিআই এর বাসি URL এর কারণে অসীম পুনরায় নির্দেশনা দিচ্ছে।

ড্রাইভারটি সঠিকভাবে ইনস্টল করতে, আপনি এই পদক্ষেপগুলি অনুসরণ করতে পারেন:

pip uninstall MySQL_python
pip install -Iv http://sourceforge.net/projects/mysql-python/files/mysql-python/1.2.2/MySQL-python-1.2.2.tar.gz/download

1
একাধিক সংস্করণ থাকলেও কোনও সমস্যা হওয়া উচিত নয়, এটি প্রতিটি সংস্করণের জন্য নতুন ফোল্ডার তৈরি করা এবং .pth ফাইল ব্যবহার করার বিষয়।
জোচেন রিটজেল

3
এটি সঠিক সংস্করণ ইনস্টল করে তাই এই প্রশ্নের উত্তর - আপনার সহায়তার জন্য ধন্যবাদ। এখন ভিন্ন ইস্যুতে আঘাত করা: "ত্রুটি: কমান্ড '/usr/bin/gcc-4.2' '_mysql' এক্সটেনশান নির্মাণের সময় প্রস্থান স্থিতি 1 সহ ব্যর্থ হয়েছে। আমি জানি যে আমার কাছে জিসিসি রয়েছে এবং মাইএসকিউএল_পিথন 1.2.3.3-র ইনস্টলটি সুচারুভাবে চলে। অন্যরা কি এই সমস্যাটি বিশেষত ১.২.২ সহ দেখেছেন?
জো

অন্য একটি প্রশ্ন করুন দয়া করে এবং ত্রুটি বার্তা পোস্ট করুন যা আপনি পাইপ থেকে পাচ্ছেন।
মাহমুদ আবদেলকদারের

2
অবশ্যই - লিঙ্কটি এখানে: stackoverflow.com/questions/5226945/…
জো

4
কৌতূহল যে আপনি ইতিমধ্যে বিদ্যমান ইনস্টলেশনটি সরিয়ে দিলে আপনি কেন -I বিকল্পটি ব্যবহার করেন - আপনি কি সে সম্পর্কে কিছু বিশদ দিতে পারেন?
জো

509

এমনকি আপনি pip installকমান্ড সহ একটি সংস্করণ পরিসরও ব্যবহার করতে পারেন । এটার মতো কিছু:

pip install 'stevedore>=1.3.0,<1.4.0'

এবং যদি প্যাকেজটি ইতিমধ্যে ইনস্টল করা থাকে এবং আপনি এটির --force-reinstallমতো এটি ডাউনগ্রেড করতে চান :

pip install 'stevedore>=1.3.0,<1.4.0' --force-reinstall

128
উদাহরণস্বরূপ: $ pip install 'xkcdpass==1.2.5' --force-reinstall
jschank

1
পারফেক্ট! উবুন্টো 15.04 এ চলেছিল এবং এটি (স্বয়ংক্রিয়ভাবে) নির্দিষ্ট সংস্করণটির সাথে একটি বিদ্যমান লাইব্রেরি প্রতিস্থাপন করে। আমার সব সমস্যার সমাধান!
zevij

2
কেবলমাত্র পাইথন 2 এর জন্য আমাকে ডাবল উক্তি ব্যবহার করতে হয়েছিল "
প্রধানমন্ত্রী_আকাশাসিক

6
@ হ্যান্ডোফসি'থুহলু আমি মনে করি আমাদের উইন্ডোজের জন্য ডাবল কোট ব্যবহার করতে হবে অজগর 2 নয়
স্মার্টমনোজ

3
উইন্ডোজে ডাবল কোট ব্যবহার করুন: পিপ ইনস্টল করুন "স্টিভডোর> = 1.3.0, <1.4.0"
jmng

139

এই পোস্টে পরামর্শ হিসাবে একটি উপায় হ'ল সংস্করণটি উল্লেখ pipকরা উচিত:

pip install -Iv MySQL_python==1.2.2

অর্থাত্ ==কেবলমাত্র সেই সংস্করণটি ইনস্টল করতে সংস্করণ নম্বরটি ব্যবহার করুন এবং উল্লেখ করুন। -I, --ignore-installedইতিমধ্যে ইনস্টল করা প্যাকেজগুলি উপেক্ষা করে।


1
সতর্ক থাকুন! আমার অভিজ্ঞতা ছিল যে এটি একে অপরের পাশে বিভিন্ন সংস্করণ ইনস্টল করেছে ! আকর্ষণীয়ভাবে, pip listএটি সম্পর্কে অবগত ছিল না, তবে conda listছিল (এবং বিভিন্ন প্যাকেজ সংস্করণ প্রদর্শন করবে)। এটি পাইচার্মকেও পুরোপুরি বিভ্রান্ত করেছিল
লিওনেল ট্রেবুচন

66

এটি প্রথমবার, একটি আপগ্রেড বা ডাউনগ্রেড ব্যবহার কিনা তা নির্দিষ্ট পাইথন প্যাকেজ সংস্করণ ইনস্টল করতে:

pip install --force-reinstall MySQL_python==1.2.4

মাইএসকিউএল_পিথন সংস্করণ 1.2.2 উপলভ্য নয় তাই আমি একটি ভিন্ন সংস্করণ ব্যবহার করেছি। একটি সূচি থেকে সমস্ত উপলব্ধ প্যাকেজ সংস্করণ দেখতে সংস্করণটি বাদ দিন:

pip install MySQL_python==

4
পিপ 10.0.1 সহ এটিই একমাত্র কার্যকরী সমাধান। "-I" বিকল্পটি পূর্ববর্তী সংস্করণটি পুনরায় ইনস্টল করে।
ফেডফ্রান্সনি

38

আমি বিশ্বাস করি যে আপনার যদি ইতিমধ্যে এটি প্যাকেজ ইনস্টল করা থাকে তবে পাইপ এটি অন্য সংস্করণে ওভাররাইট করবে না। -Iপূর্ববর্তী সংস্করণ উপেক্ষা করতে ব্যবহার করুন ।


1
আমার এটি ইনস্টল করা নেই - --no-সাইট-প্যাকেজ বিকল্পের সাহায্যে তৈরি করা একটি নতুন ভার্চুয়ালেনভ ব্যবহার করে
জো

2
ঠিক আছে, সুতরাং আপনি সংস্করণ 1.2.2 জিজ্ঞাসা করুন এবং এটি এখনও 1.2.3 ইনস্টল করে, আর কিছুই ইনস্টল করা হয়নি? আপনার ব্যবহৃত সিনট্যাক্সটি নির্দিষ্ট সংস্করণ পাওয়ার জন্য সঠিক।
দাপাওয়েট

"--no-সাইট-প্যাকেজ বিকল্পের সাহায্যে তৈরি করা একটি নতুন ভার্চুয়ালেনভ ব্যবহার করে"; আপনার পূর্বে ইনস্টল করা লাইব্রেরিগুলি দেখতে unset PYTHONPATHনা দেওয়ার জন্য আপনাকে কমান্ডটি দিয়ে এগিয়ে যাওয়ার প্রয়োজন হতে পারেpip
user5359531

17

কখনও কখনও, পূর্বে ইনস্টল করা সংস্করণটি ক্যাশে করা হয়।

~$ pip install pillow==5.2.0

এটি নিম্নলিখিতগুলি ফেরত দেয়:
প্রয়োজনীয়তাটি ইতিমধ্যে সন্তুষ্ট: বালিশ == 5.2.0 ইন / হোম / বুন্টু / অ্যানাকোন্ডা 3 / লিবি / পাইপথন ৩..6 / সাইট- প্যাকেজগুলি (৫.২.০)

এটিকে ওভাররাইট করতে আমরা -no এর সাথে --no-cache-dir ব্যবহার করতে পারি

~$ pip install --no-cache-dir -I pillow==5.2.0

5

যেহেতু এটি পাইপের 10 সংস্করণে প্রবর্তিত একটি পরিবর্তন হিসাবে দেখা গেছে, তাই আমি একটি সামঞ্জস্যপূর্ণ সংস্করণে ডাউনগ্রেড করেছি:

pip install 'pip<10' 

এই কমান্ডটি সংস্করণ 10 এর চেয়ে কম মডিউলটির একটি সংস্করণ ইনস্টল করতে পিপকে বলেছে এটি একটি ভাইরাসালেনভে করুন যাতে আপনার পাইথনের সাইট ইনস্টলেশনটি স্ক্রু না করে।


5

আমি সম্প্রতি যখন ব্যবহার করে একটি ইস্যু গাড়ীতে আঘাত pipএর -Iপতাকা যে আমি দলিল কোথাও তৈরি করতে চেয়েছিলাম:

-Iহবে নাএগিয়ে যাওয়ার আগে বিদ্যমান প্যাকেজটি আনইনস্টল ; এটি কেবল পুরানোটির উপরে এটি ইনস্টল করবে। এর অর্থ হ'ল সংস্করণগুলির মধ্যে মুছতে হবে এমন কোনও ফাইল পরিবর্তে সে জায়গায় রেখে দেওয়া হবে। এই ফাইলগুলি অন্য ইনস্টল করা মডিউলগুলির সাথে নামগুলি ভাগ করে নিলে এটি অদ্ভুত আচরণের কারণ হতে পারে।

উদাহরণস্বরূপ, যাক এর নামে একটি প্যাকেজ আছে package। যে কোনও একটি packageফাইলে তারা ব্যবহার করে import datetime। এখন, package@2.0.0এটি স্ট্যান্ডার্ড লাইব্রেরি datetimeমডিউলটিতে নির্দেশ করে তবে এতে package@3.0.0তারা একটি স্থানীয় datetime.pyস্ট্যান্ডার্ড লাইব্রেরি সংস্করণ (যে কারণেই হোক না কেন) প্রতিস্থাপন হিসাবে যুক্ত করেছিল ।

এখন বলি আমি চালাচ্ছি pip install package==3.0.0, তবে পরে বুঝতে পারি যে আমি আসলে সংস্করণ চাইছি 2.0.0। যদি আমি এখন চালানো pip install -I package==2.0.0, পুরাতন datetime.pyফাইল সরানো হবে না, তাই কোনো কলimport datetime ভুল মডিউল আমদানি করবে।

আমার ক্ষেত্রে এটি অদ্ভুত সিনট্যাক্স ত্রুটিগুলির সাথে প্রকাশ পেয়েছে কারণ প্যাকেজের নতুন সংস্করণে এমন একটি ফাইল যুক্ত হয়েছিল যা কেবল পাইথন 3 এর সাথে সামঞ্জস্যপূর্ণ ছিল এবং আমি যখন পাইথন 2 সমর্থন করার জন্য প্যাকেজ সংস্করণগুলি ডাউনগ্রেড করেছিলাম তখন আমি পাইথন -3-কেবলমাত্র মডিউলটি আমদানি করেই চলি।

এর ভিত্তিতে, আমি যুক্তি দিয়ে বলব যে -Iইনস্টল করা প্যাকেজ সংস্করণ আপডেট করার সময় পুরানো প্যাকেজটি আনইনস্টল করা সর্বদা ব্যবহারযোগ্য ।


2

এই নীচের কমান্ডটি আমার পক্ষে কাজ করেছে

পাইথন সংস্করণ - 2.7

প্যাকেজ - পাইথন-জেনকিনস

আদেশ - $ pip install 'python-jenkins>=1.1.1'


প্রিয় ডাউনভোটার, দয়া করে ন্যায়সঙ্গত করুন কেন এই উত্তরটি নিম্নমানযুক্ত?
তপন হেগদে

আমি নীচে নামি নি, তবে দেখতে পাচ্ছি যে এটি প্রশ্নের উত্তর দেয় না বা সমস্যা সমাধানের জন্য ওপি ব্যবহার করতে পারে এমন কোনও সহায়ক তথ্য সরবরাহ করে না।
TheAmigo

0

সংস্করণ সহ যে কোনও প্যাকেজ ইনস্টল করতে পারে এমন দুটি উপায় রয়েছে: - এ)। পাইপ ইনস্টল করুন -আইভি প্যাকেজ-নাম == সংস্করণ বি)। পিপ ইনস্টল-ভি প্যাকেজ-নাম == সংস্করণ

একটি জন্য

এখানে, আপনি যদি ইনস্টল করার সময় -আই বিকল্পটি ব্যবহার করেন (যখন আপনি জানেন না যে প্যাকেজটি ইতিমধ্যে ইনস্টল করা আছে কিনা) (যেমন 'পাইপ ইনস্টল -আইভি পাইরেডলাইন == ২।' বা কিছু), আপনি একটি নতুন ইনস্টল করবেন একই বিদ্যমান প্যাকেজের সাথে পৃথক প্যাকেজটির কিছু আলাদা সংস্করণ রয়েছে।

  1. প্রথমে, আপনি কোনও ভাঙা প্রয়োজনীয়তা যাচাই করতে চাইতে পারেন। পাইপ চেক

2. এবং তারপরে পিপ তালিকার মাধ্যমে ইতিমধ্যে ইনস্টল করা আছে তা দেখুন

৩. প্যাকেজগুলির তালিকায় নির্দিষ্ট সংস্করণ সহ যে প্যাকেজটি আপনি ইনস্টল করতে চান তা অন্তর্ভুক্ত থাকে তবে প্রথমে এই সংস্করণটির প্যাকেজটি আনইনস্টল করা ভাল বিকল্প হ'ল পিপ আনইনস্টল প্যাকেজ-নাম দ্বারা

4. এবং এখন আপনি একই সংস্করণটি নির্দিষ্ট সংস্করণ দিয়ে পুনরায় ইনস্টল করতে এগিয়ে যেতে পারেন, পিপ ইনস্টল -v প্যাকেজ-নাম == সংস্করণ দ্বারা পিপ ইনস্টল- ভি পাইরেডলাইন == ২। *


0

আপনি যদি সর্বশেষতম সংস্করণে আপডেট করতে চান এবং আপনি কী জানেন যে আপনি কী সর্বশেষতম সংস্করণটি টাইপ করতে পারেন।

পাইপ ইনস্টল MySQL_python - আপগ্রেড

এটি মাইএসকিউএল_পিথনটি সর্বশেষ সংস্করণ উপলভ্য করার জন্য আপডেট করবে, আপনি অন্য যে কোনও প্যাকেজ সংস্করণ ব্যবহার করতে পারেন।

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