Robot-Will / Stino

A Sublime Text Plugin for Arduino
Other
1.58k stars 249 forks source link

Verify/compile Error code 1. Permission denied (OSX) #322

Closed shashwat767 closed 7 years ago

shashwat767 commented 8 years ago

When I go to veriry/compile the code in Sublime Text 2, I get the following error : " /Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-ar: {archive_file_path}: Permission denied

[Stino - Exit with error code 1.] " I also get the same error if i choose to upload the same in Sublime text. The code compiles and uploads without any issues via the Arduino IDE.

I am on OSX El Capitan and using the Arduino 1.6.6.

Thanks!

noobka commented 8 years ago

The same problem with Arduino IDE 1.6.7. Any suggestions?

gepd commented 8 years ago

By now you should use a previous version of the IDE. @Robot-Will is developing a new version of the Stino plugin, when it is released you should be able to use the latest Arduino IDE without problems

samsam2310 commented 8 years ago

The problem is the permission of ttyACM0 file under /dev. You can use root to start arduino ide or just add your user to the group, dailout. And maybe you need to do chmod to ttyACM0. Remember reboot after chmod.

jwhendy commented 8 years ago

My distro, Arch, just pushed out 1.6.7 (from 1.6.5) about a week ago, and I just ran into this. I don't understand the recommendation to add one's self to the dialout group. What should the permissions be?

Here's what I see:

$ ls -l /dev/ttyACM0 
crw-rw---- 1 root uucp 166, 0 Dec 30 12:19 /dev/ttyACM0

$ groups
lp wheel uucp lock jwhendy

That would suggest I have access to ttyACM0, wouldn't it?

I did some other digging and don't entirely understand the posts, but these seem relevant:

I took a complete stab in the dark based on the forum post and changed the following:

Before:

$ grep archive /usr/share/arduino/hardware/arduino/avr/platform.txt
## Create archives
recipe.ar.pattern="{compiler.path}{compiler.ar.cmd}" {compiler.ar.flags} {compiler.ar.extra_flags} "{archive_file_path}" "{object_file}"

After:

$ grep archive /usr/share/arduino/hardware/arduino/avr/platform.txt
## Create archives
recipe.ar.pattern="{compiler.path}{compiler.ar.cmd}" {compiler.ar.flags} {compiler.ar.extra_flags} "{build.path}/{archive_file}" "{object_file}"

This allowed me to successfully upload with stino. Again, no idea what I'm doing, but it works for me at the moment so I'm a happy camper.

Edit: I didn't try using the arduino IDE with the change above. I really hardly ever use it as I vastly prefer stino. Not sure if the above is compatible with the official IDE but will try later tonight and post back.