diff --git a/toolchains/arduino/org.eclipse.cdt.arduino.core/src/org/eclipse/cdt/arduino/core/internal/board/ArduinoLibrary.java b/toolchains/arduino/org.eclipse.cdt.arduino.core/src/org/eclipse/cdt/arduino/core/internal/board/ArduinoLibrary.java index a90875cf917..04ea83d3248 100644 --- a/toolchains/arduino/org.eclipse.cdt.arduino.core/src/org/eclipse/cdt/arduino/core/internal/board/ArduinoLibrary.java +++ b/toolchains/arduino/org.eclipse.cdt.arduino.core/src/org/eclipse/cdt/arduino/core/internal/board/ArduinoLibrary.java @@ -206,7 +206,7 @@ public class ArduinoLibrary { } } else { if (ArduinoBuildConfiguration.isSource(file.getName())) { - sources.add(file.getAbsolutePath()); + sources.add(ArduinoBuildConfiguration.pathString(file.toPath())); } } } diff --git a/toolchains/arduino/org.eclipse.cdt.arduino.core/src/org/eclipse/cdt/arduino/core/internal/board/ArduinoManager.java b/toolchains/arduino/org.eclipse.cdt.arduino.core/src/org/eclipse/cdt/arduino/core/internal/board/ArduinoManager.java index 2833ac7bd18..20a98296f0d 100644 --- a/toolchains/arduino/org.eclipse.cdt.arduino.core/src/org/eclipse/cdt/arduino/core/internal/board/ArduinoManager.java +++ b/toolchains/arduino/org.eclipse.cdt.arduino.core/src/org/eclipse/cdt/arduino/core/internal/board/ArduinoManager.java @@ -93,6 +93,7 @@ public class ArduinoManager { .resolve(Paths.get(packageUrl.getPath()).getFileName()); File packageFile = packagePath.toFile(); if (download) { + Files.createDirectories(ArduinoPreferences.getArduinoHome()); Files.copy(packageUrl.openStream(), packagePath, StandardCopyOption.REPLACE_EXISTING); } if (packageFile.exists()) { @@ -125,6 +126,7 @@ public class ArduinoManager { .resolve(Paths.get(librariesUrl.getPath()).getFileName()); File librariesFile = librariesPath.toFile(); if (download) { + Files.createDirectories(ArduinoPreferences.getArduinoHome()); Files.copy(librariesUrl.openStream(), librariesPath, StandardCopyOption.REPLACE_EXISTING); } if (librariesFile.exists()) { diff --git a/toolchains/arduino/org.eclipse.cdt.arduino.core/src/org/eclipse/cdt/arduino/core/internal/board/ArduinoPlatform.java b/toolchains/arduino/org.eclipse.cdt.arduino.core/src/org/eclipse/cdt/arduino/core/internal/board/ArduinoPlatform.java index 9e3911ed537..8952d6b713a 100644 --- a/toolchains/arduino/org.eclipse.cdt.arduino.core/src/org/eclipse/cdt/arduino/core/internal/board/ArduinoPlatform.java +++ b/toolchains/arduino/org.eclipse.cdt.arduino.core/src/org/eclipse/cdt/arduino/core/internal/board/ArduinoPlatform.java @@ -204,7 +204,7 @@ public class ArduinoPlatform { } } else { if (ArduinoBuildConfiguration.isSource(file.getName())) { - sources.add(file.getAbsolutePath()); + sources.add(ArduinoBuildConfiguration.pathString(file.toPath())); } } }