এনপিএম সহ বিসিআরপিট ইনস্টল করার সময় ত্রুটি


90

আমি আমার মেশিনে bcryptব্যবহার npmকরে ইনস্টল করতে অক্ষম কারণ আমি নিম্নলিখিত ত্রুটিগুলির মুখোমুখি হয়েছি। আমি অনেক ভাগ্য ছাড়াই সমস্যাটির সমাধান করছি। সমস্যাটি সনাক্তকরণ বা সমাধানের জন্য আপনি কোনও পদক্ষেপের পরামর্শ দিতে পারেন যাতে আমি npm install bcryptসফলভাবে চালাতে পারি ?

Someones-Macbook:node_modules Cody$ npm install bcrypt
npm WARN package.json grunt-contrib-htmlmin@0.1.3 No README data
|
> bcrypt@0.7.7 install /Applications/MAMP/htdocs/richintime/ultimate-seed/node_modules/bcrypt
> node-gyp rebuild

child_process: customFds option is deprecated, use stdio instead.
  CXX(target) Release/obj.target/bcrypt_lib/src/blowfish.o
  CXX(target) Release/obj.target/bcrypt_lib/src/bcrypt.o
  CXX(target) Release/obj.target/bcrypt_lib/src/bcrypt_node.o
../src/bcrypt_node.cc:118:18: error: no member named 'Dispose' in 'v8::Persistent<v8::Function, v8::NonCopyablePersistentTraits<v8::Function>
      >'
        callback.Dispose();
        ~~~~~~~~ ^
../src/bcrypt_node.cc:202:19: error: unknown type name 'uv_work_t'
void GenSaltAsync(uv_work_t* req) {
                  ^
../src/bcrypt_node.cc:219:24: error: unknown type name 'uv_work_t'
void GenSaltAsyncAfter(uv_work_t* req) {
                       ^
../src/bcrypt_node.cc:220:17: error: calling a protected constructor of class 'v8::HandleScope'
    HandleScope scope;
                ^
/Users/Cody/.node-gyp/0.12.0/deps/v8/include/v8.h:816:13: note: declared protected here
  V8_INLINE HandleScope() {}
            ^
../src/bcrypt_node.cc:228:44: error: no member named 'New' in 'v8::String'
        argv[0] = Exception::Error(String::New(baton->error.c_str()));
                                   ~~~~~~~~^
../src/bcrypt_node.cc:229:19: error: no matching function for call to 'Undefined'
        argv[1] = Undefined();
                  ^~~~~~~~~
/Users/Cody/.node-gyp/0.12.0/deps/v8/include/v8.h:305:28: note: candidate function not viable: requires single argument 'isolate', but no
      arguments were provided
  friend Handle<Primitive> Undefined(Isolate* isolate);
                           ^
../src/bcrypt_node.cc:232:19: error: no matching function for call to 'Undefined'
        argv[0] = Undefined();
                  ^~~~~~~~~
/Users/Cody/.node-gyp/0.12.0/deps/v8/include/v8.h:305:28: note: candidate function not viable: requires single argument 'isolate', but no
      arguments were provided
  friend Handle<Primitive> Undefined(Isolate* isolate);
                           ^
../src/bcrypt_node.cc:238:20: error: member reference type 'v8::Persistent<v8::Function>' is not a pointer; maybe you meant to use '.'?
    baton->callback->Call(Context::GetCurrent()->Global(), 2, argv);
    ~~~~~~~~~~~~~~~^~
                   .
../src/bcrypt_node.cc:238:22: error: no member named 'Call' in 'v8::Persistent<v8::Function, v8::NonCopyablePersistentTraits<v8::Function> >'
    baton->callback->Call(Context::GetCurrent()->Global(), 2, argv);
    ~~~~~~~~~~~~~~~  ^
../src/bcrypt_node.cc:238:36: error: no member named 'GetCurrent' in 'v8::Context'
    baton->callback->Call(Context::GetCurrent()->Global(), 2, argv);
                          ~~~~~~~~~^
../src/bcrypt_node.cc:246:34: error: unknown type name 'Arguments'; did you mean 'v8::internal::Arguments'?
Handle<Value> GenerateSalt(const Arguments &args) {
                                 ^~~~~~~~~
                                 v8::internal::Arguments
/Users/Cody/.node-gyp/0.12.0/deps/v8/include/v8.h:127:7: note: 'v8::internal::Arguments' declared here
class Arguments;
      ^
../src/bcrypt_node.cc:247:17: error: calling a protected constructor of class 'v8::HandleScope'
    HandleScope scope;
                ^
/Users/Cody/.node-gyp/0.12.0/deps/v8/include/v8.h:816:13: note: declared protected here
  V8_INLINE HandleScope() {}
            ^
../src/bcrypt_node.cc:249:32: error: type 'const v8::internal::Arguments' does not provide a subscript operator
    const ssize_t rounds = args[0]->Int32Value();
                           ~~~~^~
../src/bcrypt_node.cc:250:30: error: type 'const v8::internal::Arguments' does not provide a subscript operator
    const int rand_len = args[1]->Int32Value();
                         ~~~~^~
../src/bcrypt_node.cc:251:58: error: type 'const v8::internal::Arguments' does not provide a subscript operator
    Local<Function> callback = Local<Function>::Cast(args[2]);
                                                     ~~~~^~
../src/bcrypt_node.cc:255:45: error: 'New' is a private member of 'v8::PersistentBase<v8::Function>'
    baton->callback = Persistent<Function>::New(callback);
                                            ^
/Users/Cody/.node-gyp/0.12.0/deps/v8/include/v8.h:572:23: note: declared private here
  V8_INLINE static T* New(Isolate* isolate, T* that);
                      ^
../src/bcrypt_node.cc:255:57: error: too few arguments to function call, expected 2, have 1
    baton->callback = Persistent<Function>::New(callback);
                      ~~~~~~~~~~~~~~~~~~~~~~~~~         ^
/Users/Cody/.node-gyp/0.12.0/deps/v8/include/v8.h:572:3: note: 'New' declared here
  V8_INLINE static T* New(Isolate* isolate, T* that);
  ^
/Users/Cody/.node-gyp/0.12.0/deps/v8/include/v8config.h:289:20: note: expanded from macro 'V8_INLINE'
# define V8_INLINE inline __attribute__((always_inline))
                   ^
../src/bcrypt_node.cc:259:5: error: unknown type name 'uv_work_t'
    uv_work_t* req = new uv_work_t;
    ^
../src/bcrypt_node.cc:259:26: error: unknown type name 'uv_work_t'
    uv_work_t* req = new uv_work_t;
                         ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make: *** [Release/obj.target/bcrypt_lib/src/bcrypt_node.o] Error 1
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:267:23)
gyp ERR! stack     at ChildProcess.emit (events.js:110:17)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (child_process.js:1067:12)
gyp ERR! System Darwin 13.4.0
gyp ERR! command "node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /Applications/MAMP/htdocs/richintime/ultimate-seed/node_modules/bcrypt
gyp ERR! node -v v0.12.0
gyp ERR! node-gyp -v v1.0.2
gyp ERR! not ok 
npm ERR! Darwin 13.4.0
npm ERR! argv "node" "/usr/local/bin/npm" "install" "bcrypt"
npm ERR! node v0.12.0
npm ERR! npm  v2.7.1
npm ERR! code ELIFECYCLE

npm ERR! bcrypt@0.7.7 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the bcrypt@0.7.7 install script 'node-gyp rebuild'.
npm ERR! This is most likely a problem with the bcrypt package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-gyp rebuild

উত্তর:


211

সহজ সমাধানটি হ'ল "বিসিআরপিট" এনপিএম মডিউল থেকে bycryptjsবা এ পরিবর্তন bcrypt-nodejs। এটি ঠিক একই API, তবে খাঁটি জেএস তাই কোনও দেশীয় অ্যাড-অনগুলি মোকাবেলা করতে পারে না।

npm install --save bcryptjs && npm uninstall --save bcrypt

তারপরে আপনার requireকলগুলি "bcryptjs" এ পরিবর্তন করুন তবে অন্যথায় আপনার সমস্ত কোড অপরিবর্তিত হতে পারে।

দীর্ঘমেয়াদী, আমি সন্দেহ করি এই মুহুর্তে bcrypt নোড v0.12.0 এর জন্য প্রস্তুত নাও হতে পারে, তবে তা না হলে অবশেষে এটি আপডেট হবে এবং প্রস্তুত থাকবে।


4
পাইথন সংস্করণের চেয়ে 2.7x ধীর
রকেটস্পেসার

4
bcryptjs আমার জন্য কাজ করে। bcrypt-nodejs যদিও তা করে না।
কলবি কক্স

4
2019 - দেখে মনে হচ্ছে বিক্রিপ্ট-নোডেজ আর সমর্থিত নয়
ম্যাট

4
এটি একটি সমাধান, স্থির নয়। আপনি যদি বিসিআরপিটের নোড সংস্করণে স্যুইচ করতে না পারেন তবে নোড-জিপ ইনস্টল করতে যান (এনপিএম আই বিসিআরপিটি এনপিডি-জিপ - ফোর্স) তারপরে এনএমপি চেষ্টা করে দেখুন i। এটি সঠিকভাবে তৈরি করা উচিত।
কাইও উইলসন

4
আমি ইতিমধ্যে বিসিআরপিট-নোডেজ ইনস্টল করেছি যদিও এটি ইতিমধ্যে অবমূল্যায়ন করা হয়েছে, এবং তারপরে এটি সরিয়ে আবার বিসিক্রিপ ইনস্টল করেছি। এটির মতো, আমি সফলভাবে bcrypt ইনস্টল করেছি এবং এটি দুর্দান্ত কাজ করেছে।
সুন্দরদেব

34

উইন্ডোজের জন্য নিম্নলিখিত মডিউলটি ইনস্টল করুন

npm install -g node-gyp
npm install --g --production windows-build-tools

তারপরে ইনস্টল করার চেষ্টা করুন

npm install bcrypt

এই লোকটি একটি সঠিক উত্তর দেয় answer অন্যান্য জিনিস হ্রাস করা হয়।
গৌরাঙ্গ জোশী

এই সমস্ত কিছুর পরে, pythonআপনার পরিবেশ পরিবর্তনশীল PATH- এ এক্সিকিউটেবল যুক্ত করা উচিত , যাতে ইনস্টলার এটি খুঁজে পায়, মনে হয় এটি ইনস্টলেশনটি সঠিকভাবে সম্পাদন করার জন্য এটির প্রয়োজন needs
রকিবুল হক

আপনি পাওয়ারশেলটিতে ডান-ক্লিক করে এবং "প্রশাসক হিসাবে চালান" নির্বাচন করুন
কিশান প্যাটেল

এছাড়াও অন্য কোনও টার্মিনাল বন্ধ করতে ভুলবেন না (যেমন আমি ডিফল্টরূপে পাওয়ারশেল ব্যবহার করি না) যাতে windows-build-toolsইনস্টলেশন শেষ হয়ে যায়। এই উত্তরটির জন্য আপনাকে ধন্যবাদ
বিটিডব্লিউ

উইন্ডোজ প্রশাসক হিসাবে চালান
Prathamesh আরো

10

এই আদেশে:

npm install --g --production windows-build-tools

আপনার উইন্ডোজ মেশিনে অ্যাডমিনিস্ট্রেটর হিসাবে পাওয়ার পাওয়ার এ এটি চালাতে হতে পারে।

আপনি পাওয়ারশেলের উপর ডান ক্লিক করে এবং "প্রশাসক হিসাবে চালান" নির্বাচন করে তা করেন


5

গৃহীত সমাধানটি কাজ করে তবে bcryptjs পাইথন এবং সি ++ সংস্করণের চেয়ে ধীর।

আপনি যদি এখনও চান bcrypt insted এর bcryptjs ওয়ার্কিং সলিউশন নীচের কমান্ড, তবে তাদেরও সমস্যা হতে পারে।

✔️ npm install -g node-gyp
❌ npm install --g --production windows-build-tools

উইন্ডোজ দ্বিতীয় কমান্ড অজগর পাশাপাশি ভিজ্যুয়াল স্টুডিও ইনস্টল করার চেষ্টা করবে এবং তাই সমস্যা দেখা দেয়। কারণ আমরা কেন ভিজ্যুয়াল স্টুডিও ইনস্টল করতে চাই এবং এতে অনেক সময় লাগে। এবং এটি অজগর স্থাপনে বাধা দেয়। এবং যদি আপনি এই কমান্ডটি প্রশাসক হিসাবে চালাতে ভুলে যান তবে সেগুলি সি: \ ব্যবহারকারী \ ব্যবহারকারী w উইন্ডোস-বিল্ড-সরঞ্জামগুলিতে ইনস্টল হয়ে যাবে যা আরও কাজ করবে না কারণ নোড সি: \ বা সি: \ প্রোগ্রাম ফাইলগুলিতে অজগর অনুসন্ধান করবে \ । সুতরাং এই আদেশগুলি কোনও ক্ষেত্রে আপনার জটিলতা বাড়িয়ে তোলে।

সুতরাং আপনার জন্য সর্বোত্তম ধারণাটি হ'ল সমস্ত ব্যবহারকারীদের জন্য অজগরটি ম্যানুয়ালি ইনস্টল করা এবং পরিবেশের পথে অজগর যুক্ত করার প্রয়োজন নেই। এবং শুধুমাত্র প্রথম কমান্ড চালানো

✔️ npm install -g node-gyp

এখন আপনি bcrypt ইনস্টল করার জন্য প্রস্তুত

npm install bcrypt

3

ম্যাক ওএসে, একটি এক্সকোড আপডেটের পরে, sudo gccএক্সকোডের নতুন লাইসেন্স চালানো এবং গ্রহণ করা সমস্যার সমাধান করেছে!


3

আমি কেবল নিম্নলিখিতটি চালিত করে ইনস্টলটি চেষ্টা করেছিলাম এবং এটি কাজ করে:

npm install node-pre-gyp -g

1

আমি সার্ভারের দিকে একই সমস্যার মুখোমুখি হয়েছি (১ a.০৪ খ্রিস্টাব্দ)

আমি নোড_মডিউল / বিসিআরপিটি মুছে ফেলার চেষ্টা করেছি sudo rm -rf node_module/bcrypt একাধিকবার এবং বিভিন্ন উপায়ে এটি পুনরায় ইনস্টল করেছি তবে এখনও একই সমস্যার মুখোমুখি।

আমি এনভিএম সহ নোড সংস্করণটি চেক করেছি এবং এটি স্থিতিশীল (v10.11.0) দেখাচ্ছেও।

অবশেষে, আমি চেষ্টা করেছি।

sudo npm cache clean -f
sudo npm install -g n
sudo n stable

এবং এটা আমার জন্য কাজ করে।


1

আপনি যদি উইন্ডোতে থাকেন তবে প্রশাসক হিসাবে পাওয়ারশেল চালান এবং এই আদেশগুলি ব্যবহার করুন।

npm install --g --production windows-build-tools

এবং তারপরে bcrypt ব্যবহার করে ইনস্টল করুন

npm install --save bcrypt

1

আমারও একই সমস্যা ছিল। নিম্নলিখিত আদেশগুলি আমাকে সাহায্য করেছিল।

npm rebuild

তারপর

npm install bcrypt

1

ত্রুটির কারণ : নোড সম্ভবত আপনার সিস্টেমে পাইথন পাথটি খুঁজে পাবে না

সমাধান

পদক্ষেপ: 1 রুম কমান্ড প্রম্পট প্রশাসক হিসাবে পদক্ষেপ 2 প্যাকেজ ইনস্টল করুন

  npm install --global --production windows-build-tools

কিছুটা সময় লাগতে পারে, ধৈর্য ধরে রাখুন

পদক্ষেপ 3 এখন ইনস্টল করুন

npm install node-gyp

শেষ পদক্ষেপ এখন আপনি যেতে প্রস্তুত

npm install bcrypt

1

কমান্ডটি চালিয়ে আমি এটি সমাধান করতে পেরেছিলাম: sudo apt-get install -y build-essential pythonএবং তারপরে yarn add bcrypt

আপনি এখানে নির্দেশাবলী খুঁজে পেতে পারেন:

https://github.com/kelektiv/node.bcrypt.js/wiki/ ইন্সটলেশন- নির্দেশনা

https://github.com/kelektiv/node.bcrypt.js


1

Bcrypt@5.0.0 এ আপগ্রেড করুন

npm i bcrypt@5.0.0

আমি Bcrypt- র এই নতুন সংস্করণে ত্রুটি পাচ্ছি না, পুরানো সংস্করণে বিভিন্ন ধরণের ত্রুটি দেওয়া হয়েছিল বিসিক্রিপটি টাইপস্ক্রিপ্ট টাইপ ত্রুটিগুলিতে ইনস্টল করতে সক্ষম না হয়ে


0

উপরের কোনওটি যদি কাজ করতে ব্যর্থ হয়, তবে:

npm install node-gyp

এর পরে অফিসিয়াল পাইথন ডাউনলোড সাইট অফিশিয়াল পাইথন ডাউনলোড লিঙ্কটি দেখুন

পাইথনের সর্বশেষতম সংস্করণ ইনস্টল করুন, অজগরটিকে পথে যোগ করার বিষয়টি নিশ্চিত করে নিন অজগরকে পথে যুক্ত করুন

ইনস্টলেশন পরে, করুন:

npm --save install bcrypt

0

আমি ইতিমধ্যে বিসিআরপিট-নোডেজ ইনস্টল করেছি যদিও এটি ইতিমধ্যে অবমূল্যায়ন করা হয়েছে, এবং তারপরে এটি সরিয়ে আবার বিসিক্রিপ ইনস্টল করেছি। এটির মতো, আমি সফলভাবে bcrypt ইনস্টল করেছি এবং এটি দুর্দান্ত কাজ করেছে।

yarn add bcrypt-nodejs
yarn remove bcrypt-nodejs
yarn add bcrypt 

0

চলছে

sudo apt install build-essential

আপনার লিনাক্সে bcrypt ইনস্টল করার জন্য প্রয়োজনীয় সমস্ত সরঞ্জাম ইনস্টল করে। তাহলে আপনি চালাতে পারেন

npm install

0

আমার নোড সংস্করণ ছিল 12.18.3 এবং এটি চালিয়ে ঠিক করেছিলাম npm i bcrypt@3.0.6


-1

একই সমস্যা ছিল। এনপিএম আপডেট করে আবার চেষ্টা করুন (এনপিএম ইনস্টল-জি এনএমপি সাধারণত)। এটা আমার জন্য সমস্যা সমাধান।

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