পাইপ হ্যামব্রু পাইথন ২.7 ইনস্টলের কাজ করছে না


15

আমি হোমব্রিউ ব্যবহার করে অজগরটি ইনস্টল করেছি এবং আমি বাশ থেকে পাইপ চালাতে পারি না। আমি আমার / বাশ_প্রফাইলে সংশোধন করে / ইউএসআর / লোকাল / বিন / পাইথন এবং / ইউএসআর লোকাল / শেয়ার / পাইথনকে কোনও কাজে লাগাতে চেষ্টা করেছি।

যখন আমি ব্যাশ কমান্ডটি ব্যবহার করি:

find / -name 'pip'

আমি প্রাপ্ত ফলাফলগুলি হ'ল:

/Library/Python/2.7/site-packages/pip-1.5.6-py2.7.egg/pip
/Users/Ivan/Library/Caches/pip
/Users/Ivan/Library/Logs/pip
/usr/local/Cellar/python/2.7.9/libexec/pip
/usr/local/Cellar/python/2.7.9/libexec/pip/pip
/usr/local/lib/python2.7/site-packages/pip

যার কোনটিই মৃত্যুদণ্ড কার্যকরযোগ্য নয়।

পাইপ কার্যকর করার যোগ্য খুঁজে পাচ্ছি না বলে আমি আমার $ PATH কে কোথায় নির্দেশ করব তা সত্যই আমি জানি না। আমি যখন খুলি

/usr/local/lib/python2.7/site-packages/pip

অথবা

/usr/local/Cellar/python/2.7.9/libexec/pip/pip

আমি নিম্নলিখিত ফাইলগুলি খুঁজে পাই:

__init__.py         commands            operations
__init__.pyc        compat              pep425tags.py
__main__.py         download.py         pep425tags.pyc
__main__.pyc        download.pyc        req
_vendor             exceptions.py       status_codes.py
basecommand.py      exceptions.pyc      status_codes.pyc
basecommand.pyc     index.py            utils
baseparser.py       index.pyc           vcs
baseparser.pyc      locations.py        wheel.py
cmdoptions.py       locations.pyc       wheel.pyc
cmdoptions.pyc      models

যার কোনটিই মৃত্যুদণ্ড কার্যকরযোগ্য নয়।

আমি আমার চেয়ে আরও অভিজ্ঞতার সাথে যে কারও সাহায্যের প্রশংসা করব।

সম্পাদনা: আমি মার্কোর প্রস্তাবিত পদক্ষেপগুলি চেষ্টা করেছিলাম:

পদক্ষেপের ফলাফল এখানে:

  1. প্রতিধ্বনি $ PATH কয়েকটি ডিরেক্টরি দেখায়: / usr / স্থানীয় / বিন: / usr / স্থানীয় / mysql / বিন: / usr / বিন: / বিন: / usr / sbin: / sbin: / usr / স্থানীয় / বিন: / usr / texbin: / অপ্ট / ব্যবহারে X11 / বিন / usr / স্থানীয় / MySQL / বিন

  2. যা -a পাইথন প্রত্যাবর্তন করে: / usr / স্থানীয় / বিন / পাইথন / usr / স্থানীয় / বিন / পাইথন

কোনও পাইপ যার জন্য ফিরিয়ে দেওয়া হয় না

  1. পাইথনটি ফেরত দেয়: / usr / স্থানীয় / বিন / পাইথন

কোন পাইপের জন্য কিছুই ফিরিয়ে দেওয়া হয় না

  1. ls -l $ (যা পাইথন) একটি একক ডিরেক্টরি দেয়: lrwxr-xr-x 1 ইভান অ্যাডমিন 33 17 মে 08:59 / মার্কিন / স্থানীয় / বিন / পাইথন -> .. / সেলার / প্যাথন / 2.7.9/bin/ পাইথন

ls -l which (কোন পাইপ) আমি আমার মূল পোস্টে যে পাইথন ফাইলগুলি দেখিয়েছিলাম সেগুলি সহ বেশ কয়েকটি ফিরিয়ে দেয়

উত্তর:


19

সাধারণত, homebrewএকটি ইনস্টল formulaকরা হবে /usr/local/Cellar/formulaএবং তারপরে একটি লিঙ্ক স্থাপন করবে /usr/local/bin/formula

আপনার ইনস্টল করা সূত্রগুলি ব্যবহার করতে, আপনার /usr/local/binমধ্যে রয়েছে তা নিশ্চিত করুন $PATH$PATHটাইপ করে আপনার দেখান

echo $PATH

যদি /usr/local/binআপনার না $PATHথাকে তবে আপনার ~/.profileফাইলটির শেষে এই লাইনটি রাখুন ।

export PATH="/usr/local/bin:$PATH"

এখন, pythonsটাইপ করে আপনার ওএসএক্স এ কি পাওয়া যায় তা পরীক্ষা করুন:

which -a python

/usr/bin/(অ্যাপল পাইথন) এ একটি পাইথন পাওয়া উচিত এবং /usr/local/bin/এটিতে হোমব্রিউ পাইথন রয়েছে।

which python

আপনাকে দেখাবে, কোনটি অজগরটি প্রথমে আপনার পাওয়া যায় $PATH এবং যখন আপনি প্রার্থনা করেন তখন তা কার্যকর করা হবে python

যদি আপনি জানতে চান, এক্সিকিউটেবলটি কোথায়, টাইপ করে এটি দেখান

ls -l $(which python)

এটি এর মতো দেখতে পেল: lrwxr-xr-x 1 রুট চাকা 68 7 মাই 13:22 অজগর -> / মার্কিন / স্থানীয় / বিন / পাইথন

এটি pipপাশাপাশি কাজ করবে ।

আপনি যদি এই পদক্ষেপের ফলাফলগুলি দেখান তবে আমরা সম্ভবত আপনাকে আরও সহজভাবে সহায়তা করতে পারি।

-- হালনাগাদ --

আপনি /usr/local/bin/pythonলিঙ্ক করেছেন /usr/local/Cellar/python/2.7.9/bin/python। -> brew install pythonকাজ করেছে।

pipটাইপ করে ইনস্টল করা থাকলে শো

brew list python | grep pip

তোমার দেখা উচিত

/usr/local/Cellar/python/2.7.9/bin/pip

যদি না হয়, চেক করুন, লিঙ্কগুলি আছে কিনা, যা সম্পন্ন হয় না brew install। আপনাকে এরকম কিছু বলেছি:

"Error: The `brew link` step did not complete successfully
The formula built, but is not symlinked into /usr/local"

লিঙ্কটি জোর করে এবং সমস্ত বিবাদমান ফাইল ওভাররাইট করতে:

brew link --overwrite python

মুছে ফেলা হবে এমন সমস্ত ফাইলের তালিকা করতে:

brew link --overwrite --dry-run python

** কোনও মানক অ্যাপল নয় /usr/bin/python**

থেকে লিঙ্ক /usr/local/Cellar/python/2.7.9/bin/pythonথেকে/usr/bin/python

ln -s /usr/local/Cellar/python/2.7.9/bin/python /usr/bin/python

এটি শুরু হওয়া সমস্ত অজগর স্ক্রিপ্টগুলির জন্য এটি প্রয়োজনীয় #!/usr/bin/python। স্পেশালিটি easy_installব্যর্থ হবে, লিঙ্ক না থাকলে।

এখন, আপনি চালাতে সক্ষম

easy_install pip

আশা করি, আপনি অগ্রগতি করছেন


মার্কো, আপনার উত্তরের জন্য ধন্যবাদ! দয়া করে ফলাফলগুলির জন্য আমার আসল প্রশ্নটি পদক্ষেপগুলিতে দেখুন - আমি
এগুলিতে

@ ইউংপাডাওনের কাছে মনে হচ্ছে আপনার কাছে অ্যাপল স্ট্যান্ডার্ড নেই /usr/bin/python। এটি ভাল নয়, কারণ অনেক পাইথন স্ক্রিপ্ট শুরু হয় #!/usr/bin/python। অজগর না থাকলে আপনি নিজের মতো ত্রুটি বার্তা পান। ব্যবহার brew link --dry-run pythonকরার সময় আপনার লিঙ্কগুলিতে কী পরিবর্তন হবে তা যাচাই করতে ব্যবহার করুন brew link --overwrite python। আমরা আপনার পাইপটি চালিয়ে যাব ;-)
মার্কো এম। ভন হেগেন

brew link --overwrite --dry-run pythonকোন ফাইলগুলি ওভাররাইট করা হবে তা দেখতে ব্যবহার করুন ।
মার্কো এম ভন হেগেন

1
আমি আপনার উত্তরটিকে টিক দিয়েছি কারণ এটি আমাকে সঠিক পথে নিয়ে গেছে, তবে শেষ পর্যন্ত এটি ছিল অনুমতি সংক্রান্ত সমস্যা। ইন্সটল করার পরে আমি একটি Warning: The post-install step did not complete successfully You can try again using brew postinstall python. I tried the বারু পোস্টইনস্টল পাইথোন` কমান্ড পেয়েছি এবং এটি আমাকে কয়েকটি ফাইলের দিকে নিয়ে যায় যা আমি ডেকেছি এমন অ্যাক্সেস আমার কাছে নেই। এখন আমি পাইপ ব্যবহার করতে পারি! আবার ধন্যবাদ
ইয়ংপাদওয়ান

1
আমার ক্ষেত্রে সমস্যা হয়েছে The post-install step did not complete successfullyকারণে error: could not delete '/usr/local/lib/python2.7/site-packages/pip/__init__.py': Permission denied। ম্যানুয়ালি সেই ফাইলটি মোছা এবং তারপরে brew postinstall pythonআবার চালানো এটিকে সংশোধন করে।
ডেভিড পার্স হাউস

5

যদি ব্রিউ আপনার পাইথন ইনস্টল পরিচালনা করে থাকে এবং পাইপ আর সিমলিঙ্কযুক্ত না হয় (যেমন আপনি "কোন পাইপ" টাইপ করেন এবং কোনও ফল পান না) আপনার হোম ডিরেক্টরি থেকে এটি চেষ্টা করুন:

brew unlink python && brew link python

পুরানো পদ্ধতিটি আর কাজ করে কিনা তা নিশ্চিত নয় (এটি আমার মেশিনে নেই)।

এখন এটি নিশ্চিত করুন যে এটি আপনার ২.7 ইনস্টলেশনটির সাথে প্রকৃতপক্ষে নির্দেশ করে pip --version(এটি ডিরেক্টরি আউটপুটটিতে পাইথন প্রধান সংস্করণটি তালিকাভুক্ত করবে)।


4

মূল প্রশ্নের মূল উত্তর নয়, তবে যে কেউ যদি এখানেই শেষ হয় কারণ তাদের হোমব্রিউ ইনস্টল করা python/pipআর কাজ করছে না (যেমন pythonসিস্টেম অজগরটির দিকে ইঙ্গিত করে এবং pipএটি পাওয়া যায় না) তবে এর কারণটি সম্ভবত সাম্প্রতিক (গ্রীষ্ম 2017) পরিবর্তন হতে পারে উপায় হোমব্রিউ ইনস্টল করে এবং অজগরকে সংযুক্ত করে।

সমাধানটি নিম্নলিখিত ~/.bash_profileএবং / অথবাগুলিতে অন্তর্ভুক্ত করা হয় ~/.zshrc:

export PATH="$(brew --prefix)/opt/python/libexec/bin:$PATH"

এটি pythonপাইথনের ব্রিউ সংস্করণটিকে নির্দেশ করবে এবং আপনাকে দেবে pip। আরও তথ্যের জন্য brew info pythonএবং অধীনে https://github.com/Homebrew/homebrew-core/issues/15746 এর অধীনে ক্যাভ্যাটাস বিভাগটি দেখুন


2

ডিফল্টরূপে Homebrew মাধ্যমে পিপ প্রদান করে: brew install python। তবে এরপরে আপনার ম্যাকে দুটি পাইথন ইনস্টল হবে, আপনি বিকল্পভাবে এটির মাধ্যমে এটি ইনস্টল করতে পারেন:

sudo easy_install pip

আপনার পাইথন প্যাকেজ সহ কোন ফাইল ইনস্টল করা হয়েছে তা যাচাই করতে, চেষ্টা করুন:

$ brew list python
/usr/local/Cellar/python/2.7.9/bin/pip
/usr/local/Cellar/python/2.7.9/bin/pip2
/usr/local/Cellar/python/2.7.9/bin/pip2.7
...

যা গঠিত হওয়া উচিত pip

ইনস্টলেশনের পরে আপনার সূত্রের ইনস্টল করা ফাইলগুলি এর দ্বারা সিমলিংক করা উচিত:

brew link python

যা সঠিক প্রতীকী লিঙ্কগুলি তৈরি করতে পারে (যেমন /usr/local/bin/pipআপনার দিকে নির্দেশ করা Cellar/python/2.?.?/bin/pip)

যদি আপনার অনুমতির সমস্যা হয় তবে আপনি এটির মাধ্যমে এটি ঠিক করতে পারেন:

sudo chgrp -R admin /usr/local /Library/Caches/Homebrew
sudo chmod -R g+w /usr/local /Library/Caches/Homebrew

এবং নিশ্চিত হয়ে নিন যে আপনার ব্যবহারকারী প্রশাসক গোষ্ঠীতে ( id -Gn $USER)।

অনুমতিগুলি ঠিক করার পরে, কমান্ড ব্যবহার করার sudoসময় ব্যবহার করবেন না brew

তারপরে এটিকে আবার লিঙ্ক করুন:

brew unlink python && brew link python

শুকনো-রান পরীক্ষা করতে, লিঙ্কে লিঙ্কযুক্ত brew link -n pythonফাইলগুলির লিঙ্ক দেখতে লিঙ্ক এবং চালান:brew

লিঙ্কিং সফল হওয়ার পরে, আপনার PATH সিস্টেমের ভেরিয়েবলটি রয়েছে কিনা তা নিশ্চিত /usr/localকরুন:

export PATH=/usr/local/sbin:/usr/local/bin:$PATH

আপনার ~/.bashrcফাইল

যদি সফল হয় তবে আপনার pipএখনই কাজ করা উচিত।


আপনার উত্তর কেনার্বের জন্য ধন্যবাদ! সমস্যার অংশ হ'ল ইজি_ইনস্টল আমার পক্ষেও কাজ করে না। ব্যাশে আমি পেয়েছি: -বাশ: / ইউএসআর / বিন / ইজিইনস্টল: / ইউএসআর / বিন / পাইথন: খারাপ দোভাষী: এ জাতীয় কোনও ফাইল বা ডিরেক্টরি নেই
ইয়ংপ্যাডওয়ান

এর অর্থ হল আপনি /usr/bin/pythonইনস্টল করেন নি (যা সাধারণত ওএস এক্স সহ সরবরাহ করা উচিত)। সুতরাং দয়া করে প্রস্তাবিত হিসাবে চেষ্টা করুন, যা:, brew install python && brew link pythonতারপরে /usr/local/binআপনার যুক্ত করুন PATH
কেনোরব

আমি মনে করি না যে brew install python && brew link pythonএটি অজগরটিকে puttingুকিয়ে দিচ্ছে /usr/bin। আমি এটি দেখতে পাচ্ছি usr/local/bin, তবে আমি সেখানে পাইপ দেওয়ার জন্য সিমলিংকটি দেখছি না। অজগরটিকে আমি লিঙ্কযুক্ত ও সংযুক্ত করেছি এবং কিছুই পরিবর্তন করে না। মনে হচ্ছে ব্রিউ ইনস্টল এবং লিঙ্কটি যেখানে জিনিসগুলি
লাগায়

@ ইউংপাডাওয়ান এর brewসাথে কিছুই করেন না /usr/bin, তবে /usr/local/bin। চেষ্টা করুন: brew unlink pythonএবং ড্রাই-রান: brew link -n pythonলিঙ্ক হওয়া উচিত এমন সমস্ত ফাইলের তালিকা করতে এবং pipসেখানে আছে কিনা তা পরীক্ষা করতে । যদি হ্যাঁ, আবার চালাও -n
কেনোরব

ধন্যবাদ কেনোরব, আমি একটি সমাধান খুঁজে পেয়েছি। শেষ পর্যন্ত অনুমতিগুলির কারণে এটি একটি ত্রুটিযুক্ত ইনস্টল হয়েছিল। আমি কয়েকটি ফাইলের অনুমতিগুলি সংশোধন করেছি যা সংশ্লেষের সাথে বিরোধী ছিল এবং পুনরায় ইনস্টলেশনটি চালিয়েছে এবং এখন সবকিছু ঠিকঠাক কাজ করে। উপরের প্রশ্নের মন্তব্যে আরও বিশদ রয়েছে। আপনার উত্তরের জন্য আবারও ধন্যবাদ, আমাকে সমাধানে আনতে এটি সত্যিই সহায়ক ছিল।
ইয়ংপাদওয়ান
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.