LINUX.ORG.RU

Настройка запуска Desktop - приложения

 , ,


0

1

Привет всем!

Киньте ссылочкой, пожалуйста, как настроить запуск графического приложения в иксах без терминальной консоли? Где в иксах регистрируются приложения? Что спросить в поисковике?

Собираю простенькое графическое приложение, типа «HellowWord». Взять хотя-бы это для примера. Все собирается, нормально работает. Но только при запуске из терминала.

Thunar мой скомпилированный файл определяет только как «разделяемая библиотека», а нормальные (запускаемые) бинарники как «исполняемый». И ни из файлового менеджера ни при создании значка .desktop иксы «в упор не замечают» что мой файл тоже исполняемый. У меня xfdesktop в составе xfce4, хотя мне кажется это не принципиально. Как это лечится?

---

В общем, есть ответ. «Старое поведение» лечится опцией "-no-pie", но при этом уже не будет ASLR.



Последнее исправление: bigov (всего исправлений: 4)
Ответ на: комментарий от fluorite

Какая разница какая графическая библиотека? Можно набросать хоть в xcb, хоть glfw3, приложение чтобы создавалось графическое окно. Такая-же проблема, приложение не стартует из графического файлового менеджера. Прошу тех, кто не в теме - не флеймить!

bigov
() автор топика
Ответ на: комментарий от xmikex

Чтобы избавить от подозрений меня в идиотизме: бинарник собранного пол-года назад OpenGL приложения остался в исходниках - и он «Исполняемое Приложение». Сегодня пересобрал из того-же коммита - возникла «Разделяемая Библиотека»!

Еще идеи есть кроме того что автор тупит?

bigov
() автор топика
Ответ на: комментарий от xmikex

Ссылка есть в шапке топика. Мэйк-файла нет, сборка (g++ ver.7.2.0) просто из командной строки:

g++ main.cpp -o hello -lX11

В этом варианте Thunar v1.6.12. (десктопный менеджер Xfce 4.12) «тупит» и не понимает как это обрабатывать, хотя из баша командой "./hello" окошко открывается. Если же при сборке отключить ASLR опцией «no-pie»:

g++ main.cpp -no-pie -o hello -lX11

то приложение стартует без проблем кликом по файлу в Тунаре.

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

проблема не в Thunar. -pie это удел библиотек. Если хочешь исполняемый файл, то используй -no-pie. А bash делает то, что ты ему приказал - запускает файл. Добавить файлу расширение .png и bash все равно его будет запускать, в то время как Thunar попытается скормить его просмоторщику изображений.

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