লাইব্রেরি লোড করা হয়নি: /usr/local/opt/readline/lib/libreadline.6.2.dlib


239

আমি কেবল হোমগ্রাবের সাথে পোস্টগ্র্রেস্কেল ইনস্টল করেছি এবং যখন আমি কমান্ডটি টাইপ করি

psql

আমি নিম্নলিখিত ত্রুটি পেয়েছি:

dyld: Library not loaded: /usr/local/opt/readline/lib/libreadline.6.2.dylib
Referenced from: /usr/local/bin/psql
Reason: image not found
[1]    69711 trace trap  psql

ভুল কি সম্পর্কে কারও কি ধারণা আছে?


1
দেখে মনে হচ্ছে এটি রিডলাইনের সাথে লিঙ্কযুক্ত, তবে এটি উপস্থিত নেই। আপনি কি পরে রিডলাইন আনইনস্টল করেছেন? আপনি হোমগ্রাবের সাথে পোস্টগ্র্রেএসকিউএল ঠিক কীভাবে ইনস্টল করেছেন? (পদক্ষেপ, কমান্ডএস)
ক্রেগ রিঞ্জার

1
সম্ভবত দ্বারা মীমাংসিত stackoverflow.com/questions/42356309/... যার নীচে অধিকাংশ বেশি সংক্ষিপ্ত উত্তর আছে (আপনি সম্ভবত postgres পুনরায় ইনস্টল করার প্রয়োজন হবে না!)
thclark

উত্তর:


373

আমি ঠিক একই ত্রুটি পেয়েছিলাম, কিন্তু উপরের উত্তরগুলি আমার পক্ষে কার্যকর হয়নি। আমাকে পোস্টগ্র্যাস্কল পুনরায় ইনস্টল করতে হয়েছিল।

brew reinstall postgresql


5
এটি আমার জন্য এটি এল ক্যাপ্টেন
সেবাস্তিয়ান সাস্ট্রে

6
আমার সমস্যাটি মনে হচ্ছে ব্রিউ ব্যবহার করে অজগর স্থাপনের সাথে সম্পর্কিত ছিল
লোকারাড

6
আপনি যদি ইতিমধ্যে পোস্টগ্রাস্টের সর্বশেষতম সংস্করণে না থাকেন তবে এটি করতে সাবধান হন। আপনি নতুন এক পাশাপাশি পুরাতন Postgres পুনরায় ইনস্টল করার এবং তারপর কি করে করতে হবেpg_upgrade
dazonic

7
আপনি যদি স্থানীয় ডাটাবেস হারাতে না চান তবে এটি খুব ভারী handed আমার 'ব্রিউ সুইচ রিডলাইন 6.3.8'
ক্রিস্টোফার জনসন

4
যদি আপনি মনে করেন যে পিএসকিএল পুনরায় ইনস্টল করা একটি ছোট বাগের মতো মনে হয় তবে এটি একক নয় you're এই উত্তর: stackoverflow.com/a/41476592/839876 মনে হয় যে এই উত্তরগুলির বেশিরভাগই কাজ করে real
ফ্রেন্ড্রয়েড

127

মূল সমস্যাটি হ'ল আপনার পোস্টগ্র্যাস্কেলটি libreadline.6.2.dylibআপনার readlineসংস্করণটি অনুসন্ধান করার চেষ্টা করছিল 7.0, সুতরাং কেবল 7 টির লিবিযুক্ত।

আমি মনে করি না পোস্টগ্র্যাস্কেলকে আপগ্রেড করা একটি ভাল ধারণা, এটি সহজ নয় এবং বিশেষত যখন আপনার কাছে ইতিমধ্যে ডাটাবেস ডেটা রয়েছে তখন অনেক সমস্যার কারণ হতে পারে।

আমি কি করি, এর সংস্করণটি স্যুইচ করা readline। আপনি যখন পরীক্ষা করেন brew info readline, আপনি বিভিন্ন সংস্করণ পাবেন, আমার 6.3.8, তাই আমি সম্পাদনা করে সেই সংস্করণে চলেছি:

$ brew switch readline 6.3.8

এটি 6.3.8 এ পরিবর্তিত হবে এবং লিঙ্কটি তৈরি করবে:

Cleaning /usr/local/Cellar/readline/6.3.8
Cleaning /usr/local/Cellar/readline/7.0.1
Opt link created for /usr/local/Cellar/readline/6.3.8

এই ক্ষেত্রে, সমস্ত লিঙ্কযুক্ত lib 6 সংস্করণে পরিণত হয় এবং কমান্ড লাইনটি কাজ করে:

$ ls /usr/local/opt/readline/lib/
libhistory.6.2.dylib    libhistory.dylib    libreadline.a
libhistory.6.3.dylib    libreadline.6.2.dylib   libreadline.dylib
libhistory.6.dylib  libreadline.6.3.dylib
libhistory.a        libreadline.6.dylib

তবে, আপনার যদি রিডলাইনের বিভিন্ন সংস্করণ ব্যবহার করে বিভিন্ন অ্যাপ থাকে তবে আমি মনে করি আপনার আপগ্রেড করার বিষয়টি বিবেচনা করা উচিত।


আপডেট: 06/02/2019

যদি পুরানো সংস্করণ ইনস্টল না করা হয়?

Homebrewপুরানো সংস্করণ সূত্রটি ইনস্টল করার কোনও উপায় সরবরাহ করে না। এবং v2.0.0 থেকে, এটি brew cleanupপ্রতি 30 দিন পরে ডিফল্ট আচরণ হিসাবে চলবে । অতএব, আপনি দুর্ঘটনাক্রমে brewপুরানো সংস্করণ আপডেট এবং মুছতে পারেন ।

পুরানো সংস্করণ ইনস্টল করার পদক্ষেপ এখানে:

  1. homebrew-coreডিরেক্টরিতে যান :
    $ cd $(brew --repository)/Library/Taps/homebrew/homebrew-core
  1. পুরানো ফর্মুলার জন্য হ্যাশ পরীক্ষা করুন:
    $ git log master -- Formula/readline.rb
  1. হ্যাশ মানটির সাথে সম্পর্কিত সংস্করণটি সন্ধান করুন
    commit 1dd4221c35716d6bec363ad3425ef93ffe7d9b9f
    Author: BrewTestBot <brew-test-bot@googlegroups.com>
    Date:   Wed Aug 15 21:51:16 2018 +0000

        readline: update 7.0.5 bottle.
  1. পুরানো সূত্রে চেকআউট:
    $ git checkout 1dd4221c35716d6bec363ad3425ef93ffe7d9b9f Formula/readline.rb
  1. সূত্রটি পুনরায় ইনস্টল করুন:
    $ brew reinstall readline
  1. রেপো রিসেট করুন

এই পদক্ষেপগুলি অনুসরণ করে আপনি সূত্রের পুরানো সংস্করণ পুনরায় ইনস্টল করতে পারেন।


1
এবং আমি - আপনার যদি 7 পঠনের পাঠ্যসূচীর উপর অন্য কোনও নির্ভরতা না থাকে তবে এটি অবশ্যই সর্বনিম্ন ব্যাঘাত ঘটাও।
সৃষ্টি

এটি আমার জন্যও কাজ করেছিল, পোস্ট আপডেট করার থেকে আমাকে বাঁচিয়েছিল
ধনী

আমার জন্যও কাজ করেছেন ... পুরো
ডাটাবেস

যখন কেউ এর অন্য যে কোনও সংস্করণ readlineইনস্টল থাকা অবস্থায় ফিরে যেতে চাইবে ? এটি করার জন্য আর কি ডাউনসাইড রয়েছে?
কেনি এভিট

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

78

যদি পরিস্থিতিটি আপনার কাছে থাকে তবে উচ্চতর সংস্করণের পাঠ্যলাইনটি 7.0 বলুন। তুমি এটি করতে পারো

cd /usr/local/opt/readline/lib    
ln libreadline.7.0.dylib libreadline.6.2.dylib

5
আমাকে "লিবারডলাইন। ..Llib" নামে লিঙ্ক তৈরি করতে হয়েছিল তবে এটিই ছিল আমার পক্ষে একমাত্র পরামর্শ।
ম্যাডস হোয়েল

1
এটি তার সাথে একত্রে brew uninstall --force gawkএবং তারপরে brew install gawkযা আমাকে উঠিয়ে চলছিল। আপনি ঠিক করতে সক্ষম হতে পারবেনbrew reinstall --force gawk
Csteele5

1
ভাল একটা. আমি পোস্টগ্রেস 10.6 চালাচ্ছি যা লাইব্রেডলাইন ..ডিলিবের প্রত্যাশা করে তবে আমি সবেমাত্র ইনস্টল করেছিলাম pg_topযা লাইব্রেডলাইনটি ৮.০ এ উন্নীত করেছে এবং পিএসএইচএল ভেঙেছে। আমি আপনার কৌতুকটি এটিকে একটি সিমিলিংক তৈরি বাদে ব্যবহার করেছি ln -s libreadline.8.0.dylib libreadline.7.dylib
দাওস

দুর্দান্ত, ধন্যবাদ এটি পোস্টগ্র্রেএসকিউএল আনইনস্টল এবং পুনরায় ইনস্টল না করেই ম্যাকস মোজাভেতে কাজ করেছে (যা সত্যিকারের ব্যথা হতে পারে)।
crmpicco

46

আপনার যদি রিডলাইন ইনস্টল না করা থাকে তবে প্রথমে এটি ইনস্টল করুন:

brew install readline

আমার কাছে, আমি এই ত্রুটিটি পাচ্ছিলাম, যদিও আমি রিডলাইন ইনস্টল করেছি। রিডলন পুনরায় ইনস্টল করা কৌশলটি করেছে:

brew reinstall readline

6
রিডলন পুনরায় ইনস্টল করা আমার পক্ষে তা হয়নি, তবে আনইনস্টল করুন / bashbrew install --build-from-source bash
ইনস্টলটি করেছেন

আমি দেখতে পেয়েছি যে আমাকে প্রথমে রিডলাইনের সমস্ত ভেরিওনস সরিয়ে ফেলতে হবে (মেশিনে আনইনস্টল - ফোর্স রিডলাইন)। আমি এটি পুনরায় ইনস্টল করার পরে, আমাকে এটিকে "ব্রিউ লিঙ্ক
উইলহেম

আমার কাছে পুনরায় ইনস্টল করা বাশও ছিল ঠিক, তবে আমার ক্ষেত্রে "রেফারেন্স থেকে" রেখার জন্য বিশেষভাবে উল্লেখ করা হয়েছে।
এমবাফর্ড

MacOS সিয়েরা ইনস্টল করার পরে, আমি এই সমস্যাটির মুখোমুখি হয়েছি। আমি উভয়ই করেছি brew reinstall readline(সিয়েরা-নির্দিষ্ট মদ পেতে) এবং এটি করার সময় brew reinstall postgresql94,। লোকেরা ব্যাশ পুনরায় ইনস্টল করতে বলেছিল তবে আমার সাথে এটি আর কখনও শুরু হয়নি। সুতরাং এই উত্তর এবং নির্বাচিত উত্তর উভয়ই আমার পক্ষে কাজ করেছিল।
রিসা_রিসা

ব্রিউ রিস্টল রিডলাইনটি অন্যান্য সংস্করণগুলিতে স্যুইচ করার পরে আমার পক্ষে কাজ করেছে (যা অতীতে কাজ করেছে) এখন আর psql9.6 এ আপগ্রেড করার পরে আর কাজ করেনি
বুকুনজি01

31

এটি আমার পক্ষে কাজ করেছে

brew switch readline

এটি আপনার ইনস্টল করা সংস্করণগুলি প্রদর্শন করবে। এগুলির মধ্যে একটি বাছাই করুন। আমি 7.0.5 নিয়েছি

আমি তখন দৌড়ে গেলাম

brew switch readline 7.0.5

পঠনের সংস্করণটি আপডেট হয়ে গেছে এবং psqlসহজেই চলেছে।


2
আমার জন্যও কাজ করেছেন। পিএসকিএল লোড করার চেষ্টা করছিল libreadline.7.dylib, তবে আমি রিডলাইন 8.0.0 ব্যবহার করছিলাম। 8.0.0 থেকে 7.0.5 এ স্যুইচ করা সমস্যার সমাধান করেছে। আমি আশা করি যে আমি 8.0.0 এ থাকতে চাইলে একটি সিমলিংক তৈরি করা (যেমন অন্যরাও করেছে) কাজ করবে। তবে পুরানো সংস্করণে একটি নতুন সংস্করণ লিঙ্ক থাকা বিভ্রান্তিমূলক এবং সম্ভবত অন্যান্য সমস্যার কারণ হতে পারে।
ডেনিস

আপনি এই সমাধানটি কীভাবে খুঁজে পেয়েছেন? আমি খুবই মুগ্ধ!
কুদ্দু

1
আমিও একই চেষ্টা করেছি, তবে নিম্নলিখিত ত্রুটিটি পেয়েছি: পঠন পাঠকের সারণীতে "7.0.5" সংস্করণ নেই। আমি 7.0.5 readline ইনস্টল চোলাই চেষ্টা করেছি, কিন্তু এটা নিম্নলিখিত ত্রুটির দেখায়: নাম "7.0.5" @ ডেনিস সহ কোনো প্রাপ্তিসাধ্য সূত্র।
মহেশ মেস্তা

23

এটি আমার জন্য কাজ করেছে

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

এটি আমার সমস্যাও ছিল। আমি ব্রিবু ব্যবহার করিনি এবং সর্বশেষ আপডেটের পরে সিম লিঙ্কটি মিস করছি। ধন্যবাদ!
ম্যাট

নিস! আমার সঠিক ত্রুটি 6.2 সম্পর্কে অভিযোগ করেছে, আমার আদেশটি কিছুটা আলাদা। ত্রুটিটি ছিল dyld: Library not loaded: /usr/local/opt/readline/lib/libreadline.6.2.dylib, তাই আমি ব্যবহার করেছি ln -s /usr/local/opt/readline/lib/libreadline.7.0.dylib /usr/local/opt/readline/lib/libreadline.6.2.dylib
টাইলার কলিয়ার

20

সমাধানটি আবারও পঠন লাইনের সাথে সংযোগ স্থাপনকে বাধ্য করা।

brew remove readline
brew install readline
brew link readline --force

রিলিংক আমার পক্ষে কাজ করেনি, তবে পোস্টগ্র্যাসকিএল পুনরায় ইনস্টল করার কাজ করেছে।
কনস্ট্যান্টিন তিখোনভ

14

আমার কাছে মনে হচ্ছে সমস্যাটি রিডলাইন প্যাকেজ আপডেট করার বিষয়ে। postgres আমার ক্ষেত্রে /usr/local/opt/readline/lib/libreadline.7.dylib ব্যবহার করার চেষ্টা করেছে। সুতরাং আমি সবেমাত্র লাইব্রেরির /usr/local/opt/readline/lib/libreadline.8.dylib এর সংস্করণে একটি সিমিলিংক তৈরি করেছি।

আমার জন্য কাজ করেছেন:

ln -s /usr/local/opt/readline/lib/libreadline.8.dylib /usr/local/opt/readline/lib/libreadline.7.dylib

এটি আমার পক্ষে কাজ করেছে। আমি পিএসএকিএল সংস্করণ 9.6.3 এবং রিডলাইন 8 এ আছি
ল্যাকোস্টেনাইকোডার

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

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

8

এই সমাধানগুলির কোনওোটাই আমার পক্ষে কাজ করেনি; আমাকে দৌড়াতে হয়েছিল:

brew upgrade bash

থেকে: https://github.com/Homebrew/homebrew-core/issues/5799


আমার এল ক্যাপ্টেনে 10.11.6 এ আপগ্রেড করার পরেও এই ত্রুটিটি প্রতিবারই উন্মুক্ত টার্মিনাল অ্যাপ্লিকেশনটি পেয়েছে, ইতিমধ্যে বাশ আপগ্রেড করে সমাধান করা হয়েছে
আজুল

6

উপরের উত্তরটি আমার পক্ষে কাজ করে নি তাই শেষ পর্যন্ত কী কাজ করে তা আমি পোস্ট করতে চাই। আমি এখানে পাওয়া একটি থ্রেডের উপর ভিত্তি করে আমাকে রিডলাইন আনইনস্টল করতে হয়েছিল এবং এটি আবার ইনস্টল করতে হয়েছিল তবে উত্স থেকে।

brew uninstall readline
brew install --build-from-source readline

এর পরে পিএসকিএল ত্রুটিটি চলে গেল।


5

আমি এই বিষয় ছিল, এবং আমার জন্য কী ছিল reinstallউভয় readlineএবং postgres। পোস্টগ্র্যাগগুলি পুনরায় ইনস্টল করার পরে, সমস্যাটি সমাধান করা হয়েছিল।


5

পিএসকিএল ঠিক করার আরেকটি উপায় হ'ল পোস্টগ্রেস্কল আপডেট হ'ল brew upgrade postgresqlযেহেতু নতুন সংস্করণটি রিডলাইন 7 সংস্করণ ব্যবহার করবে।


4

আমি দুর্ঘটনাক্রমে 7 সংস্করণে রিডলাইন আপডেট করার সময় আমার এই সমস্যা হয়েছিল। আমি রিডলাইন আনইনস্টল করেছিলাম এবং বারু আমাকে স্মরণ করিয়ে দেয় 6.3.8 এখনও ইনস্টল রয়েছে। দেখে মনে হচ্ছে 7 সংস্করণটি এই মুহূর্তে পিএসকিউএল এর সাথে কাজ করছে না।


4

আমি এই সমস্ত টার্মিনাল কমান্ড চেষ্টা করেছিলাম এবং কিছুই কার্যকর হয়নি তাই ম্যানুয়ালি এটি ঠিক করার সিদ্ধান্ত নিয়েছে ..

ওপেন ফাইন্ডার এবং হিট কমান্ড + শিফট + জি

Go to this folder /usr/local/opt/readline/lib/

আপনার এই ফাইলগুলির একাধিক সংস্করণ দেখতে হবে

libreadline.6.dylib
libreadline.7.0.dylib

যে কোনও লাইব্রেরি লোড না হওয়াতে তাদের যেকোনটির নাম পরিবর্তন করুন

this is: /usr/local/opt/readline/lib/libreadline.6.2.dylib
mine was: /usr/local/opt/readline/lib/libreadline.6.dylib

আমার জন্য ভাল কাজ করে
mike_dz

3

আমি সমস্ত পূর্বরূপের উত্তর চেষ্টা করেছি, এবং কিছুই কার্যকর হয়নি। আমার পক্ষে সত্যই কাজ করা একমাত্র জিনিস:

brew link postgresql


2

এটি আমাকে সহায়তা করেছিল: সমস্ত পাঠ্যলাইন এবং পোস্টগ্রাএসকিএল আনইনস্টল করুন

সিপিপিএফএলএজিএস = -আই / ইউএসআর / স্থানীয় / অপ্ট / রিডলাইন / এক্সপোর্ট এলডিএফএলএজিএস =-এল / ইউএসআর / লোকাল / অপ্ট / রিডলাইন / লাইব রপ্তানি

এবং posqtgresql ইনস্টল করুন




0

আপনি চেষ্টা করতে brew doctorপারেন এবং এটি কী বলে তা দেখতে পাবে।

সম্ভবত আপনার যা প্রয়োজন তা হ'ল brew link --overwrite bash

আমার জন্য, আমি সবেমাত্র ব্রিউ আপগ্রেড করেছি যেহেতু ওএস এক্স ই এল ক্যাপিটানের কিছু সুরক্ষা আপগ্রেড ছিল যা আমার /usrফোল্ডারে সংযুক্ত করে। ব্রু আপগ্রেড করার সময়, ব্যাশের লিঙ্কটি নষ্ট হয়ে যায় এবং এটিই brew doctorআমাকে বলে।

তাই আমি দৌড়েছি brew link --overwrite bashএবং সবকিছু ঠিক আছে।


0

আপনি অন্য কিছুতে সিমলিঙ্কযুক্ত আছে কিনা তা পরীক্ষা করতে চাইতে পারেন postgresql। আমি এর আগে পোস্টগ্রিসে93 প্যাকেজের সাথে লিঙ্ক করেছি , যা মে '17 এর মধ্যে অসমর্থিত এবং সরানো হয়েছে। সেই লিঙ্কটি সরানো এবং তারপরে পুনরায় সংযোগ আমার পক্ষে কাজ করেছে:

brew unlink postgresql93
brew link postgresql

0

আমার ক্ষেত্রে সঠিক উত্তরটি সমস্যার সমাধান করেনি।

আমার ~ / .zshrc ফাইলটি চালানোর পরে brew doctorযুক্ত export PATH="/usr/local/bin:$PATH"করার পরে সমস্যাটি শুরু হয়েছিল ।

সরানো হচ্ছে

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

থেকে ~/.zshrcপেয়েছেন এটা সমাধান।


0

কিছু অজানা কারণে, যখন এই ত্রুটিটি রিডলাইনের পরবর্তী সংস্করণের জন্য পপ আপ হয়েছে, তখন আমার আরভিএম সঠিকভাবে এটি সনাক্ত করতে অক্ষম বলে মনে হয়েছিল আমি কীভাবে এটি সিমলিঙ্ক করেছি, ছুঁড়ে ফেলেছি:

Library not loaded: /usr/local/opt/readline/lib/libreadline.7.dylib (LoadError)

আমি rb-readlineআমার জেমফাইলে রত্ন যুক্ত করে শেষ করেছি bundle installএবং এটি কাজ শুরু করে।

আমি ... শুধু জানি না।

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