Linux Mint поставил Arduino 1.8.10 Пытаюсь скомпилировать файл. Выдаёт ошибку доступа Код (C++): processing.app.debug.RunnerException at cc.arduino.Compiler.callArduinoBuilder(Compiler.java:317) at cc.arduino.Compiler.loadPreferences(Compiler.java:216) at cc.arduino.Compiler.build(Compiler.java:175) at processing.app.SketchController.build(SketchController.java:664) at processing.app.Editor$BuildHandler.run(Editor.java:1652) at java.lang.Thread.run(Thread.java:748) Caused by: java.io.IOException: Cannot run program "/home/zlata/arduino/arduino-builder": error=13, Отказано в доступе at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048) at java.lang.Runtime.exec(Runtime.java:620) at java.lang.Runtime.exec(Runtime.java:485) at processing.app.helpers.ProcessUtils.exec(ProcessUtils.java:11) at cc.arduino.Compiler.callArduinoBuilder(Compiler.java:297) ... 5 more Caused by: java.io.IOException: error=13, Отказано в доступе at java.lang.UNIXProcess.forkAndExec(Native Method) at java.lang.UNIXProcess.<init>(UNIXProcess.java:247) at java.lang.ProcessImpl.start(ProcessImpl.java:134) at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029) ... 9 more Попытался разрешить права на /home/zlata/arduino/arduino-builder всем на чтение, но ошибка осталась... Может кто-нибудь помочь?
Этот arduino-builder исполняемый файл, если права на исполнения отсутствуют для пользователя и(или) группы в которую входит пользователь, то запустить его на выполнение не получится.
Большое спасибо. Помогло. Но появилась другая ошибка... fork/exec /home/zlata/arduino/hardware/tools/avr/bin/avr-g++: permission denied Ошибка компиляции для платы Arduino Nano. Я так понимаю, нужно у этого файла поставить возможность обращения от текущего пользователя. Как можно всем файлам разрешить исполнения от текущего пользователя, без супер привилегий?
Как вы добиваетесь таких результатов? как выполнялась установка arduino 1.8.10?? С ардуино си-си достаточно скачать архив и выполнить распаковку, все необходимые привилегии уже выставлены и менять ничего не требуется. Привилегии суперпользователя совсем не требуются, для загрузки через последовательный необходимо будет включить пользователя в группу dialout. После подключения пользователя к группе незабудьте выполнить логаут и логин для пользователя.
вначале разархивировал в домашнюю папку. Потом на скриптах поставил бит на исполнение. запустил файл arduino-linux-setup.sh с параметром именем пользователя.
Вот результат распаковки архива arduino-1.8.10-linux64.tar.xz в домашнюю директорию, я показал только директорию с тулчейном avr Код (Text): alex@lenovo-e480:~$ tar -xf Загрузки/arduino-1.8.10-linux64.tar.xz -C ~ alex@lenovo-e480:~$ ls -l ~/arduino-1.8.10/hardware/tools/avr/bin/ total 30632 -rwxr-xr-x 1 alex alex 8317262 дек 12 2018 arduinoOTA -rwxr-xr-x 1 alex alex 683120 мар 8 2019 avr-addr2line -rwxr-xr-x 2 alex alex 711704 мар 8 2019 avr-ar -rwxr-xr-x 2 alex alex 938848 мар 8 2019 avr-as -rwxr-xr-x 2 alex alex 953344 мар 8 2019 avr-c++ -rwxr-xr-x 1 alex alex 679120 мар 8 2019 avr-c++filt -rwxr-xr-x 1 alex alex 953344 мар 8 2019 avr-cpp -rwxr-xr-x 1 alex alex 537192 июн 19 17:46 avrdude -rwxr-xr-x 1 alex alex 28344 мар 8 2019 avr-elfedit -rwxr-xr-x 2 alex alex 953344 мар 8 2019 avr-g++ -rwxr-xr-x 2 alex alex 949248 мар 8 2019 avr-gcc -rwxr-xr-x 2 alex alex 949248 мар 8 2019 avr-gcc-7.3.0 -rwxr-xr-x 1 alex alex 26016 мар 8 2019 avr-gcc-ar -rwxr-xr-x 1 alex alex 25984 мар 8 2019 avr-gcc-nm -rwxr-xr-x 1 alex alex 25984 мар 8 2019 avr-gcc-ranlib -rwxr-xr-x 1 alex alex 590464 мар 8 2019 avr-gcov -rwxr-xr-x 1 alex alex 479352 мар 8 2019 avr-gcov-dump -rwxr-xr-x 1 alex alex 500216 мар 8 2019 avr-gcov-tool -rwxr-xr-x 1 alex alex 3867408 мар 8 2019 avr-gdb -rwxr-xr-x 1 alex alex 745840 мар 8 2019 avr-gprof -rwxr-xr-x 4 alex alex 1187168 мар 8 2019 avr-ld -rwxr-xr-x 4 alex alex 1187168 мар 8 2019 avr-ld.bfd -rwxr-xr-x 1 alex alex 1896 мар 8 2019 avr-man -rwxr-xr-x 2 alex alex 692368 мар 8 2019 avr-nm -rwxr-xr-x 2 alex alex 871120 мар 8 2019 avr-objcopy -rwxr-xr-x 2 alex alex 1005424 мар 8 2019 avr-objdump -rwxr-xr-x 2 alex alex 711736 мар 8 2019 avr-ranlib -rwxr-xr-x 2 alex alex 487360 мар 8 2019 avr-readelf -rwxr-xr-x 1 alex alex 694768 мар 8 2019 avr-size -rwxr-xr-x 1 alex alex 683120 мар 8 2019 avr-strings -rwxr-xr-x 2 alex alex 871120 мар 8 2019 avr-strip Все файлы разрешены для выполнения Вот ваша аналогичная директория Код (Text): /home/zlata/arduino/hardware/tools/avr/bin -rw------- 1 zlata zlata 8317262 дек. 12 2018 arduinoOTA -rw------- 1 zlata zlata 683120 марта 8 2019 avr-addr2line -rw------- 1 zlata zlata 711704 марта 8 2019 avr-ar -rw------- 1 zlata zlata 938848 марта 8 2019 avr-as -rw------- 1 zlata zlata 953344 марта 8 2019 avr-c++ -rw------- 1 zlata zlata 679120 марта 8 2019 avr-c++filt -rw------- 1 zlata zlata 953344 марта 8 2019 avr-cpp -rw------- 1 zlata zlata 537192 июня 19 19:46 avrdude -rw------- 1 zlata zlata 28344 марта 8 2019 avr-elfedit -rwx------ 1 zlata zlata 953344 марта 8 2019 avr-g++ -rw------- 1 zlata zlata 949248 марта 8 2019 avr-gcc -rw------- 1 zlata zlata 949248 марта 8 2019 avr-gcc-7.3.0 -rw------- 1 zlata zlata 26016 марта 8 2019 avr-gcc-ar -rw------- 1 zlata zlata 25984 марта 8 2019 avr-gcc-nm -rw------- 1 zlata zlata 25984 марта 8 2019 avr-gcc-ranlib -rw------- 1 zlata zlata 590464 марта 8 2019 avr-gcov -rw------- 1 zlata zlata 479352 марта 8 2019 avr-gcov-dump -rw------- 1 zlata zlata 500216 марта 8 2019 avr-gcov-tool -rw------- 1 zlata zlata 3867408 марта 8 2019 avr-gdb -rw------- 1 zlata zlata 745840 марта 8 2019 avr-gprof -rw------- 1 zlata zlata 1187168 марта 8 2019 avr-ld -rw------- 1 zlata zlata 1187168 марта 8 2019 avr-ld.bfd -rw------- 1 zlata zlata 1896 марта 8 2019 avr-man -rw------- 1 zlata zlata 692368 марта 8 2019 avr-nm -rw------- 1 zlata zlata 871120 марта 8 2019 avr-objcopy -rw------- 1 zlata zlata 1005424 марта 8 2019 avr-objdump -rw------- 1 zlata zlata 711736 марта 8 2019 avr-ranlib -rw------- 1 zlata zlata 487360 марта 8 2019 avr-readelf -rw------- 1 zlata zlata 694768 марта 8 2019 avr-size -rw------- 1 zlata zlata 683120 марта 8 2019 avr-strings -rw------- 1 zlata zlata 871120 марта 8 2019 avr-strip Как видтите в вашей директории исполнять можно только avr-g++ и только владельцу. Скажите (покажите командную строку) как вы выполняли распаковку?
К своему стыду, я распаковывал через менеджер архивов в иксах. Причём даже на внешнем диске. Ну а потом просто скопировал папку с внешнего диска в домашнюю папку...
Вот оно как. Вы распаковали в домашнюю директорию. Т.е. домашняя папка на внешнем диске. И как на этом внешнем удается установить атрибут исполняемого файла (вручную или скриптом) и не выходит этот же атрибут установить менеджеру архивов. Чудеса какие-то...
Нет. Я сохранил архив на внешнем диске. И там же его распаковал. Папку с файлами переименовал в arduino и потом скопировал в домашнюю директорию.
А на внешнем диске, наверное, (ex)FAT или NTFS? Вот там то права доступа при распаковке и побились...
Если в домашней директории вам удается установить разрешения для запуска файлов, то и выполняйте распаковку архива в домашнюю директорию. Удалите прежнюю директорию с ардуино-иде и распакуйте снова. И не стоит говорить что "вначале разархивировал в домашнюю папку. Потом на скриптах поставил бит на исполнение." вы делали не так, как потом оказалось.
В общем я перераспаковал архив... tar -xf путь/до/файла/arduino-1.8.10-linux64.tar.xz -C ~ И всё нормально завелось. Спасибо всем. Не знал что символ тильда (~) по умолчанию указывает путь в домашнюю директорию... Век живи, век учись....