I purchased a Mega 2560 with RAMPS 1.4 board to replace the Melzi on a TronXY X3A 3d Printer. Hooked the Arduino up to my PC (Windows 10 Pro Version 1709, Build 16299.334), installed the Arduino IDE (1.8.5)`` and downloaded the latest Marlin firmware (1.1.x) package from the Marlin website.
I selected the COM port listed in the Device Manager (which listed it as Arduino Mega 2560 under Ports). I selected the "Arduino/Genuino Mega or Mega 2560" under the board option in the Tools menu of the IDE and made sure the processor was an ATmega 2560 (Mega 2560).
I performed the necessary changes to the Configuration.h file to match the parameters of the printer and the hardware spec that it should have after the Arduino replaces the Melzi. This included a RepRap Discount Full Graphics Smart Display.
I attempted to verify the firmware and was met with the error messages:
Arduino: 1.8.5 (Windows 10), Board: "Arduino/Genuino Mega or Mega 2560, ATmega2560 (Mega 2560)"
C:\Program Files (x86)\Arduino\arduino-builder -dump-prefs -logger=machine -hardware C:\Program Files (x86)\Arduino\hardware -hardware C:\Users\mark__000\AppData\Local\Arduino15\packages -tools C:\Program Files (x86)\Arduino\tools-builder -tools C:\Program Files (x86)\Arduino\hardware\tools\avr -tools C:\Users\mark__000\AppData\Local\Arduino15\packages -built-in-libraries C:\Program Files (x86)\Arduino\libraries -libraries C:\Users\mark__000\OneDrive\Documents\Arduino\libraries -fqbn=arduino:avr:mega:cpu=atmega2560 -ide-version=10805 -build-path C:\Users\MARK__~1\AppData\Local\Temp\arduino_build_368862 -warnings=default -build-cache C:\Users\MARK__~1\AppData\Local\Temp\arduino_cache_886419 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.avrdude.path=C:\Users\mark__000\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino9 -prefs=runtime.tools.arduinoOTA.path=C:\Users\mark__000\AppData\Local\Arduino15\packages\arduino\tools\arduinoOTA\1.1.1 -prefs=runtime.tools.avr-gcc.path=C:\Users\mark__000\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\4.9.2-atmel3.5.4-arduino2 -verbose C:\Users\mark__000\OneDrive\Documents\Arduino\Marlin\Marlin.ino
readlink C:\Users\mark__000\OneDrive\Documents\Arduino\Marlin\Marlin.ino: The system cannot find the file specified.
Error compiling for board Arduino/Genuino Mega or Mega 2560.
The italic is the echo of the build command being run and the bold is the error messages.
I originally thought it was a problem with the firmware, so tried the same thing with the Repetier firmware and got identical results. This leads me to believe there is a problem with the installation of the Arduino IDE.
I have managed to upload and modify some simple sketches with no trouble.
Any help or pointers is gratefully received.
Mark
pert
April 3, 2018, 9:21pm
2
The problem is that you have the Marlin sketch stored on your OneDrive. The most simple solution is to move it somewhere else on your computer.
For an explanation of the problem and workarounds to allow you to store it on your OneDrive see:
opened 03:11PM - 16 Nov 17 UTC
closed 09:12AM - 28 Aug 18 UTC
type: imperfection
os: windows
topic: code
It seems recent Windows 10 versions combined with OneDrive suffer from arduino-b… uilder not being able to read files. This is reported as arduino/Arduino#6867 and arduino/Arduino#6932. The symptoms are similar as #90, but I think the underlying issue is similar but different, so I'm opening a new issue.
arduino/Arduino#6932 contains the error output:
```
Arduino: 1.8.5 (Windows 10), Board: "Arduino/Genuino Uno"
C:\Apps\arduino-latest\arduino-builder -dump-prefs -logger=machine -hardware C:\Apps\arduino-latest\hardware -hardware C:\Users\HaMac\AppData\Local\Arduino15\packages -hardware C:\Users\HaMac\OneDrive\Documents\Ardunio\hardware -tools C:\Apps\arduino-latest\tools-builder -tools C:\Apps\arduino-latest\hardware\tools\avr -tools C:\Users\HaMac\AppData\Local\Arduino15\packages -built-in-libraries C:\Apps\arduino-latest\libraries -libraries C:\Users\HaMac\OneDrive\Documents\Ardunio\libraries -fqbn=arduino:avr:uno -ide-version=10805 -build-path C:\Users\HaMac\AppData\Local\Temp\arduino_build_721501 -warnings=default -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.arduinoOTA.path=C:\Users\HaMac\AppData\Local\Arduino15\packages\arduino\tools\arduinoOTA\1.1.1 -prefs=runtime.tools.avrdude.path=C:\Users\HaMac\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino9 -prefs=runtime.tools.avr-gcc.path=C:\Users\HaMac\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\4.9.2-atmel3.5.4-arduino2 -verbose C:\Users\HaMac\OneDrive\Documents\Ardunio\BlinkTwoLEDs\BlinkTwoLEDs.ino
readlink C:\Users\HaMac\OneDrive\Documents\Ardunio\BlinkTwoLEDs\BlinkTwoLEDs.ino: The system cannot find the file specified.
Error compiling for board Arduino/Genuino Uno.
```
The reporter has tested a number of versions, and has found that 1.6.5 works, but 1.6.6 breaks things, on this particular system. The latter version is the one introducing arduino-builder.
One difference here, is that the .ino file seems to be a link (or some other special file), not the directory.
@phil85521 @ngmacha, could either of you get some more info on the .ino file that is failing? E.g. look at its properties or use some other Windows tool to figure out what kind of file it is, whether it is indeed a junction or some other kind of special file? I don't have any specific ideas what to do, not being a Windows-user.
Looking at the go code previously patched (https://github.com/golang/go/commit/571738569e9b6bb30ebceaf2eb5936f6ee254e34#diff-495e6a9c70ec790e4be07ee30c55141f) it seems that this file might be (or have?) some kind of "reparse point" that is not a symlink or junction (which are the supported types). This [post](https://stackoverflow.com/questions/47264992/one-drive-as-reparse-point) suggests that OneDrive uses the "Cloud" reparse tag (`IO_REPARSE_TAG_CLOUD_7`), which golang does not seem to explicitly support (in its [master branch](https://github.com/golang/go/blob/master/src/syscall/syscall_windows.go#L1022-L1055)).
I suspect this is something to fix at the golang end, it seems there is already a related issue open at https://github.com/golang/go/issues/22579 (which I'll provide with some extra info next).
Pert, you're ace! Solved the problem that I've been agonising over for days. Karma to you!
Mark