Arduino IDE in non-admin environment

Hello all,

I'm trying to deploy the Arduino IDE in a school.

We use Windows 7 64bit, but don't allow users access to the machine as an administrator - only as a standard user.

Problem is that the IDE itself doesn't work reliably in our environment.

When logged in as a student user we get a compiler error - the verbose error is below - arduino-builder returned 1,073,741,855 - and nothing compiles.

If I login as an administrator and run the IDE once, generally the IDE will compile, but if another user logs in at another point then sometimes the product will work, sometimes it won't - it's not predictable.

If I turn off UAC and login as an admin account the product seems to work ok, but we can't use it like this in our production set up.

I've tried adding read/write permissions to the Arudino folder in the Program Files, but no change in behaviour.

Any ideas? is there even a way we can make this work?

The verbose error is below:

C:\Program Files (x86)\Arduino\arduino-builder -dump-prefs -logger=machine -hardware "C:\Program Files (x86)\Arduino\hardware" -tools "C:\Program Files (x86)\Arduino\tools-builder" -tools "C:\Program Files (x86)\Arduino\hardware\tools\avr" -built-in-libraries "C:\Program Files (x86)\Arduino\libraries" -libraries "\\dma-fs-edu01\special$\EDU1TESTER\Arduino\libraries" -fqbn=arduino:avr:uno -ide-version=10608 -build-path "C:\Users\EDU1TE~1\AppData\Local\Temp\buildfe53c387bd041f6c4bec836c7b21b1ce.tmp" -warnings=none -prefs=build.warn_data_percentage=75 -verbose "C:\Users\EDU1TE~1\AppData\Local\Temp\untitled2125743269.tmp\sketch_may26a\sketch_may26a.ino"
C:\Program Files (x86)\Arduino\arduino-builder -compile -logger=machine -hardware "C:\Program Files (x86)\Arduino\hardware" -tools "C:\Program Files (x86)\Arduino\tools-builder" -tools "C:\Program Files (x86)\Arduino\hardware\tools\avr" -built-in-libraries "C:\Program Files (x86)\Arduino\libraries" -libraries "\\dma-fs-edu01\special$\EDU1TESTER\Arduino\libraries" -fqbn=arduino:avr:uno -ide-version=10608 -build-path "C:\Users\EDU1TE~1\AppData\Local\Temp\buildfe53c387bd041f6c4bec836c7b21b1ce.tmp" -warnings=none -prefs=build.warn_data_percentage=75 -verbose "C:\Users\EDU1TE~1\AppData\Local\Temp\untitled2125743269.tmp\sketch_may26a\sketch_may26a.ino"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10608 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR   "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\variants\standard" "C:\Users\EDU1TE~1\AppData\Local\Temp\buildfe53c387bd041f6c4bec836c7b21b1ce.tmp\sketch\sketch_may26a.ino.cpp" -o "nul"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10608 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR   "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\variants\standard" "C:\Users\EDU1TE~1\AppData\Local\Temp\buildfe53c387bd041f6c4bec836c7b21b1ce.tmp\sketch\sketch_may26a.ino.cpp" -o "nul"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10608 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR   "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\variants\standard" "C:\Users\EDU1TE~1\AppData\Local\Temp\buildfe53c387bd041f6c4bec836c7b21b1ce.tmp\sketch\sketch_may26a.ino.cpp" -o "C:\Users\EDU1TE~1\AppData\Local\Temp\buildfe53c387bd041f6c4bec836c7b21b1ce.tmp\preproc\ctags_target_for_gcc_minus_e.cpp"
"C:\Program Files (x86)\Arduino\tools-builder\ctags\5.8-arduino10/ctags" -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives "C:\Users\EDU1TE~1\AppData\Local\Temp\buildfe53c387bd041f6c4bec836c7b21b1ce.tmp\preproc\ctags_target_for_gcc_minus_e.cpp"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10608 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR   "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\variants\standard" "C:\Users\EDU1TE~1\AppData\Local\Temp\buildfe53c387bd041f6c4bec836c7b21b1ce.tmp\sketch\sketch_may26a.ino.cpp" -o "C:\Users\EDU1TE~1\AppData\Local\Temp\buildfe53c387bd041f6c4bec836c7b21b1ce.tmp\sketch\sketch_may26a.ino.cpp.o"
arduino-builder returned 1,073,741,855
Error compiling for board Arduino/Genuino Uno.

It does not need write permission to the program files folder but it does try to make a folder in %appdata% and a folder in Documents. Are "normal" users allowed to do so?

(expanding on what septillion said):

I'm not sure what the cause of that error is but often people trying to do similar things are having problems because the IDE needs to read/write the Arduino15 folder, in this case it would be C:\Users\EDU1TE~1\AppData\Local\Arduino15 if you're using Arduino IDE 1.6.6+ or C:\Users\EDU1TE~1\AppData\Roaming\Arduino15 if you're using a previous version. If that's causing an issue you could try using the IDE in portable mode instead by creating a folder named portable in the Arduino IDE installation folder which will cause the files normally stored in the Arduino15 folder to be stored in the portable folder instead.

indeed, their user profile folder is not restricted - I can see it creates a folder in C:\users\user\AppData\Local\Arduino15\

The documents folder is redirected via group policy to a network location (a unc path) eg \edu-svr\users$\username\documents

all these normal 'user' folders have read/write access, it's really just the system folders which are restricted.

I'll create the portable folder and see what happens - it will be interesting to see if perhaps it doesn't like the format of unc paths maybe?

There is one additional folder the user needs permission for an that's his temp folder. But I don't expect that to be a problem but just so you know.

Thank you everyone for your suggestions - strangely, still can't get it to work reliably.

I had added the 'Portable' folder to Program Files (x86) and changed the permissions so Everyone could write to the folder, but again same error.

I'm almost begging to wonder if our AV is blocking something in some way, I've used procmon from sysinternals to see what the compile process is actually doing and it's a whole toolchain which gets initiated, so that will take me a bit of time to unpick.

Really weird.

Have you tested the non-admin version (non-install) in a user directory? In both normal (still uses %appdata%) and portable mode?

We came across the same issue here. 30 students were using with no issues. No windows updates. Suddenly they have the same error.

I tried deleting the folder in Appdata as per another post. It didn't work.

I also tried reinstalling from the Microsoft Store.

QteCh: Suddenly they have the same error.

Just to be sure, by "same error", do you mean "arduino-builder returned 1,073,741,855"?

Which version of the Arduino IDE are you using?

I see that the details on portable mode were lacking when this thread was last active. It has since been well documented: https://www.arduino.cc/en/Guide/PortableIDE I don't think there is any way to use the Windows App store version of the Arduino IDE in portable mode.

Yes. on the error.

Latest version.

I also tried install directly from the Microsoft Store. 1.8.7

I did a bit of searching and didn't come up with any helpful information. So unfortunately I'm stumped. Hopefully someone else here will be able to provide assistance.

Otherwise, you can submit a bug report here: https://github.com/arduino/arduino-builder/issues/new

Here's the issue report: https://github.com/arduino/arduino-builder/issues/300