Политика конфиденциальностиКонтактыО сайтеОтзывыGitHubDonate
© EVILEG 2015-2018
Рекомендует хостинг
TIMEWEB
30 июля 2018 г. 16:32

Не запускается исполняемый файл приложения, созданного в qtcreator qt5

Добрый день! Недавно выполнил сборку библиотеки Qt5.11.1 и qtcreator на одноплатном компьютере ODROID-XU4 с Ubuntu 18.04 по гайдам в сети. Все прошло хорошо, кроме одного недоразумения. В qtcreator приложение запускается, но в папке сборки исполняемый файл имеет иконку простого файла (не ромбиком) и не запускается: https://ibb.co/mm4LpT

К слову сказать, исполняемый файл самого qtcreator точно такой же, но он хотя бы запускается из терминала.
Подскажите, в чем может быть причина, куда копать? Сборка qt5 занимает 6-8 часов и это уже была шестая попытка, сил уже нет.



9

Могу предположить, что ему не даны права исполнения.

Можно попробовать исправить так из консоли
sudo chmod +x untitled2

0

Спасибо за ответ, но к сожалению эта команда из терминала не помогает. Ничего не происходит, в процессах untitled2 отсутствует.

0

Ну это только даёт права выполнения, а потом нужно попробовать его запустить.

sudo chmod +x untitled2
./untitled2

Вы же так делали?
1

Извиняюсь, торможу! Так запускается!

0

А как можно дать права выполнения навсегда и запускать не из терминала а по двойному клику?


0

Тут наверное уже от операционной системы будет зависеть.

У меня в KDE Neon не нужно это настраивать, но вот есть вариант настройки для обычной Ubuntu, который на форумах предлагают

Follow these steps:

  • Hit Alt+F2 , type dconf-editor and hit ``Enter.

  • In dconfg-editor goto: org ➤ gnome ➤ nautilus ➤ preferences

  • Click on executable-text-activation and from drop down menu select:

Не совсем уверен, насколько это будет рабочий вариант. Но всё сводится к тому, чтобы настроить сам файловый менеджер
0

Нашел другое решение. В файле .pro проекта добавил:

QMAKE_LFLAGS += -no-pie

Поведение происходит потому, что новые дистрибутивы ubuntu устанавливают флаг GCC по умолчанию -pie, который отмечает e_type как ET_DYN в двоичном файле. Следовательно, операционная система распознает как общую библиотеку.

Чтобы обойти это, может потребоваться добавить -no-pie в опции компилятора.




Теперь значек сменился на ромбик и исполняемый файл запускается. Ох уж эта новая ubuntu.

1

Свойство и права файла с помощью chmod и chown изменяются навсегда, а запуск файла по команде с клика ярлыка делается просто: файл кладется в /bin или в /usr/bin и потом в свойства ярлыка для запуска указывается имя файла.

1

Буду знать, спасибо!

0

Комментарии

Только авторизованные пользователи могут публиковать комментарии.
Пожалуйста, авторизуйтесь или зарегистрируйтесь
КА
19 февраля 2019 г. 18:32
Кристина Афанасьева

C++ - Тест 006. Перечисления

  • Результат:70баллов,
  • Очки рейтинга1
КА
19 февраля 2019 г. 18:26
Кристина Афанасьева

C++ - Тест 004. Указатели, Массивы и Циклы

  • Результат:60баллов,
  • Очки рейтинга-1
КА
19 февраля 2019 г. 18:00
Кристина Афанасьева

C++ - Тест 002. Константы

  • Результат:50баллов,
  • Очки рейтинга-4
Последние комментарии
21 февраля 2019 г. 12:51
Евгений Легоцкой

Иногда CMake приходится перезапускать начисто, не обновляет кэш
R
21 февраля 2019 г. 12:29
RandyGallup

Я указал данные строки, т.к. без них у меня вылетала следующая ошибка: By not providing "FindQt5Core.cmake" in CMAKE_MODULE_PATH this project has asked CMake to find a package configurat...
21 февраля 2019 г. 12:08
BlinCT

Вот атк выглядит мой проектник, посмотрите его. cmake_minimum_required(VERSION 3.6)project(projecttimer)set(CMAKE_CXX_STANDARD 11)set(CMAKE_AUTOMOC ON)set(CMAKE_AUTORCC ON)find_packa...
21 февраля 2019 г. 12:04
BlinCT

Смотрите, если вы используете глобально для проекта -DCMAKE_PREFIX_PATH= то вам не надо уже указывать вот эти строкиset(Qt5Core_DIR "C:/Qt/5.12.1/mingw73_64/lib/cmake/Qt5Core")set(Qt5Gui_DIR...
R
21 февраля 2019 г. 11:54
RandyGallup

Даже не запускается. main.cpp у меня точно такой же, как в статье. CMakeLists.txt пришлось немного подправить (прикрепил ниже), т.к. не находились некоторые файлы. cmake_minimum_requi...
Сейчас обсуждают на форуме
21 февраля 2019 г. 8:58
Евгений Легоцкой

Ну у меня координаты передавались в зависимости от положения курсора мыши, а в вам по сути нужно будет аналогичным способом посылать даннные из полей ввода. Так что здесь скорее интерфес...
20 февраля 2019 г. 21:55
Евгений Легоцкой

Не до конца понимаю сути вопроса, наверное, нужно увидеть программный код и попытку его применения, но к методам базового класса можно обращаться в наследованном классе через вызов по имени ба...
MU
20 февраля 2019 г. 15:06
Maciej Urmański

Yes, ok I have solution! Thank you for directing me about annotate.:) Solution is: users_in = User.objects.filter(joined_users__goal=goal, joined_users__joined=True)
20 февраля 2019 г. 14:40
Евгений Легоцкой

Думаю, что ещё можно переопределить mouseReleaseEvent(QMouseEvent* event) у QTableView, который содержит модель и немного поиграться с индексом. Если это индекс, который соответству...
20 февраля 2019 г. 10:34
Евгений Легоцкой

Да, так тоже можно. Единственный момент в том, что lupdate не всегда понимает, к какому контексту это дело относится, и может запихать в левый контекст. В небольшом проекте это не критич...
Присоединяйтесь к нам в социальных сетях

Для зарегистрированных пользователей на сайте присутствует минимальное количество рекламы