LINUX.ORG.RU

Qt Недостает некоей библиотеки GL . cannot find -lGL

 , , ,


0

1

Решил поработать с QML и на Hello World уже возникла проблема - обнаружилось что линковщик не нашел -lGL . Что это за либа мне понять исключительно не легко.Т.к. в pro-файле нет такой зависимости, а лезть и докачивать библиотеки по первому найденному совету в тырнетах неохота.Может кто скажет как решал это дело или в чем моя криворукость?

Из консоли :

:-1: ошибка: cannot find -lGL

:-1: ошибка: collect2: error: ld returned 1 exit status

Это либо mesa, либо проприетарный драйвер nvidia/fglrx.

deadNightTiger ★★★★★ ()
Ответ на: комментарий от CrossFire

Мне не понятно почему возникла проблема с libgl когда его и в помине нет в проекте. Да,все советуют «установи libgl-dev\libgl-mesa-dev\etc.»(хотелось бы еще узнать что именно мне теперь ставить) Я уже искал и находил такой ответ.Только пока не вкурил на кой чёрт мне качать дев-пак для сборки проекта в котором нет прямой зависимости с этой либой.А так же интересно теперь что надо учитывать чтобы подготовить приложение для развертки.

mister_LOB ()
Ответ на: комментарий от mister_LOB

Мне не понятно почему возникла проблема с libgl когда его и в помине нет в проекте.

Возможно, Qt отрисовывает окошки с помощью gl backend. Мне это совершенно не кажется принципиальным — раз Qt требуется, значит ставим.

хотелось бы еще узнать что именно мне теперь ставить

Любой рабочий вариант на самом деле.

А так же интересно теперь что надо учитывать чтобы подготовить приложение для развертки.

man ldd

CrossFire ★★★★★ ()
Ответ на: комментарий от mister_LOB

Пишу тут чтобы ,возможно, получить готовый ответ и совет как с этим жить дальше.

ЛОР — это не твоя личная армия.

a1batross ★★★★★ ()
Ответ на: комментарий от a1batross

Не понимаю к чему вы это.

Здесь же форум.При том явно не экспертов по цветоводству или ,например, археологов.

Так что логично написать там где ,возможно, имеются люди с необходимыми знаниями и желанием помочь.

mister_LOB ()

Что это за либа мне понять исключительно не легко.

это либа opengl.

Т.к. в pro-файле нет такой зависимости

она есть у самого Qt. скорее всего, Qt автоматически подсовывает ее в твой проект, даже если она тебе не нужна.

Может кто скажет как решал это дело

я никак не решал, но в Ubuntu эта либа установлена искоробочно, не?

$ locate libGL.so.1
/usr/lib/x86_64-linux-gnu/mesa/libGL.so.1
/usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.2.0
$ dpkg -S libGL.so.1
libgl1-mesa-glx:amd64: /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1
libgl1-mesa-glx:amd64: /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.2.0
waker ★★★★★ ()
Ответ на: комментарий от mister_LOB

Нет. Логично нагуглить и применить решение. Как минимум потому, что это тупо быстрее, чем создавать тему.

t184256 ★★★★★ ()
Ответ на: комментарий от anonymous

На либы, которые нужно прилинковать.

anonymous ()
Ответ на: комментарий от whoami

точно, спасибо за поправку. всегда забываю про -dev пакеты.

waker ★★★★★ ()
Ответ на: комментарий от a1batross

Логичнее поискать самому. Быстрее, чем катать тему.
Нет. Логично нагуглить и применить решение. Как минимум потому, что это тупо быстрее, чем создавать тему.
Я уже искал и находил такой ответ.

Как уже писал выше - искал,находил почти один и тот же ответ.(для Qt 4 , 5 RC2 и 5.2 кажется) Не применял. Поскольку в одном из советов говорили что требуется 32х битная либа, а мне мучать систему возможными конфликтами неохота. Я уж больно неофит.

И не считаю что зря это сделал.

mister_LOB ()
Ответ на: комментарий от waker

а это не принципиально к карточкам и их дровам?

Благодарю за предельную подробность.

Сейчас просто работаю в другой системе и не имел возможности проделать манипуляции по установке.

mister_LOB ()
Ответ на: комментарий от mister_LOB

а это не принципиально к карточкам и их дровам?

libGL.so это симлинк, который, по идее, указывает на нужную библиотеку — будь то меса, или nvidia, и т.п.

waker ★★★★★ ()
Ответ на: комментарий от mister_LOB

QML
libgl в помине нет в проекте

лол,что? зачем было выпиливать libgl из QML?

anonymous ()
Ответ на: комментарий от ZenitharChampion

Я бы за такие советы стрелял сразу. Причём в ноги советующему.

Deleted ()
Ответ на: комментарий от anonymous

нет

Сам знаешь кого ответ: qt 5.3 и qt 5.5

waker прав.
OpenGL не было в зависимостях у Qt 4. В Qt 5 тулкит раздули и у любого GUI-приложения на Qt 5 имеется зависимость от libGL.

EXL ★★★★★ ()
Последнее исправление: EXL (всего исправлений: 1)
Ответ на: комментарий от waker

А почему тролля? Может парень застрял во времена относительно легковесного Qt 4 и не знает, что теперь helloworld на Qt 5 помимо ~30 MB ICU тянет ещё в зависимостях и OpenGL.

Почитай тред по ссылке, которую я кинул. Там тоже многие не знали, что Qt 5 внезапно растолстел.

EXL ★★★★★ ()
Ответ на: комментарий от EXL

А почему тролля?

потому что у не-троллей обычно факты либо подкрепляются пруфами, либо пишется что-то вроде «IMHO».

waker ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.