Marlin Artillery Ruby

Morning, I have been trying to compile the latest version of marlin code for the Artillery Ruby mainboard and I seem to keep running into a error 1 when compiling. I can’t seem to figure out what is causing or stopping the code from compiling.

Executing task: C:\Users\Z270a Chia.platformio\penv\Scripts\platformio.exe run <

Processing artillery_ruby (platform: ststm32@~12.1; board: Artillery_Ruby; framework: arduino)
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Verbose mode can be enabled via -v, --verbose option
PLATFORM: ST STM32 (12.1.1) > STM32F401RC (64k RAM. 256k Flash)
HARDWARE: STM32F401RCT6 84MHz, 64KB RAM, 256KB Flash
DEBUG: Current (jlink) External (jlink, stlink)

  • framework-arduinoststm32 4.10900.200819 (1.9.0)
  • framework-cmsis 2.50501.200527 (5.5.1)
  • tool-dfuutil 1.9.200310
  • toolchain-gccarmnoneeabi 1.90201.191206 (9.2.1)
    Converting Marlin.ino
    LDF: Library Dependency Finder → Library Dependency Finder (LDF) — PlatformIO latest documentation
    LDF Modes: Finder ~ chain, Compatibility ~ soft
    Found 11 compatible libraries
    Scanning dependencies…
    Dependency Graph
    |-- 0.4.5
    | |-- 1.0
    | |-- 1.0
    |-- 1.0
    |-- 1.1.2
    |-- 2.0.1
    |-- 1.0
    |-- 1.0.0
    |-- 1.0
    Building in release mode
    Linking .pio\build\artillery_ruby\firmware.elf
    Building C:\Users\Z270a Chia\Downloads\Marlin-Hornet-master\Marlin-Hornet-master.pio\build\artillery_ruby/firmware.hex
    Usage: arm-none-eabi-objcopy [option(s)] in-file [out-file]
    Copies a binary file, possibly transforming it in the process
    The options are:
    -I --input-target Assume input file is in format
    -O --output-target Create an output file in format
    -B --binary-architecture Set output arch, when input is arch-less
    -F --target Set both input and output format to
    –debugging Convert debugging information, if possible
    -p --preserve-dates Copy modified/access timestamps to the output
    -D --enable-deterministic-archives
    Produce deterministic output when stripping archives
    -U --disable-deterministic-archives
    Disable -D behavior (default)
    -j --only-section Only copy section into the output
    –add-gnu-debuglink= Add section .gnu_debuglink linking to
    -R --remove-section Remove section from the output
    –remove-relocations Remove relocations from section
    -S --strip-all Remove all symbol and relocation information
    -g --strip-debug Remove all debugging symbols & sections
    –strip-dwo Remove all DWO sections
    –strip-unneeded Remove all symbols not needed by relocations
    -N --strip-symbol Do not copy symbol
    Do not copy symbol unless needed by
    –only-keep-debug Strip everything but the debug information
    –extract-dwo Copy only DWO sections
    –extract-symbol Remove section contents but keep symbols
    -K --keep-symbol Do not strip symbol
    –keep-file-symbols Do not strip file symbol(s)
    –localize-hidden Turn all ELF hidden symbols into locals
    -L --localize-symbol Force symbol to be marked as a local
    –globalize-symbol Force symbol to be marked as a global
    -G --keep-global-symbol Localize all symbols except
    -W --weaken-symbol Force symbol to be marked as a weak
    –weaken Force all global symbols to be marked as weak
    -w --wildcard Permit wildcard in symbol comparison
    -x --discard-all Remove all non-global symbols
    -X --discard-locals Remove any compiler-generated symbols
    -i --interleave[=] Only copy N out of every bytes
    –interleave-width Set N for --interleave
    -b --byte Select byte in every interleaved block
    –gap-fill Fill gaps between sections with
    –pad-to Pad the last section up to address
    –set-start Set the start address to
    Add to the start address
    Add to LMA, VMA and start addresses
    {–change-section-address|–adjust-section-vma} {=|+|-}
    Change LMA and VMA of section by
    –change-section-lma {=|+|-}
    Change the LMA of section by
    –change-section-vma {=|+|-}
    Change the VMA of section by
    Warn if a named section does not exist
    –set-section-flags =
    Set section 's properties to
    –set-section-alignment =
    Set section 's alignment to bytes
    –add-section = Add section found in to output
    –update-section =
    Update contents of section with
    contents found in
    –dump-section = Dump the contents of section into
    –rename-section =[,] Rename section to
    –long-section-names {enable|disable|keep}
    Handle long section names in Coff objects.
    –change-leading-char Force output format’s leading character style
    –remove-leading-char Remove leading character from global symbols
    –reverse-bytes= Reverse bytes at a time, in output sections with content
    –redefine-sym = Redefine symbol name to
    –redefine-syms --redefine-sym for all symbol pairs
    listed in
    –srec-len Restrict the length of generated Srecords
    –srec-forceS3 Restrict the type of generated Srecords to S3
    –strip-symbols -N for all symbols listed in
    –strip-unneeded-symbol for all symbols listed
    –keep-symbols -K for all symbols listed in
    –localize-symbols -L for all symbols listed in
    –globalize-symbols --globalize-symbol for all in
    –keep-global-symbols -G for all symbols listed in
    –weaken-symbols -W for all symbols listed in
    –add-symbol =[:][,] Add a symbol
    –alt-machine-code Use the target’s 'th alternative machine
    –writable-text Mark the output text as writable
    –readonly-text Make the output text write protected
    –pure Mark the output file as demand paged
    –impure Mark the output file as impure
    –prefix-symbols Add to start of every symbol name
    –prefix-sections Add to start of every section name
    Add to start of every allocatable
    section name
    –file-alignment Set PE file alignment to
    –heap [,] Set PE reserve/commit heap to /

    –image-base Set PE image base to
    –section-alignment Set PE section alignment to
    –stack [,] Set PE reserve/commit stack to /

    –subsystem [:]
    Set PE subsystem to [& ]
    Compress DWARF debug sections using zlib
    –decompress-debug-sections Decompress DWARF debug sections using zlib
    –elf-stt-common=[yes|no] Generate ELF common symbols with STT_COMMON
    –verilog-data-width Specifies data width, in bytes, for verilog output
    -M --merge-notes Remove redundant entries in note sections
    –no-merge-notes Do not attempt to remove redundant notes (default)
    -v --verbose List all object files modified
    @ Read options from
    -V --version Display this program’s version number
    -h --help Display this output
    –info List object formats & architectures supported
    arm-none-eabi-objcopy: supported targets: elf32-littlearm elf32-littlearm-fdpic elf32-bigarm elf32-bigarm-fdpic elf32-little elf32-big srec symbolsrec verilog tekhex binary ihex plugin
    *** [.pio\build\artillery_ruby\firmware.elf] Error 1

=========== [FAILED] Took 11.41 seconds =========================================================================================

Environment Status Duration

artillery_ruby FAILED 00:00:11.409
==================================================================================== 1 failed, 0 succeeded in 00:00:11.409 ====================================================================================
The terminal process “C:\Users\Z270a Chia.platformio\penv\Scripts\platformio.exe ‘run’” terminated with exit code: 1.

Terminal will be reused by tasks, press any key to close it.

It may be possible that the builder script does not correctly escape a filepath and the space in your username triggers the bug. Does moving the projcet to e.g. C:\Marlin help?