রিডলাইনে ত্রুটির কারণে "রেলস কনসোল" চালানো যায় না


87

rails consoleএই ত্রুটির কারণে আমি কার্যকর করতে পারি না :

localhost:TwitterForZombies wiz$ rails c
/Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/irb/completion.rb:9:in `require': dlopen(/Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/x86_64-darwin12.2.1/readline.bundle, 9): Library not loaded: /usr/local/opt/readline/lib/libreadline.6.2.dylib (LoadError)
  Referenced from: /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/x86_64-darwin12.2.1/readline.bundle
  Reason: image not found - /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/x86_64-darwin12.2.1/readline.bundle
    from /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/irb/completion.rb:9:in `<top (required)>'
    from /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/railties-3.2.9/lib/rails/commands/console.rb:3:in `require'
    from /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/railties-3.2.9/lib/rails/commands/console.rb:3:in `<top (required)>'
    from /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/railties-3.2.9/lib/rails/commands.rb:38:in `require'
    from /Users/wiz/.rbenv/versions/1.9.3-p194/lib/ruby/gems/1.9.1/gems/railties-3.2.9/lib/rails/commands.rb:38:in `<top (required)>'
    from script/rails:6:in `require'
    from script/rails:6:in `<main>'

আমি হোমব্রুয়ের মাধ্যমে রিডলাইন ইনস্টল করেছি। আমি আরভিএমের পরিবর্তে আরবিএনভ ব্যবহার চালিয়ে যেতে চাই।

আমার প্রশ্নটি পড়ার জন্য আপনাকে ধন্যবাদ।


উত্তর:


278

হোমব্রিউ এবং লাইব্রেডলাইন ..x.dylib / libreadline.6.x.dylib নিয়ে আমার সম্প্রতি একই সমস্যা হয়েছিল

আমি এটি চালিয়ে সমাধান করেছি:

ln -s /usr/local/opt/readline/lib/libreadline.7.0.dylib /usr/local/opt/readline/lib/libreadline.6.dylib

উত্স: https://github.com/rails/rails/issues/26658


4
কি হ্যাক :) তবে এটি এখনকার জন্য ঠিক কাজ করে: ডি ধন্যবাদ!
haslo

18
সিস্টেমটি আসলে আলাদা (মেজর!) সংস্করণ নম্বরটি কী তা ব্যবহার করার জন্য সিমলিংকগুলি ব্যবহার করা সাধারণত একটি খারাপ ধারণা। ভাল হবে যদি উপরের ফিক্সটি নিরাপদ কেন আরও জ্ঞানী কেউ ব্যাখ্যা করতে পারেন।
পিস্তোস

আপনি একজন কিংবদন্তি, এর জন্য আপনাকে ধন্যবাদ, @ উইজে আপনাকে সঠিক চিহ্নিত করা উচিত ছিল!
নিক শোয়াদেয়ার

4
লাইব্রেডলাইন .3.৩ এবং .0.০ এর মধ্যে পরিবর্তনের একটি অবিশ্বাস্য পর্যালোচনা কোনও ব্রেকিং পরিবর্তন বলে মনে হচ্ছে না, এমন ক্ষেত্রে প্রত্যাশা করুন যেখানে সফ্টওয়্যার অননুমোদিত বা বগী আচরণের উপর নির্ভর করে। আমি এই আলোকে এই সমাধানটি চেষ্টা করতে স্বাচ্ছন্দ্যবোধ করব।
ল্যান্ডসি সাইমন

58

হোমব্রিউ দুর্দান্ত, তবে একবারে এটি অন্য চলমান অংশগুলির সাথে খুব ভাল খেলবে না।

স্বয়ংক্রিয়ভাবে সরানোর সময় একটি brew update && brew upgradeআনা হয়েছিল , যা রুবি এখনও নির্ভর করে।libreadline.7.x.dyliblibreadline.6.x.dylib

সমস্যাটি সমাধানের আরও চতুর উপায় থাকতে পারে, তবে বর্বর শক্তি আমার পক্ষে কাজ করেছে:

$ rbenv uninstall 2.3.1
$ rbenv install 2.3.1
$ cd /path/to/my/app
$ bundle

উপরেরটি rbenv এর উপস্থিতি ruby-buildএবং অবশ্যই ধরে নিয়েছে bundler; 2.3.1আপনি যে পরিমাণ রুবি ব্যবহার করছেন তা প্রতিস্থাপন করুন ।

দয়া করে নোট করুন যে একই রকম সমস্যা বিভিন্ন হোমব্রিউ-পরিচালিত গ্রন্থাগারগুলির সাথে দেখা দিতে পারে ( উদাহরণস্বরূপ এটির নিজের উত্তরটি দেখুন )


আমার সাথেও একই ঘটনা ঘটেছিল - আমি অবাক হই যে হোমব্রিউয়ের জন্য লক্ষ্য করার কোনও উপায় নেই যে কিছু ল্যাবগুলি কিছুতে হোমব্রিউ সরবরাহকারী পুরানো সংস্করণগুলির সাথে সংযুক্ত রয়েছে?
slhck

4
এটি এল ক্যাপিটেনে আমার জন্য কাজ gem install bundlerকরেছিল, আরবেভের সাথে ইনস্টল করার পরে।
হ্যান্ডউইভনসোল

আমি brew update && brew upgradeআবার দৌড়ালে ত্রুটি ঘটবে কি ?
ফ্র্যাঙ্ক ফ্যাং

4
@ ফ্র্যাঙ্কফ্যাং, এটি কেবল এই বিশেষ ত্রুটির জন্যই নয় বা নাও পারে। প্রতিবার brew upgradeকোনও পুরানো গ্রন্থাগারকে আরও সাম্প্রতিক সংস্করণের সাথে প্রতিস্থাপনের সময় , আপনার সিস্টেমের অন্যান্য প্রোগ্রামগুলির অভিযোগ করার সম্ভাবনা রয়েছে।
জিউসেপ

26

আমি ওএসএক্স, রুবি 2.3.0, রেল 5 এ আছি। যোগ করার পদ্ধতি gem 'rb-readline'আমার কাছে Gemfileনির্দিষ্ট এই সমস্যা।


4
রত্ন আরবি-রিডলাইন আমার জন্য কাজ করেছিল। আমি এটিকে যুক্ত করেছি: বিকাশ,: পরীক্ষার গ্রুপ - দুর্দান্ত দ্রুত ফিক্স!
tnum

21

আমি রুবি ২.১.০, এবং রেল ৪.০ এর সাথে একই ত্রুটি পেয়েছি। অনেকগুলি অনুসন্ধান এবং চেষ্টা করার পরে, অবশেষে এটি ভালভাবে কাজ করে :) :) আমি যা করেছি তা এখানে:

rvm cleanup all
rvm autolibs enable
rvm install 2.1.0 

অন্যান্য উপায়:

brew update
brew uninstall readline
brew install readline

অটোলিবস কমান্ডটি আরভিএমকে সমস্ত নির্ভরতা ইনস্টল করতে বাধ্য করবে, সুতরাং আপনার এটি নিয়ে চিন্তা করার দরকার নেই।

আশা করি এটি সহায়ক।


4
আপনার প্রয়োজন হতে পারে না cleanup rvm। শুধু reinstallরুবি সংস্করণ।
10:36

20

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

brew install readline ruby-build
env CONFIGURE_OPTS=--with-readline-dir=`brew --prefix readline` rbenv install 1.9.3-p286

এটি রুবি-বিল্ড উইকি এবং একটি দ্রুত গুগল অনুসন্ধান থেকে নেওয়া হয়েছিল ।


এটি করার পরে
পুনরায় রিশাক

4
রিডলাইনের সাথে বিদ্যমান রুবি সংস্করণটি পুনরায় ইনস্টল করার পরে, একটি কমান্ড চালানো bundle installআমাকে "বিসিআরপিট -৩.১.১১ উপেক্ষা করে কারণ এর এক্সটেনশনগুলি নির্মিত হয়নি" এর মতো প্রচুর সতর্কতা দেখিয়েছে। হিসাবে উত্তর মধ্যে প্রস্তাবিত এই প্রশ্নের , gem pristine --allএকবারে সেই ত্রুটি সব সংশোধন করা হয়েছে।
ররি ও'কেনে

8

ম্যাক, El Captainসংস্করণ ব্যবহার করে কেবল কাজ করে এটি ঠিক করা সম্ভব

rvm reinstall your_ruby_version

(মত rvm reinstall ruby-2.3.1 )

ভাগ্য ভালো, এই সাহায্য আশা করি!


আমার যা করা দরকার ছিল এটিই ছিল।
পিস্তোস

এটি আপনার বর্তমান সংস্করণটি পুনরায় ইনস্টল করবে:rvm reinstall $(rvm current)
CTS_AE

এটি সহজতম সমাধান, তবে এটি পুনরায় ইনস্টল করতে কিছুটা সময় নেয়। তবুও, সেরা পদ্ধতির imho।
f055

1

গিথুব ব্যবহারকারী @enderahmetyurt থেকে নেওয়া (এটি আমার জন্য কাজ করা একমাত্র সমাধান)।

সমাধান: ডেভেলপমেন্ট গ্রুপেgem 'rb-readline' আপনার জেমফাইলে যুক্ত করুন এবং বান্ডিল ইনস্টল করুন । বোকা "রিডলাইন" ত্রুটিগুলির সহজ সমাধান এটি।


0

রিডলাইন ইনস্টল করার চেষ্টা করুন এবং আপনার রুবি পুনরায় ইনস্টল করুন

https://rvm.io/packages/readline/


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