এনপিএম ইনস্টলের সময় অজগরটির আলাদা সংস্করণ কীভাবে ব্যবহার করবেন?


218

আমার কাছে ভিপিএস চলমান সেন্টোস ৫.৯ এবং ডিফল্ট পাইথন ২.৪.৩ ইনস্টল করার টার্মিনাল অ্যাক্সেস রয়েছে। আমি এই কমান্ডগুলির মাধ্যমে পাইথন ২.7.৩ ইনস্টল করেছি: (এর make altinstallপরিবর্তে আমি ব্যবহার করেছি make install)

wget http://www.python.org/ftp/python/2.7.3/Python-2.7.3.tgz
tar -xf Python-2.7.3.tgz
cd Python-2.7.3
./configure
make
make altinstall

তারপরে আমি এই কমান্ডগুলির মাধ্যমে উত্স থেকে নোড.জেএস ইনস্টল করেছি:

python2.7 ./configure
make
make install

সমস্যাটি হ'ল, যখন আমি npm installনোড.জেএস প্যাকেজটি ব্যবহার করি এবং ইনস্টল করার চেষ্টা করি যা পাইথন> ২.৪.৩ প্রয়োজন আমি এই ত্রুটিটি পেয়েছি:

gyp ERR! configure error
gyp ERR! stack Error: Python executable "python" is v2.4.3, which is not supported by gyp.
gyp ERR! stack You can pass the --python switch to point to Python >= v2.5.0 & < 3.0.0.
gyp ERR! stack     at failPythonVersion (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:125:14)
gyp ERR! stack     at /usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:114:9

কীভাবে আমি "পাইথন> = v2.5.0" - এ প্যাথন সুইচটি পাস করব ?


আমি একটি হ্যাক প্রস্তাব করব। আপনার শেলের অভ্যন্তরে এই অজগর সংস্করণটি কীভাবে রাখবেন এবং তারপরে শেলটি বন্ধ করার পরে সিস্টেমটি আগের অবস্থায় ফিরে আসবে
রাফি

@ রাফি এটি দুর্দান্ত, আপনি কীভাবে এটি করতে পারেন তা ব্যাখ্যা করতে পারেন? আমি সেন্টোতে কিছুটা নতুন!
নাসের তোরাবজাদে

আমি প্রায় কখনও সেন্টোস ব্যবহার করি নি। এটি অন্য কোনও লিনাক্স বিতরণের মতোই হওয়া উচিত। আমি অস্থায়ী পদ্ধতি সম্পর্কে বলছি, কারণ ওরফে স্থায়ী করা আপনার সিস্টেমের ক্ষতি করতে পারে। সুতরাং এটি করা উচিত নয়।
রাফি

@ রাফি ধন্যবাদ, আমি আপনার সমাধান যাচাই করব।
নাসের তোরাবজাদে

2
ওরফে পাইথন = / পথ / থেকে / অজগর যথেষ্ট ভাল হওয়া উচিত। তবে পরিবর্তনটি অস্থায়ী করার বিষয়ে সতর্ক থাকুন, স্থায়ী পরিবর্তনটি আপনার সিস্টেমে ক্ষতি করতে পারে
রাফি

উত্তর:


499

আপনি --pythonএনপিএম এর মত বিকল্প ব্যবহার করতে পারেন :

npm install --python=python2.7

বা এটি সর্বদা ব্যবহারের জন্য সেট করুন:

npm config set python python2.7

প্রয়োজনে এনপিএম নোড-জিপ-এ এই বিকল্পটি পাস করবে।

(দ্রষ্টব্য: আমিই সেই ব্যক্তি, যিনি গিথুবকে ডক্সে অন্তর্ভুক্ত করার জন্য একটি সমস্যা খুলেছিলেন, কারণ এটি সম্পর্কে অনেকগুলি প্রশ্ন ছিল;)


35
এটি গ্রহণযোগ্য উত্তর হওয়া উচিত। npm config set python python2.7হয় নির্ধারক সমাধান
আলেসান্দ্রো Pezzato

যদি পাইথন 2 এর কোনও সংস্করণ গ্রহণযোগ্য হয় তবে একটিটি npm install --python=python2কী ব্যবহার করতে পারে ?
Freedom_Ben

1
অবশ্যই, যদি python2আপনার AT PATH এ থাকে তবে তা ব্যবহার করুন,
যেকোন

5
জন্য pyenvপাইথন 3, আমি ব্যবহার করেছিnpm install --python=/usr/bin/python
আন্দ্রেই

11
হিসাবে আমি বিশ্বব্যাপী যেমন python3 আছে, আমিও python27 ব্যবহার করে সেট আপ করা প্রয়োজন:> এই npm কনফিগ সেট পাইথন সি: \ Python27 \ python.exe
ফ্রাঁসোয়া

54

এনপিএম ইনস্টল চালানোর আগে পাইথনটি অজগর 2.7 এ সেট করুন

লিনাক্স:

export PYTHON=python2.7

উইন্ডোজ:

set PYTHON=python2.7

4
exportপরিবেশের পরিবর্তনশীল সেট করতে ব্যবহৃত হয় এবং ভেরিয়েবলটি আপনার শেল এবং এর শিশু প্রক্রিয়াতে কাজ করে ..
Sandtears Kirisame

আমার নাকি এই? কারণ যদি আমার একজন কাজ করে তবে আমি উত্তর হিসাবে পোস্ট করব এবং
সেটিকে

@ ইরফি এটিতে কাজ করেছেন, আমি ভবিষ্যতের প্রয়োজনের জন্য আপনার পরামর্শটি সংরক্ষণ করেছি, ধন্যবাদ
নাসের তোরাবজাদে

7
set PYTHON=python2.7উইন্ডোজ ব্যবহার করুন
zacharyliu

1
এটি একটি খারাপ ধারণা যখন এটি প্রয়োজনীয় যে কোনও নির্দিষ্ট অজগর 3 পরিবেশ বোঝাই। পাইথন 2.7 কেবল এই ক্ষেত্রে এনপিএম এর জন্য ব্যবহৃত হয়, তাই এটি কেবল এনপিএমের জন্য সেট করুন এবং আপনি কী করছেন তা না জেনে আপনার পুরো শেল পরিবেশের জন্য নয়।
ohcibi

34

উইন্ডোজ ব্যবহারকারীদের জন্য এই জাতীয় কিছু কাজ করা উচিত:

PS C:\angular> npm install --python=C:\Python27\python.exe

7
এটি ব্যবহার করে গ্রহণযোগ্য উত্তরের সাথে একত্রিত করা যেতে পারে: npm config set python C:\Python27\python.exe- আমি সবেমাত্র এটি করেছি এবং এটি ভাল কাজ করেছে, যার অর্থ প্রতিবার আপনি কোনও কিছু ইনস্টল করতে চাইলে তা না করা।
নাথান রিডলি

7

ঠিক আছে, সুতরাং আপনি ইতিমধ্যে একটি সমাধান খুঁজে পেয়েছেন। আমার কাছে যা এতবার কার্যকর হয়েছে তা কেবল ভাগ করে নিতে চেয়েছি;

আমি setpy2ওরফে তৈরি করেছি যা আমাকে অজগর পরিবর্তন করতে সহায়তা করে।

alias setpy2="mkdir -p /tmp/bin; ln -s `which python2.7` /tmp/bin/python; export PATH=/tmp/bin:$PATH"

সম্পাদন setpy2করার আগে আপনাকে চালানো npm install। আপনি টার্মিনালটি ছেড়ে না দেওয়া পর্যন্ত স্যুইচ কার্যকর অবস্থায় থাকে, তারপরে pythonসিস্টেম ডিফল্টে আবার সেট করা থাকে।

আপনি এই কৌশলটি অন্য কোনও কমান্ড / সরঞ্জামের জন্যও ব্যবহার করতে পারেন।


@ নাসেরতোরবাজাদে কি আলিয়াসিং কাজ বা উত্তরের সমাধানটি সম্পাদন করেছে?
রাফি

@ রাফি কেবল ভবিষ্যতের প্রয়োজনের জন্য এটি সংরক্ষণ করেছে, আসলে এটি পরীক্ষার জন্য আসে নি! দুঃখিত!
নাসের তোরাবজাদে

@ নাসেরটোরবাজাদে আমি আসলে জিজ্ঞাসা করেছি পাইথন = পাইথন ২..7 যথেষ্ট ভাল, কারণ এটি আমার প্রস্তাবের চেয়ে মৃত সহজ সমাধান।
রাফি

@ রাফি হ্যাঁ, পাইথন = পাইথন 2.7 একটি কবজির মতো কাজ করেছে! :)
নাসের তোরাবজাদে

1

একবারে এই কাজটি দ্রুত ব্যবহারের জন্য, এনপিএম ইনস্টল করুন --python = "সি: y পাইথন 27"


0

আপনার যদি অজগর পথে না থাকে বা ডিরেক্টরিটি উল্লেখ করতে চান তবে এটি আরও ভাল কাজ করে :

//for Windows
npm config set python C:\Python27\python.exe

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