لقد قمت فقط بإعادة تثبيت 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
كيف يمكنني حل هذه المشكلة؟
يجب عليك تثبيت الحزمة "libgl1-mesa-dev":
Sudo apt install libgl1-mesa-dev
لا تحتاج إلى تثبيت أي شيء. libGL
مثبت بالفعل مع Ubuntu ، ما عليك سوى ربطه برفق. (تم اختباره لـ ubuntu 14.x و 15.x ، قد تعمل مع الإصدارات الأحدث)
إليك كيفية القيام بذلك:
$ 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
نظامي هو 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
وإعادة فحص المكتبة.
اكتب:
yum provides */libGL.so
بعد تقديم:
yum install mesa-libGL-devel mesa-libGLU-devel
الوحدة النمطية gui Qt هي متضمنة بشكل افتراضي . إذا كنت لا ترغب في استخدامه في مشروع (على سبيل المثال ، فهو مكتبة أو يستخدم stdio فقط) ، تحتاج إلى تحديد ذلك في ملف .pro.
QT -= gui
ولن يحاول الرابط العثور على lGL بغض النظر عما إذا كان مثبتًا أم لا.
حالتي غريبة بعض الشيء ، لأن السبب الرئيسي لاستخدام كيو تي هو إنشاء واجهة المستخدم الرسومية. من المؤكد أن تثبيت مكتبة GL ليس أمرًا صعبًا ، أردت فقط أن أعرف لماذا أراد تطبيق Hello World السريع والمتسخ.
هذا عملت لي:
Sudo ln -s /usr/lib/libEGL1.so /usr/lib/libGL.so