Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум на CrossPlatform.RU _ Qt Система рисования. Печать _ Не запускается статическая программа

Автор: KuvshinoF 16.11.2020, 14:44

Есть opengl-программа, собранная статически под ubuntu 14 - мне ее надо запустить под Аstra Linux. При запуске приложения выдается ошибка типа realloc from /lib/x86_64_linux-gnu/libc.so.6 invalid pointer под адресу .....В то же время пересобранное под AstraLinux данное приложение корректно запускается и работает. И статически собранные под Ubuntu 14 и простейшее приложение, и opengl Qt-пример тоже корректно работают под AstraLinux. Так в чем может быть дело с запуском моего приложения и как это поправить?

Автор: Iron Bug 17.11.2020, 21:39

скорее всего, у тебя какие-то OpenGL-ные библиотеки юзают одну версию libc, а твоя статическая сборка пытается тащить с собой другую. не линкуй её статически.
там ещё могут быть и другие зависимости такого рода.

Автор: KuvshinoF 18.11.2020, 22:20

Понятно, только очень странно, что qt-ый opengl-ый пример работает корректно, да и моя программа ничего особенного из opengl не использует. А как именно можно не линковать статически libc?

Автор: Iron Bug 19.11.2020, 4:53

ну, это ты написал, что ты свою программу собираешь статически. там и смотри, где линкуешь. я хз как ты там это делаешь.
зачем ты вообще таким занимаешься? собери на целевом дистрибутиве и не мучайся.

Автор: KuvshinoF 19.11.2020, 18:00

Да описанным везде стандартным способом собрал Qt статически, в проекте прописал Qt+=static и все...А целевой дистрибутив не всегда есть под рукой, да и он достаточно большого размера, чтобы с собой таскать его.

Автор: Iron Bug 24.11.2020, 0:07

при сборке "статики" обычно наружу торчат уши стандартных системных библиотек и очень часто - различных реализаций библиотек криптографии. поэтому я бы не рекомендовала так делать. лучше всего предоставлять сорцы и юзеры сами соберут себе софт с теми библиотеками, которые у них установлены. ты не напасёшься сборок на все случаи жизни.

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)