Не могу запустить программу на C ++ с Geany или Terminal на Raspbian (Debian)

(Я не совсем уверен, если это место, чтобы спросить об этом, при необходимости, пожалуйста, перейдите в другое сообщество Stack Exchange — если это возможно)

Я изучаю C ++ на своем Raspberry Pi (с Raspian (Debian), кстати), и я создал простую программу Hello World с Geany IDE. Я компилирую, собираю программу, а затем запускаю ее. Однако я получаю ошибку:

./geany_run_script.sh: 5: ./geany_run_script.sh: ./HelloWorld: Permission denied------------------
(program exited with code: 126)
Press return to continue

Команда компиляции g++ -c "%f" и команда построения g++ -o "%e" "%f",
Если вы считаете это полезным, тип файла .cxx,

Я хотел бы использовать Geany для запуска из-за удобства. К сожалению, я не могу запустить его с терминалом как суперпользователь, даже после использования chmod +x,

0

Решение

Ваша проблема, похоже, не относится к Geany IDE. Так что вам нужно изменить права на исполняемый файл. Пожалуйста, попробуйте следующую команду: chmod 777 your_filename

0

Другие решения

Для запуска файла в Linux пользователь должен иметь x либо на пользователя, либо на группу. Это выглядит как
---x--x--x или в шестнадцатеричном 0111 в файловых системах POSIX. Так chmod +x должен работать на большинстве систем, например, EXT [2 | 3 | 4] или XFS. Таким образом, ваш старт был правильным. Кстати: при компиляции C-файла с помощью Geany, он уже установлен как исполняемый.

Как вы упомянули, ваш USB-накопитель отформатирован в FAT32, который не поддерживает POSIX, поэтому chmod не даст никакого эффекта. Однако права доступа к файлу, например, Выполнение чего-либо основано на использовании маски для монтажа. В традиционных системах Linux это можно настроить в /etc/fstab, Используя udev или что-то еще, где-то еще это можно также настроить (читай: чем это зависит, что вы используете для монтирования флешки)

Кроме того, крепление может установить устройство как noexec что в значительной степени является хорошей идеей для устройств, таких как USB-флешки или неизвестные CD / DVD. Однако, если этот флаг установлен во время монтирования, ваши файлы на этом устройстве не могут быть выполнены — разрешены только чтение и запись. Опять же это может быть установлено на /etc/fstab или, может быть, где-то еще, в зависимости от того, что вы могли бы использовать в дополнение.

Чтобы проверить это, выполните команду mount без параметров и. Это даст вам список, где ваше устройство USB должно быть включено.

0

По вопросам рекламы [email protected]