LibGL.so.1 লোড করার সময় ত্রুটি


48

বিভিন্ন সফটওয়্যার (বিশেষত স্টিম এবং ইয়েনকা) চালানোর চেষ্টা করার সময়, আমি এর অনুরূপ একটি ত্রুটি পেয়েছি: error while loading shared libraries: libGL.so.1: cannot open shared object file: No such file or directory

আমি একটি এনভিডিয়া অপ্টিমাস কার্ডের সাথে একটি 64 বিট সিস্টেম চালিয়ে যাচ্ছি (আমি নির্দিষ্ট উইন্ডোগুলির জন্য কেবলমাত্র একটি সফ্টওয়্যার যার জন্য একটি ডেডিকেটেড গ্রাফিক্স কার্ডের প্রয়োজন হয় ডুয়াল বুট করি)। আমি বোম্বলি ইনস্টল করেছি এবং আমি এনভিডিয়া-কারেন্ট ড্রাইভারটি ব্যবহার করছি, পরিবর্তে এনভিডিয়া থেকে ডাউনলোড করা হয়েছে, যেমনটি প্রস্তাবিত হয়েছে।

লাইব্রেরি (libGL.so.1) শীর্ষস্থানীয় ডিরেক্টরিতে উপস্থিত নেই /usr/lib, তবে এটি /usr/lib32/nvidia-currentসফটলিঙ্ক হিসাবে উপস্থিত রয়েছে /usr/lib32/nvidia-current/libGL.so.304.64

Ldconfig -p থেকে আউটপুট একটি বিভাগ:

libGL.so.1 (libc6,x86-64, OS ABI: Linux 2.4.20) => /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1
libGL.so (libc6,x86-64, OS ABI: Linux 2.4.20) => /usr/lib/x86_64-linux-gnu/libGL.so
libGL.so (libc6,x86-64, OS ABI: Linux 2.4.20) => /usr/lib/x86_64-linux-gnu/mesa/libGL.so

স্পষ্টতই সেই নামের একটি লাইব্রেরি লোড হচ্ছে, তবে সেগুলি অবস্থিত /usr/lib/x86_64-linux-gnu, তবে ইনস্টল করা সফ্টওয়্যার এটি 'দেখতে' সক্ষম করবে বলে মনে হয় না। বাষ্পের জন্য, অপটিরন দিয়ে এটি চালানো এটি কাজ করে, তবে ইয়েনকার ক্ষেত্রে এটি হয় না। আমি ধরে নিয়েছি যে অপ্টিরুন স্টোর থাকা লাইব্রেরিটি ব্যবহারের কারণী করে /usr/lib32/nvidia-current, যা স্টীম চালাতে দেয়, তাই কেন ইয়েনকা চলবে না তা আমি স্পষ্ট করে বলতে পারি না।

সফ্টওয়্যার সাধারণ ম্যাসা লাইব্রেরিটি দেখতে পাচ্ছে না এবং কেন ইয়েনকা এনভিডিয়া-বর্তমান লাইব্রেরিটি চালাতে অস্বীকার করেছে তা কি কেউ ব্যাখ্যা করতে পারেন?

উত্তর:


40

এনভিডিয়া ড্রাইভার ইনস্টল করে স্কাইপ এনভিডিয়া প্যাকেজ সরবরাহ করে এমন একটি আই 3838 লাইব খুঁজছে। যেহেতু এটি বিদ্যমান নেই, তাই mesa দ্বারা সরবরাহিত i386 libGL.so.1 ব্যবহার করা ঠিক।

(এনভিডিয়া -325 ব্যবহার করে উবুন্টু-জিনোম রেরিং) এবং (উবুন্টু-জ্নোম সসিতে, এনভিডিয়া-319 ব্যবহার করে) পরীক্ষিত আমরা নিম্নলিখিত দ্বারা এটি ঠিক করতে সক্ষম হয়েছি:

update-alternatives --display i386-linux-gnu_gl_conf

এটি উপলব্ধ বিকল্পগুলি কী তা আপনাকে দেখায় show

i386-linux-gnu_gl_conf - auto mode
  link currently points to /usr/lib/nvidia-325/alt_ld.so.conf
/usr/lib/i386-linux-gnu/mesa/ld.so.conf - priority 500
  slave i386-linux-gnu_xorg_extra_modules: /usr/lib/i386-linux-gnu/xorg/x11-extra-modules
/usr/lib/nvidia-325/alt_ld.so.conf - priority 8602
Current 'best' version is '/usr/lib/nvidia-325/alt_ld.so.conf'

সুতরাং, নিম্নলিখিত করুন:

sudo update-alternatives --config i386-linux-gnu_gl_conf

তারপরে সেরা বিকল্পটি নির্বাচন করুন (আমি i386-linux-gnu / mesa / ld.so.conf নির্বাচন করেছি): নীচের আউটপুটে বিকল্প i386-linux-gnu_gl_conf (/etc/ld.so.conf সরবরাহ করার জন্য) দুটি বিকল্প রয়েছে। ডি / মধ্যে i386-লিনাক্স-gnu_GL.conf)।

  Selection    Path                                     Priority   Status
------------------------------------------------------------
* 0            /usr/lib/nvidia-325/alt_ld.so.conf        8602      auto mode
  1            /usr/lib/i386-linux-gnu/mesa/ld.so.conf   500       manual mode
  2            /usr/lib/nvidia-325/alt_ld.so.conf        8602      manual mode

Press enter to keep the current choice[*], or type selection number: 1
update-alternatives: using /usr/lib/i386-linux-gnu/mesa/ld.so.conf to provide /etc/ld.so.conf.d/i386-linux-gnu_GL.conf (i386-linux-gnu_gl_conf) in manual mode

এটি সম্পন্ন করার পরে, চালানোর চেষ্টা করুন:

sudo ldconfig

এবং তারপরে আপনার কাজ শেষ।


2
আমার ঠিক একই ছিল এবং এটি নিখুঁতভাবে কাজ করেছে, অনেক অনেক ধন্যবাদ (উবুন্টু 13.10)
এক্সট্রেমেসআপ্রেসিসি

বিরক্তিকর - আমার কাছে কেবলমাত্র ld.so.conf বিকল্প রয়েছে, সুতরাং "লিঙ্ক গ্রুপে কেবলমাত্র একটি বিকল্প আছে i386-linux-gnu_gl_conf (/etc/ld.so.conf.d/i386-linux-gnu_GL.conf সরবরাহ করা) : /usr/lib/i386-linux-gnu/mesa/ld.so.conf। কনফিগার করার মতো কিছুই নেই। "
dez93_2000

আপনি কোন এনভিডিয়া প্যাকেজ ইনস্টল করেছেন? আপনি কি libgl1-mesa-glx ইনস্টল করেছেন? বিশ্বাসভাজন উপর libgl1-Mesa-GLX: মধ্যে i386 /usr/lib/i386-linux-gnu/mesa/ld.so.conf (এবং assocaited libGL.so.1 * লাইব্রেরি উপলব্ধ করা হয়।
eurythmia

দুর্দান্ত উত্তর। এনভিডিয়া ড্রাইভার - QOpenGLShaderProgram::uniformLocation( matrix ): shader program is not linkedএবং [xcb] This is most likely caused by a broken X extension library- এ স্যুইচ করার পরে আমি কিউটি প্রোগ্রাম চালাতে ত্রুটি পেয়েছি এবং এটি অনুসরণ করে এটি সাফ হয়ে গেছে।
ম্যাথিউ

ধন্যবাদ। এটি 14.04 এও কাজ করে। এটি অন্য কোনও প্রোগ্রামকে প্রভাবিত করছে না। এটা হবে? এক জিনিস ঠিক করার মতো 10 টি ভাঙা হয়।
সুধীর খঙ্গার

51

স্কাইপ ইনস্টল করার পরে আমার একই সমস্যা হচ্ছে ... তাই আপনি এই ত্রুটিটি ঠিক করতে কোনও কাজ করতে পারেন ..

প্রথম পদটি নিম্নলিখিত কমান্ড দ্বারা অ্যাপ্লিকেশনটি চালিত হয় ... উদাহরণস্বরূপ আই এম স্কাইপ চালানো ..

LD_PRELOAD=/usr/lib/i386-linux-gnu/mesa/libGL.so.1 skype

উৎস

দ্বিতীয় যে আমি কি

sudo nano /etc/ld.so.conf.d/skype.conf

এবং এটিতে নিম্নলিখিত লাইনটি যুক্ত করুন

/usr/lib/i386-linux-gnu/mesa/

সংরক্ষণ করুন এবং প্রস্থান করুন

এবং সর্বশেষে চালানো

sudo ldconfig -v

আমি আশা করি এটি আপনার libGL.so.1 ত্রুটিটি যেমনটি ঘটেছিল ঠিক তেমন ঠিক করবে

আপনিও libGL.so.1 খুঁজে পেতে পারেন

   find / -name libGL.so.1

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

এই ভাল কাজ! অবশেষে! এছাড়াও, এই পদক্ষেপগুলির আগে @ jdp407 যা বলেছিল তা করা আমার মনে আছে।
গুন্ডারস মেইস

1
যদিও এই সমাধানটি ভাল, এটি একবারে একবারে অ্যাপ্লিকেশনগুলি হ্যান্ডল করে। আপনার যদি অন্য 32 টি বিট অ্যাপ্লিকেশন থাকে যার জন্য একটি libGL.so প্রয়োজন, তবে আপনাকে সেই অ্যাপ্লিকেশনগুলির প্রক্রিয়াটি পুনরাবৃত্তি করতে হবে। আপডেট-বিকল্পগুলি ব্যবহার করে বিশ্বব্যাপী এই পছন্দটি নির্ধারণ করা সেরা
ইউরিথমিয়া

@ ইউরিথমিয়া আপনি এটিকে / lib এ অনুলিপি করতে এবং sudo ldconfig চালাতে এবং এটি বিশ্বব্যাপী অ্যাক্সেস পাবেন
কাসিম

দুর্ভাগ্যক্রমে xubuntu এ আমার জন্য কাজ করে না, "এলআরআর: এলডি.সো: অবজেক্ট '/usr/lib/i386-linux-gnu/mesa/libGL.so.1' এলডি_প্রেলএড থেকে প্রিললোড করা যায় না (ভাগ করা বস্তুর ফাইল খুলতে পারে না) : উপেক্ষিত "; skype.conf ইত্যাদি / dbus-1 / system.d এ /ld.so.conf.d/ এ নেই এবং অন্যরকম ফাইল বলে মনে হচ্ছে ...
dez93_2000

12

এখানে সংশোধনগুলি কাজ করবে, তবে এর চেয়ে সহজ একটি রয়েছে।

যদি skypeকাজ না করে তবে কাজ optirun skypeকরে তবে আপনি এটি দিয়ে এটি ঠিক করতে পারেন:

sudo apt-get install bumblebee-nvidia --reinstall

(এএমডি কার্ডের সাথে বাম্বলবি ব্যবহারকারী লোকদের সমতুল্য পুনরায় ইনস্টলেশন করার প্রয়োজন হতে পারে)।

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


3
এটা আমার জন্য ভাল কাজ করে ... ধন্যবাদ। উবুন্টু জিনোম 14.04
অ্যাডিটিয়া

1
অবশ্যই সবচেয়ে সহজ সমাধান! আমি জানতাম যে ইন্সটলেশন অর্ডারটির সাথে কিছু করার ছিল কারণ আমি সম্প্রতি আমার সিস্টেমে দুবার ইনস্টল করেছি (উবুন্টু 14.04 64 বিট + এনভিডিয়া অপ্টিমাস গ্রাফিক্স কার্ড)) প্রথমবার আমি প্রথম স্কাইপ এবং তারপরেই বম্বলবি ইনস্টল করেছি, সেক্ষেত্রে আমার কোনও সমস্যা ছিল না। দ্বিতীয়বার আমি প্রথম বম্বলবি ইনস্টল করেছিলাম এবং তারপরে স্কাইপ এবং এই সমস্যাটি দেখা দেয়। এই উত্তরে দেখানো হয়েছে কেবল বাম্বি-এনভিডিয়া পুনরায় ইনস্টল করা সমস্যার সমাধান করেছে!
সিসকো

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

2

ডেস্কটপ এন্ট্রি সম্পাদনা করুন:

sudo nano /usr/share/applications/skype.desktop

এক্সিকিউটে এতে পরিবর্তন করুন:

Exec=env PULSE_LATENCY_MSEC=60 LD_PRELOAD=/usr/lib/i386-linux-gnu/mesa/libGL.so.1 skype %U

এটি চালায়:

LD_PRELOAD=/usr/lib/i386-linux-gnu/mesa/libGL.so.1

স্কাইপ চালানোর আগে আপনি যখন এটি লঞ্চার / ডেস্কটপ এন্ট্রি দিয়ে শুরু করবেন।

এটি যতক্ষণ না আপনি অ্যাপ্লিকেশন লঞ্চারটি ব্যবহার করে এটি শুরু করবেন ততক্ষণ তা সূক্ষ্মভাবে চালানো উচিত।


ফাইলটি libGL.so.1সেই পথে নাও থাকতে পারে (এটি আমার পক্ষে নয়, ডেবিয়ান 8 / জেসির উপর)। পথ তিনি তোমাদের মধ্যে বাস করা আবশ্যক জন্য LD_PRELOADকেবল আপনার সিস্টেমে মধ্যে i386 ফাইল খুঁজে: sudo find / -name libGL.so.1 2>/dev/null। আমি এটি খুঁজে পেয়েছি /usr/lib/mesa-diverted/i386-linux-gnu/libGL.so.1এবং এটি ব্যবহার করে এটি দুর্দান্ত কাজ করেছে LD_PRELOAD
f.ardelian

1

আমি নিশ্চিত নই যে এটি স্পষ্ট করতে বা না সহায়তা করবে তবে স্কাইপ এবং libGL.so.1 নিয়ে আমার একই সমস্যা ছিল। একটি অপ্টিমাস কার্ড এবং ভুগলবি দিয়ে 13.04 চলছে।

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


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

1

আমার একই সমস্যা ছিল এবং আমার 64৪ বিট সিস্টেমে 32 বিট লিব ইনস্টল করে এটি সমাধান করা হয়েছে: apt-get install ia32-libs


0

টার্মিনাল থেকে (যা প্রয়োজন হলে) এটির যা প্রয়োজন তা ডাউনলোড করার চেয়ে অফিসিয়াল স্টিম পৃষ্ঠা থেকে সর্বশেষতম সংস্করণটি ডাউনলোড করুন। যদি আপনি ইতিমধ্যে না থাকেন তবে ভুগল পিপিএ যুক্ত করুন।

sudo add-apt-repository ppa:bumblebee/stable

এই আদেশ দিয়ে এটি আপডেট করুন:

sudo apt-get update

এবং ইনস্টল করুন virtualgl(এটি libgl.so.1আমার জন্য ত্রুটির জিনিসগুলি বাষ্পে সমাধান করেছে )

sudo apt-get install virtualgl

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