Qt creator не удалось запустить программу путь или права недопустимы

Я вижу несколько способов разрешения зависимостей.
Во-первых, можно собрать libcurl и libjansson статически и прилинковать к вашему приложению.
Во-вторых, помимо статических libcurl и libjansson можно собрать сам Qt тоже в статику и прилинковать к вашему приложению. На выходе вы получите исполнительный файл большого размера (размер можно урезать с помощью утилиты upx), который будет запускаться во всех современных дистрибутивах GNU/Linux, где есть иксы.
В-третьих, самый рациональный способ — собрать DEB- или RPM-пакет, в котором в зависимостях прописать пакеты libcurl3(4), libjansson4, и необходимые модули с qt4(5).

Ну а запустить сам бинарь просто. У вас в Qt Creator’е есть переменная окружения LD_LIBRARY_PATH. Просто скопируйте в терминал её значение перед запуском программы:

LD_LIBRARY_PATH=»/opt/QtSDKs/Qt5.3.1/5.3/gcc_64/lib:/opt/QtSDKs/Qt5.3.1/5.3/gcc_64/lib:/home/user/projects/jansson/lib:$LD_LIBRARY_PATH» ./my_cool_app

Curl у вас, похоже, собран статически. Попробуйте собрать jansson тоже в статику. Тогда ошибки error while loading shared libraries: libjansson.so.4: cannot open shared object file: No such file or directory вы не получите.

Изучение Qt Creator | Урок #2 — Создание приложения на C++

Ответ написан более трёх лет назад
Комментировать
Нравится 5 Комментировать
Ответы на вопрос 1

Вероятно, папки с библиотеками, которые вы используются, отсутствуют в путях для поиска разделяемых библиотек.

Если используете linux, то можете попробовать запустить свою программу предварительно добавив к переменной окружения LD_LIBRARY_PATH пути к соответствующим папкам.

Ответ написан более трёх лет назад
Нравится 1 7 комментариев

не помогло. не знаю в чем дело, но вот если я заменю $$PWD на . то проблемы возникают только при jansson.so

export LD_LIBRARY_PATH=»./jansson:./curl»
./myapp

и это не работает? Очень странно, могу тогда только гадать, можете попробовать временно добавить копии используемых библиотек в /usr/lib, затем вызвать ldconfig от суперпользователя и попробовать заново запустить программу? Если поможет, то делать deb пакет можно и так, в любом случае вы при установке разделяемые библиотеки отправите куда-то туда же

Я уже окончательно запутался потому, что программа начала запускаться даже если этих папок с библиотеками нет под боком.

> туда установятся библиотеки, то на другой машине оно у меня не работает

либо ошибка не в отсутствующей библиотеке, либо вы просто неправильный пакет сделали. Проверьте, а попали ли вообще библиотеки в пакет?

Читайте также:
Кто делает программу голос

Источник: qna.habr.com

Не удалось запустить программу. Путь или разрешения неверны? в Qt

Я загрузил проект с открытым исходным кодом Qt Mobility. У меня был набор демонстрационных приложений. И когда построил его и запустил приложение, я получил эту ошибку:

не удалось запустить программу. Путь или разрешения неправильные?

Запуск Qt приложений .exe вне Qt Creator

может кто-нибудь сказать мне, что это за проблема?

обновление:

У меня есть включить «.pro » содержимое файла:

TEMPLATE = app TARGET = writemessage QT += gui include(../examples.pri) CONFIG += mobility MOBILITY = messaging INCLUDEPATH += ../../src/messaging HEADERS += messagesender.h SOURCES += messagesender.cpp main.cpp symbian:TARGET.CAPABILITY = NetworkServices LocalServices ReadUserData WriteUserData UserEnvironment ReadDeviceData WriteDeviceData
автор: mmoment

7 ответов

Я думаю, что проблема, с которой вы столкнулись здесь, — это либо права пользователя исполняемого файла, либо неправильный путь сборки.

во — первых, попробуйте установить путь сборки в разделе «Проекты» — «общие» — каталог сборки на правильный путь. Если это не сработает, откройте терминал, перейдите к пути сборки и выполните./ QtBuildProgram. Если это не сработает, взгляните на права пользователя (ls-a ./QtBuildProgram ), возможно, исполняемые права не предоставляются, потому что вы запускаете Создателя в другом режим пользователя как эмулятор терминала.

чтобы быть уверенным, выполните sudo chmod u+x QtBuildProgram, а затем выполните программу из командной строки, введя./ QtBuildProgram

Это также должно позволить вам снова запустить программу из QtCreator.

автор: mmoment

У меня была такая же проблема в Windows. Я нашел ответ. Вам нужно проверить параметр «рабочий каталог» в разделе «выполнить настройки». Я изменил его на тот же путь, что и мой каталог сборки, и он работал.

я запускал QT как администратор.

автор: gl3829

мой mac не был установлен valgrind по умолчанию, поэтому мне пришлось

brew install valgrind

вернитесь к Qt Creator, а в проектах — > Run — > Valgrind Settings

укажите исполняемый файл Valgrind на установленную версию brew, которую вы можете найти, введя which valgrind в командной строке.

наконец из-за сообщения об ошибке здесь я понял, что valgrind 3.13 имеет ошибку и не работает, и valgrind 3.12 также не работает на macs, и mac os high sierra не поддерживается valgrind. Так что вы в основном из смотреть до 3.14 приходит.

Читайте также:
Можно оформить резервирование товара в программе

автор: Luke Murray

в моем случае это было потому, что у меня 32-разрядный процессор, и он создавал 64-разрядные исполняемые файлы. Я понял это только после того, как попытался запустить его из командной строки.

автор: Skyler

проверьте настройки запуска и посмотреть, если exe путь существует и файл построен там. Если вы используете windows 7 или windows 8, задайте для параметров исполняемого файла qtcreator значение «Запуск от имени администратора».

Источник: askdev.ru

Не удалось запустить программу. Неправильный путь или разрешения? в Qt

Я загрузил проект с открытым исходным кодом Qt Mobility. У меня был набор демонстрационных приложений. И когда я построил его и запустил приложение, я получил эту ошибку:

Не удалось запустить программу. Неправильный путь или разрешения?

Может кто подскажет, в чем может быть эта проблема?

ОБНОВИТЬ:

Запуск /Users/xxxxx/Qt/qt-mobility-opensource-src-1.0.2/config.app/Contents/MacOS/config . Не удалось запустить программу. Неправильный путь или разрешения?

Я включил содержимое файла «.pro»:

TEMPLATE = app TARGET = writemessage QT += gui include(../examples.pri) CONFIG += mobility MOBILITY = messaging INCLUDEPATH += ../../src/messaging HEADERS += messagesender.h SOURCES += messagesender.cpp main.cpp symbian:TARGET.CAPABILITY = NetworkServices LocalServices ReadUserData WriteUserData UserEnvironment ReadDeviceData WriteDeviceData

Это Qt Creator? Работает ли при запуске из командной строки? Также было бы полезно, если бы вы разместили свой файл .pro. — laalto

Запускать из командной строки не пробовал. Я только учусь этому. Я импортировал образец приложения для обмена сообщениями, который был частью проекта с открытым исходным кодом, в создатель Qt, и затем у меня возникла эта проблема. Я обновил свой вопрос содержимым файла .pro. — Krishnan

9 ответы

Я думаю, что проблема, с которой вы столкнулись, связана либо с правами пользователя исполняемого файла, либо с неправильным путем сборки.

Сначала попробуйте указать правильный путь для пути сборки в разделе «Проекты» — «Общие» — «Каталог сборки».

Если это не сработает, откройте терминал, перейдите по пути сборки и выполните ./QtBuildProgram

Если это не сработает, взгляните на права пользователя. ls -a ./QtBuildProgram

Возможно, права на исполняемый файл не предоставлены, потому что вы запускаете Creator в другом пользовательском режиме в качестве эмулятора терминала.

Читайте также:
Как сохранить коллаж в программе фотоколлаж

Чтобы быть уверенным, выполните sudo chmod u+x QtBuildProgram а затем выполните программу из командной строки, набрав ./QtBuildProgram

Это также должно позволить вам снова запустить программу из QtCreator.

ответ дан 03 мая ’19, 05:05

У меня была такая же проблема в Windows. Я нашел ответ. Вам необходимо проверить параметр «Рабочий каталог» в разделе «Параметры запуска». Я изменил его на тот же путь, что и мой каталог сборки, и он сработал.

Я запускал QT как администратор.

ответ дан 20 авг.

На моем Mac по умолчанию не был установлен valgrind, поэтому мне пришлось

brew install valgrind

Вернитесь в QT Creator и в Projects -> Run -> Valgrind Settings

Направьте исполняемый файл Valgrind на установленную версию brew, которую вы можете найти, набрав which valgrind в командной строке.

Наконец из-за отчета об ошибке здесь Я понял, что valgrind 3.13 имеет ошибку и не работает, и valgrind 3.12 также не работает на Mac, а mac os high sierra не поддерживается valgrind. Так что вы в основном вне поля зрения, пока не появится версия 3.14.

Создан 09 июля ’18, 03:07

В моем случае это произошло из-за того, что у меня 32-битный процессор и он собирал 64-битные исполняемые файлы. Я понял это только после попытки запустить его из командной строки.

Проверьте настройки запуска и посмотрите, существует ли путь exe и создается ли там файл. Если вы используете Windows 7 или Windows 8, установите для исполняемого файла qtcreator значение «Запуск от имени администратора».

Проверьте настройки антивируса.

Это была моя проблема.

Создан 09 июля ’18, 03:07

В моем случае эта ошибка была вызвана пробелом в начале пути «Рабочий каталог» в «Параметры запуска».

Создан 17 июля ’19, 15:07

В моем случае эта ошибка возникла из-за того, что антивирус блокировал запуск exe-файла. Я просто отключил Avira Shield на некоторое время, и это сработало.

Создан 02 июля ’20, 14:07

В моем случае это произошло потому, что мне не хватало этих двух строк кода в верхней части проекта. Убедитесь, что они у вас есть без пробелов над ними:

#! /usr/bin/env python # -*- coding: utf-8 -*-

Создан 23 июля ’16, 23:07

Источник: stackovergo.com

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru