Issues with Compiling Firmware in Windows 10, VSCode

I am trying to compile the firmware in VSCode (for an explanation why look here). But for some reason, I am coming across a seemingly new error (or at least one that others haven’t posted about). Whenever I try and Rub Build Task, this is what is spit back out:

I have looked seemingly everywhere online and can’t seem to figure out what the newline command is for tup. Based off of the tup manual here it actually seems like there isn’t a newline command for tup. I am sure there is a simple answer I am missing, any help would be greatly appreciated.

I think the parser expects a newline character (’\n’) after each config.
Can you try creating a newline at the end by pressing enter after CONFIG_STRICT=true?

I feel like a fool. Thank you so much. I think that fixed the issue. The reason i’m not sure is that this is what it spits out now:



Is this an unrelated error? Because I’ve really only changed two things in the entire firmware. I am just trying to compile the firmware as it was downloaded from GitHub.

(Sorry if this is too hard to read)

seems like an unrelated error. if there isn’t a ‘build’ directory in Firmware folder, can you try creating an empty ‘build’ folder yourself and try again? The script is supposed to do that by itself but just because error complains No such file or directory.

1 Like

I went to make a folder called “build” and it says that a folder already exists with that name in the Firmware folder.

i think you might be missing python in your PATH. Can you try this? adding python to path

I added the folder “Python 3.7” to the path. I’m not sure if this was the right folder or not. But it didn’t help resolve whatever issue I seem to be having.

Just a brief question: what language is the error in? I keep trying to understand what it is saying and keep getting nowhere.

I think its python used by odrivetool, which you can find out by typing ‘sys.executable’ while running odrivetool. Actually I read the error again and might be just that script can’t find the compiler “arm-none-eabi-gcc.exe”. I am not sure where this is located on windows PC, or if you have it installed at all, but the folder containing gcc may need to be added to PATH as well. I think the error is from a shell script (bash in linux, not sure how this works in windows. cygwin?).

Getting the tool-chain properly configured was a nightmare for me too. I ended up compiling on linux.

Please confirm that the following commands don’t return errors (I included the versions I have):

make -v - 4.2.1 - https://chocolatey.org/packages/make
arm-none-eabi-gcc -v  - 9.1 - http://www.freddiechopin.info/en/download/category/11-bleeding-edge-toolchain
tup -v - 0.7.8
python --version - 3.7.3

@naktamello and @Riewert

Okay, so I was able to get all of those commands to work in Git Bash but I am getting the same error when attempting to compile the firmware. This is the error that shows up

[                           ETA~=??? Remaining=84 Active=8                           ]   0%Unable to retrieve WOW64 info
tup error: failed to inject dll: No such file or directory
 *** Command ID=360 failed: arm-none-eabi-gcc -std=c99 -c Board/v3/Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_ll_usb.c -DHW_VERSION_MAJOR=3 -DHW_VERSION_MINOR=6 -DHW_VERSION_VOLTAGE=56 -DUSB_PROTOCOL_NATIVE -DUART_PROTOCOL_ASCII -D__weak="__attribute__((weak))" -D__packed="__attribute__((__packed__))" -DUSE_HAL_DRIVER -DSTM32F405xx -mthumb -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard -Wall -Wdouble-promotion -Wfloat-conversion -fdata-sections -ffunction-sections -O2 -ffast-math -fno-finite-math-only -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/include -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Core/Inc -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Driver/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -IBoard/v3/Drivers/CMSIS/Device/ST/STM32F4xx/Include -IBoard/v3/Drivers/CMSIS/Include -IBoard/v3/Inc -I. -IDrivers/DRV8301  -o build/obj/Board_v3_Drivers_STM32F4xx_HAL_Driver_Src_stm32f4xx_ll_usb.c.o
l [e                            ETA~=??? Remaining=84 Active=7                           ]   0%to retrieve WOW64 info
tup error: failed to inject dll: No such file or directory
 *** Command ID=364 failed: arm-none-eabi-gcc -std=c99 -c Board/v3/Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c -DHW_VERSION_MAJOR=3 -DHW_VERSION_MINOR=6 -DHW_VERSION_VOLTAGE=56 -DUSB_PROTOCOL_NATIVE -DUART_PROTOCOL_ASCII -D__weak="__attribute__((weak))" -D__packed="__attribute__((__packed__))" -DUSE_HAL_DRIVER -DSTM32F405xx -mthumb -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard -Wall -Wdouble-promotion -Wfloat-conversion -fdata-sections -ffunction-sections -O2 -ffast-math -fno-finite-math-only -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/include -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Core/Inc -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Driver/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -IBoard/v3/Drivers/CMSIS/Device/ST/STM32F4xx/Include -IBoard/v3/Drivers/CMSIS/Include -IBoard/v3/Inc -I. -IDrivers/DRV8301  -o build/obj/Board_v3_Drivers_STM32F4xx_HAL_Driver_Src_stm32f4xx_hal_tim_ex.c.o
Unable to retrieve WOW64 info
tup error: failed to inject dll: No such file or directory
 *** Command ID=362 failed: arm-none-eabi-gcc -std=c99 -c Board/v3/Src/tim.c -DHW_VERSION_MAJOR=3 -DHW_VERSION_MINOR=6 -DHW_VERSION_VOLTAGE=56 -DUSB_PROTOCOL_NATIVE -DUART_PROTOCOL_ASCII -D__weak="__attribute__((weak))" -D__packed="__attribute__((__packed__))" -DUSE_HAL_DRIVER -DSTM32F405xx -mthumb -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard -Wall -Wdouble-promotion -Wfloat-conversion -fdata-sections -ffunction-sections -O2 -ffast-math -fno-finite-math-only -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/include -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Core/Inc -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Driver/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -IBoard/v3/Drivers/CMSIS/Device/ST/STM32F4xx/Include -IBoard/v3/Drivers/CMSIS/Include -IBoard/v3/Inc -I. -IDrivers/DRV8301  -o build/obj/Board_v3_Src_tim.c.o
Unable to retrieve WOW64 info
tup error: failed to inject dll: No such file or directory
 *** Command ID=358 failed: arm-none-eabi-gcc -std=c99 -c Board/v3/Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_pwr_ex.c -DHW_VERSION_MAJOR=3 -DHW_VERSION_MINOR=6 -DHW_VERSION_VOLTAGE=56 -DUSB_PROTOCOL_NATIVE -DUART_PROTOCOL_ASCII -D__weak="__attribute__((weak))" -D__packed="__attribute__((__packed__))" -DUSE_HAL_DRIVER -DSTM32F405xx -mthumb -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard -Wall -Wdouble-promotion -Wfloat-conversion -fdata-sections -ffunction-sections -O2 -ffast-math -fno-finite-math-only -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/include -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Core/Inc -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Driver/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -IBoard/v3/Drivers/CMSIS/Device/ST/STM32F4xx/Include -IBoard/v3/Drivers/CMSIS/Include -IBoard/v3/Inc -I. -IDrivers/DRV8301  -o build/obj/Board_v3_Drivers_STM32F4xx_HAL_Driver_Src_stm32f4xx_hal_pwr_ex.c.o
Unable to retrieve WOW64 info
tup error: failed to inject dll: No such file or directory
 *** Command ID=354 failed: arm-none-eabi-gcc -std=c99 -c Board/v3/Src/stm32f4xx_hal_timebase_TIM.c -DHW_VERSION_MAJOR=3 -DHW_VERSION_MINOR=6 -DHW_VERSION_VOLTAGE=56 -DUSB_PROTOCOL_NATIVE -DUART_PROTOCOL_ASCII -D__weak="__attribute__((weak))" -D__packed="__attribute__((__packed__))" -DUSE_HAL_DRIVER -DSTM32F405xx -mthumb -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard -Wall -Wdouble-promotion -Wfloat-conversion -fdata-sections -ffunction-sections -O2 -ffast-math -fno-finite-math-only -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/include -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Core/Inc -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Driver/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -IBoard/v3/Drivers/CMSIS/Device/ST/STM32F4xx/Include -IBoard/v3/Drivers/CMSIS/Include -IBoard/v3/Inc -I. -IDrivers/DRV8301  -o build/obj/Board_v3_Src_stm32f4xx_hal_timebase_TIM.c.o
Unable to retrieve WOW64 info
tup error: failed to inject dll: No such file or directory
 *** Command ID=334 failed: arm-none-eabi-gcc -std=c99 -c Board/v3/Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.c -DHW_VERSION_MAJOR=3 -DHW_VERSION_MINOR=6 -DHW_VERSION_VOLTAGE=56 -DUSB_PROTOCOL_NATIVE -DUART_PROTOCOL_ASCII -D__weak="__attribute__((weak))" -D__packed="__attribute__((__packed__))" -DUSE_HAL_DRIVER -DSTM32F405xx -mthumb -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard -Wall -Wdouble-promotion -Wfloat-conversion -fdata-sections -ffunction-sections -O2 -ffast-math -fno-finite-math-only -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/include -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Core/Inc -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Driver/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -IBoard/v3/Drivers/CMSIS/Device/ST/STM32F4xx/Include -IBoard/v3/Drivers/CMSIS/Include -IBoard/v3/Inc -I. -IDrivers/DRV8301  -o build/obj/Board_v3_Drivers_STM32F4xx_HAL_Driver_Src_stm32f4xx_hal_cortex.c.o
U [na                           ETA~=??? Remaining=84 Active=6                           ]   0%ble to retrieve WOW64 info
tup error: failed to inject dll: No such file or directory
 *** Command ID=348 failed: arm-none-eabi-gcc -std=c99 -c Board/v3/Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c -DHW_VERSION_MAJOR=3 -DHW_VERSION_MINOR=6 -DHW_VERSION_VOLTAGE=56 -DUSB_PROTOCOL_NATIVE -DUART_PROTOCOL_ASCII -D__weak="__attribute__((weak))" -D__packed="__attribute__((__packed__))" -DUSE_HAL_DRIVER -DSTM32F405xx -mthumb -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard -Wall -Wdouble-promotion -Wfloat-conversion -fdata-sections -ffunction-sections -O2 -ffast-math -fno-finite-math-only -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/include -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Core/Inc -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Driver/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -IBoard/v3/Drivers/CMSIS/Device/ST/STM32F4xx/Include -IBoard/v3/Drivers/CMSIS/Include -IBoard/v3/Inc
-I. -IDrivers/DRV8301  -o build/obj/Board_v3_Middlewares_ST_STM32_USB_Device_Library_Core_Src_usbd_ioreq.c.o
U [na                           ETA~=??? Remaining=84 Active=5                           ]   0%ble to retrieve WOW64 info
tup error: failed to inject dll: No such file or directory
 [                           ETA~=??? Remaining=84 Active=2                           ]   0% *** Command ID=356 failed: arm-none-eabi-gcc -std=c99 -c Board/v3/Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_can.c -DHW_VERSION_MAJOR=3 -DHW_VERSION_MINOR=6 -DHW_VERSION_VOLTAGE=56 -DUSB_PROTOCOL_NATIVE -DUART_PROTOCOL_ASCII -D__weak="__attribute__((weak))" -D__packed="__attribute__((__packed__))" -DUSE_HAL_DRIVER -DSTM32F405xx -mthumb -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard -Wall -Wdouble-promotion -Wfloat-conversion -fdata-sections -ffunction-sections -O2 -ffast-math -fno-finite-math-only -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/include -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Core/Inc -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Driver/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -IBoard/v3/Drivers/CMSIS/Device/ST/STM32F4xx/Include -IBoard/v3/Drivers/CMSIS/Include -IBoard/v3/Inc -I. -IDrivers/DRV8301  -o build/obj/Board_v3_Drivers_STM32F4xx_HAL_Driver_Src_stm32f4xx_hal_can.c.o
 [                           ETA~=??? Remaining=84 Active=0                           ]   0%
 *** tup: 8 jobs failed.
make: *** [Makefile:14: all] Error 1
The terminal process terminated with exit code: 1

I went through the entire developer setup guide again to make sure everything was downloaded. I dont really know what is going wrong

Are you sure the versions of everything are either 64bit or 32bit? This can be difficult to check. I’m not sure which version is wiser to use.

“WOW64 is the x86 emulator that allows 32-bit Windows-based applications to run seamlessly on 64-bit Windows” - https://community.qlik.com/t5/QlikView-Deployment/Wow64-mode-Not-using-Wow64/td-p/755756

Also check this: Windows tool chain problem .

I don’t know if the 64-32bit was the issue. The second link was very helpful (thank you for that) as my security system was also removing tup32detect. Re-adding the file caused this:

* 83) arm-none-eabi-gcc -std=c99 -c Board/v3/Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_ll_usb.c -DHW_VERSION_MAJOR=3 -DHW_VERSION_MINOR=6 -DHW_VERS
ION_VOLTAGE=56 -DUSB_PROTOCOL_NATIVE -DUART_PROTOCOL_ASCII -D__weak="__attribute__((weak))" -D__packed="__attribute__((__packed__))" -DUSE_HAL_DRIVE
R -DSTM32F405xx -mthumb -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard -Wall -Wdouble-promotion -Wfloat-conversion -fdata-sections -ffunction-se
ctions -O2 -ffast-math -fno-finite-math-only -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F -IBoard/v3/Middlewares/Third_P
arty/FreeRTOS/Source/include -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Core/I
nc -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Driver/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Dri
ver/Inc/Legacy -IBoard/v3/Drivers/CMSIS/Device/ST/STM32F4xx/Include -IBoard/v3/Drivers/CMSIS/Include -IBoard/v3/Inc -I. -IDrivers/DRV8301  -o build/
obj/Board_v3_Drivers_STM32F4xx_HAL_Driver_Src_stm32f4xx_ll_usb.c.o
arm-none-eabi-gcc: error: CreateProcess: No such file or directory
 *** tup messages ***
 *** Command ID=360 failed with return value 1
* 82) arm-none-eabi-gcc -std=c99 -c Board/v3/Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_can.c -DHW_VERSION_MAJOR=3 -DHW_VERSION_MINOR=6 -DHW_VER
SION_VOLTAGE=56 -DUSB_PROTOCOL_NATIVE -DUART_PROTOCOL_ASCII -D__weak="__attribute__((weak))" -D__packed="__attribute__((__packed__))" -DUSE_HAL_DRIV
ER -DSTM32F405xx -mthumb -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard -Wall -Wdouble-promotion -Wfloat-conversion -fdata-sections -ffunction-s
ections -O2 -ffast-math -fno-finite-math-only -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F -IBoard/v3/Middlewares/Third_
Party/FreeRTOS/Source/include -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Core/
Inc -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Driver/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Dr
iver/Inc/Legacy -IBoard/v3/Drivers/CMSIS/Device/ST/STM32F4xx/Include -IBoard/v3/Drivers/CMSIS/Include -IBoard/v3/Inc -I. -IDrivers/DRV8301  -o build
/obj/Board_v3_Drivers_STM32F4xx_HAL_Driver_Src_stm32f4xx_hal_can.c.o
arm-none-eabi-gcc: error: CreateProcess: No such file or directory
 *** tup messages ***
 *** Command ID=356 failed with return value 1
* 81) arm-none-eabi-gcc -std=c99 -c Board/v3/Middlewares/ST/STM32_USB_Device_Library/Core/Src/usbd_ioreq.c -DHW_VERSION_MAJOR=3 -DHW_VERSION_MINOR=6
 -DHW_VERSION_VOLTAGE=56 -DUSB_PROTOCOL_NATIVE -DUART_PROTOCOL_ASCII -D__weak="__attribute__((weak))" -D__packed="__attribute__((__packed__))" -DUSE
_HAL_DRIVER -DSTM32F405xx -mthumb -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard -Wall -Wdouble-promotion -Wfloat-conversion -fdata-sections -ff
unction-sections -O2 -ffast-math -fno-finite-math-only -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F -IBoard/v3/Middlewar
es/Third_Party/FreeRTOS/Source/include -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS -IBoard/v3/Middlewares/ST/STM32_USB_Device_Libr
ary/Core/Inc -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Driver/Inc -IBoard/v3/Drivers/STM32F4
xx_HAL_Driver/Inc/Legacy -IBoard/v3/Drivers/CMSIS/Device/ST/STM32F4xx/Include -IBoard/v3/Drivers/CMSIS/Include -IBoard/v3/Inc -I. -IDrivers/DRV8301
 -o build/obj/Board_v3_Middlewares_ST_STM32_USB_Device_Library_Core_Src_usbd_ioreq.c.o
arm-none-eabi-gcc: error: CreateProcess: No such file or directory
 *** tup messages ***
 *** Command ID=348 failed with return value 1
* 80) arm-none-eabi-gcc -std=c99 -c Board/v3/Src/stm32f4xx_hal_timebase_TIM.c -DHW_VERSION_MAJOR=3 -DHW_VERSION_MINOR=6 -DHW_VERSION_VOLTAGE=56 -DUS
B_PROTOCOL_NATIVE -DUART_PROTOCOL_ASCII -D__weak="__attribute__((weak))" -D__packed="__attribute__((__packed__))" -DUSE_HAL_DRIVER -DSTM32F405xx -mt
humb -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard -Wall -Wdouble-promotion -Wfloat-conversion -fdata-sections -ffunction-sections -O2 -ffast-m
ath -fno-finite-math-only -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Sourc
e/include -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Core/Inc -IBoard/v3/Middl
ewares/ST/STM32_USB_Device_Library/Class/CDC/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Driver/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -IBo
ard/v3/Drivers/CMSIS/Device/ST/STM32F4xx/Include -IBoard/v3/Drivers/CMSIS/Include -IBoard/v3/Inc -I. -IDrivers/DRV8301  -o build/obj/Board_v3_Src_st
m32f4xx_hal_timebase_TIM.c.o
arm-none-eabi-gcc: error: CreateProcess: No such file or directory
 *** tup messages ***
 *** Command ID=354 failed with return value 1
* 79) arm-none-eabi-gcc -std=c99 -c Board/v3/Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_pwr_ex.c -DHW_VERSION_MAJOR=3 -DHW_VERSION_MINOR=6 -DHW_
VERSION_VOLTAGE=56 -DUSB_PROTOCOL_NATIVE -DUART_PROTOCOL_ASCII -D__weak="__attribute__((weak))" -D__packed="__attribute__((__packed__))" -DUSE_HAL_D
RIVER -DSTM32F405xx -mthumb -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard -Wall -Wdouble-promotion -Wfloat-conversion -fdata-sections -ffunctio
n-sections -O2 -ffast-math -fno-finite-math-only -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F -IBoard/v3/Middlewares/Thi
rd_Party/FreeRTOS/Source/include -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Co
re/Inc -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Driver/Inc -IBoard/v3/Drivers/STM32F4xx_HAL
_Driver/Inc/Legacy -IBoard/v3/Drivers/CMSIS/Device/ST/STM32F4xx/Include -IBoard/v3/Drivers/CMSIS/Include -IBoard/v3/Inc -I. -IDrivers/DRV8301  -o bu
ild/obj/Board_v3_Drivers_STM32F4xx_HAL_Driver_Src_stm32f4xx_hal_pwr_ex.c.o
arm-none-eabi-gcc: error: CreateProcess: No such file or directory
 *** tup messages ***
 *** Command ID=358 failed with return value 1
* 78) arm-none-eabi-gcc -std=c99 -c Board/v3/Src/tim.c -DHW_VERSION_MAJOR=3 -DHW_VERSION_MINOR=6 -DHW_VERSION_VOLTAGE=56 -DUSB_PROTOCOL_NATIVE -DUAR
T_PROTOCOL_ASCII -D__weak="__attribute__((weak))" -D__packed="__attribute__((__packed__))" -DUSE_HAL_DRIVER -DSTM32F405xx -mthumb -mcpu=cortex-m4 -m
fpu=fpv4-sp-d16 -mfloat-abi=hard -Wall -Wdouble-promotion -Wfloat-conversion -fdata-sections -ffunction-sections -O2 -ffast-math -fno-finite-math-on
ly -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/include -IBoard/v3/Mi
ddlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Core/Inc -IBoard/v3/Middlewares/ST/STM32_USB_Dev
ice_Library/Class/CDC/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Driver/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -IBoard/v3/Drivers/CMSIS/De
vice/ST/STM32F4xx/Include -IBoard/v3/Drivers/CMSIS/Include -IBoard/v3/Inc -I. -IDrivers/DRV8301  -o build/obj/Board_v3_Src_tim.c.o
arm-none-eabi-gcc: error: CreateProcess: No such file or directory
 *** tup messages ***
 *** Command ID=362 failed with return value 1
* 77) arm-none-eabi-gcc -std=c99 -c Board/v3/Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c -DHW_VERSION_MAJOR=3 -DHW_VERSION_MINOR=6 -DHW_
VERSION_VOLTAGE=56 -DUSB_PROTOCOL_NATIVE -DUART_PROTOCOL_ASCII -D__weak="__attribute__((weak))" -D__packed="__attribute__((__packed__))" -DUSE_HAL_D
RIVER -DSTM32F405xx -mthumb -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard -Wall -Wdouble-promotion -Wfloat-conversion -fdata-sections -ffunctio
n-sections -O2 -ffast-math -fno-finite-math-only -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F -IBoard/v3/Middlewares/Thi
rd_Party/FreeRTOS/Source/include -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Co
re/Inc -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Driver/Inc -IBoard/v3/Drivers/STM32F4xx_HAL
_Driver/Inc/Legacy -IBoard/v3/Drivers/CMSIS/Device/ST/STM32F4xx/Include -IBoard/v3/Drivers/CMSIS/Include -IBoard/v3/Inc -I. -IDrivers/DRV8301  -o bu
ild/obj/Board_v3_Drivers_STM32F4xx_HAL_Driver_Src_stm32f4xx_hal_tim_ex.c.o
arm-none-eabi-gcc: error: CreateProcess: No such file or directory
 *** tup messages ***
 *** Command ID=364 failed with return value 1
* 76) arm-none-eabi-gcc -std=c99 -c Board/v3/Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.c -DHW_VERSION_MAJOR=3 -DHW_VERSION_MINOR=6 -DHW_
VERSION_VOLTAGE=56 -DUSB_PROTOCOL_NATIVE -DUART_PROTOCOL_ASCII -D__weak="__attribute__((weak))" -D__packed="__attribute__((__packed__))" -DUSE_HAL_D
RIVER -DSTM32F405xx -mthumb -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mfloat-abi=hard -Wall -Wdouble-promotion -Wfloat-conversion -fdata-sections -ffunctio
n-sections -O2 -ffast-math -fno-finite-math-only -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F -IBoard/v3/Middlewares/Thi
rd_Party/FreeRTOS/Source/include -IBoard/v3/Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Co
re/Inc -IBoard/v3/Middlewares/ST/STM32_USB_Device_Library/Class/CDC/Inc -IBoard/v3/Drivers/STM32F4xx_HAL_Driver/Inc -IBoard/v3/Drivers/STM32F4xx_HAL
_Driver/Inc/Legacy -IBoard/v3/Drivers/CMSIS/Device/ST/STM32F4xx/Include -IBoard/v3/Drivers/CMSIS/Include -IBoard/v3/Inc -I. -IDrivers/DRV8301  -o bu
ild/obj/Board_v3_Drivers_STM32F4xx_HAL_Driver_Src_stm32f4xx_hal_cortex.c.o
arm-none-eabi-gcc: error: CreateProcess: No such file or directory
 *** tup messages ***
 *** Command ID=334 failed with return value 1
 [                           ETA~=2s  Remaining=76 Active=0                           ]   9%
 *** tup: 8 jobs failed.
make: *** [Makefile:14: all] Error 1
The terminal process terminated with exit code: 1

While trying to decipher the message a thought occurred to me. Is this an issue of the compiler not being able to find arm-none-eabi-gcc? If so, then is there a specific place I am supposed to put it? Because I have checked twice and this is the file path that is currently in my PATH: C:\Users\neelp\AppData\Roaming\xPacks\gnu-mcu-eclipse\arm-none-eabi-gcc

Try this: Arm-none-eabi-gcc: error: CreateProcess: No such file or directory . Also, make sure there are no special characters or spaces in any of your paths. Appearantly it is also possible that the paths are becoming too long.

As a side note, I ran into this exact same error when I tried using the wrong version of arm-none-eabi-gcc;

Note 2 : 8-2018-q4-major seems to have a bug on Windows. Please use 7-2018-q2-update. - https://docs.odriverobotics.com/developer-guide.html

You have also added a variable ARM_GCC_ROOT to your environment variables right?

image

This is what Git Bash shows me. I am fairly certain that this means I have everything that I need for arm-none-eabi-

I will look into the length of paths by shortening them.
I completely missed that line about gcc version. After testing the PATH length thing I will try that too.

Yes I followed the directions to add ARM_GCC_ROOT.
Although, I have it in a different folder. Does it matter where I have the folder? mine is just in the program files (x86) folder.

The folder shouldn’t matter

I meant the last post, about trying a clean clone. Who knows, there might be some obscure setting somewhere that is still pointing to the wrong place.

1 Like

Okay so, I shortened the paths (and made sure there were no special characters): same error

I uninstalled the 8-2018-q4-major and installed 7-2018-q2-update (I also updated all the paths to account for the change): same error

What does it mean to do a clean clone? Because that is the last thing that I haven’t tried. I am also going to go through my paths again and make sure everything is lined up correctly.

It means to remove all the files you downloaded from github for the ODrive firmware and download again. Also it can be useful to try a few of the popular branches instead of Master. Ones that I work with are https://github.com/madcowswe/ODrive/tree/devel and https://github.com/Wetmelon/ODrive/tree/RazorsEdge. Try compiling one of those. I use gitkraken to switch between branches.

Thanks guys,

This thread was exactly what I needed to fix my similar issues!

1 Like

Thank you so much @Riewert

The firmware compiles now. Now to figure out why the flash task is failing in VSCode lol.

Just a brief question. Now that the Firmware compiles it is making a file called “ODriveFirmware.hex” in the ‘build’ folder. Is this the file that I would flash using odrivetool dfu (file path)? Or do I have to wait for make flash to work?

@Lewis_Siempelkamp no problem. Hopefully this will help others avoid the problems that I am going through. Although all credit to Riewert and naktamello, I sort of just asked questions lol.

1 Like

Glad you were able to make it work! yes the hex file is the firmware binary. Other tools(openocd and ST-Link utility) lets you use .elf file or .bin file as well. If you don’t have a st-link already I highly recommend you get one (debugging purposes).