it-swarm.asia

كيو تي: لا يمكن العثور على خطأ -LGL

لقد قمت فقط بإعادة تثبيت QtCreator ، وأنشأت مشروعًا جديدًا ( تطبيق Qt ) وقد حصل هذا بعد التجميع:

/usr/bin/ld: **cannot find -lGL**
collect2: error: ld returned 1 exit status
make: *** [untitled1] Error 1
18:07:41: The process "/usr/bin/make" exited with code 2.
Error while building/deploying project untitled1 (kit: Desktop Qt 5.1.0 GCC 32bit)
When executing step 'Make'

( المشروع فارغ ، لم أقم بأي تغييرات )

كيو تي الخالق 2.7.2
بناءً على Qt 5.1.0 (32 بت)
أوبونتو 13.04

كيف يمكنني حل هذه المشكلة؟

86
Hofmn

يجب عليك تثبيت الحزمة "libgl1-mesa-dev":

Sudo apt install libgl1-mesa-dev
130
Sayyed Hassan Amiri

لا تحتاج إلى تثبيت أي شيء. libGL مثبت بالفعل مع Ubuntu ، ما عليك سوى ربطه برفق. (تم اختباره لـ ubuntu 14.x و 15.x ، قد تعمل مع الإصدارات الأحدث)

  1. أولاً حدد موقع مكتبة GL
  2. ثم ربطه تحت/usr/lib
  3. إذا كانت المكتبة مفقودة ، فيمكن تثبيتها عبر حزمة libgl1-mesa-dev

إليك كيفية القيام بذلك:

$ locate libGL
/usr/lib/i386-linux-gnu/mesa/libGL.so.1
/usr/lib/i386-linux-gnu/mesa/libGL.so.1.2.0
/usr/lib/x86_64-linux-gnu/libGLEW.so.1.10
/usr/lib/x86_64-linux-gnu/libGLEW.so.1.10.0
/usr/lib/x86_64-linux-gnu/libGLEWmx.so.1.10
/usr/lib/x86_64-linux-gnu/libGLEWmx.so.1.10.0
/usr/lib/x86_64-linux-gnu/libGLU.so.1
/usr/lib/x86_64-linux-gnu/libGLU.so.1.3.1
/usr/lib/x86_64-linux-gnu/mesa/libGL.so.1
/usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.2.0
/usr/lib/x86_64-linux-gnu/mesa-egl/libGLESv2.so.2
/usr/lib/x86_64-linux-gnu/mesa-egl/libGLESv2.so.2.0.0
$ Sudo ln -s /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 /usr/lib/libGL.so
56
destan

نظامي هو Ubuntu 16.04 على كمبيوتر X86 (مع GPID NVIDIA Geforce).

تحقق من تحديد موقع ملف المكتبة في /usr/lib/x86_64-linux-gnu

ls -al /usr/lib/x86_64-linux-gnu/libG*

إذا رأيت الرابط المعطّل ، فأعد تثبيته libgl1-mesa-glx

Sudo apt install --resintall libgl1-mesa-glx

وإعادة فحص المكتبة.

1
Lastea

اكتب:

yum provides */libGL.so 

بعد تقديم:

yum install mesa-libGL-devel mesa-libGLU-devel
1
Shojib Mahmud

الوحدة النمطية gui Qt هي متضمنة بشكل افتراضي . إذا كنت لا ترغب في استخدامه في مشروع (على سبيل المثال ، فهو مكتبة أو يستخدم stdio فقط) ، تحتاج إلى تحديد ذلك في ملف .pro.

QT -= gui

ولن يحاول الرابط العثور على lGL بغض النظر عما إذا كان مثبتًا أم لا.

حالتي غريبة بعض الشيء ، لأن السبب الرئيسي لاستخدام كيو تي هو إنشاء واجهة المستخدم الرسومية. من المؤكد أن تثبيت مكتبة GL ليس أمرًا صعبًا ، أردت فقط أن أعرف لماذا أراد تطبيق Hello World السريع والمتسخ.

1
squeevee

هذا عملت لي:

Sudo ln -s /usr/lib/libEGL1.so /usr/lib/libGL.so
0
Sebastian Karlsson