Unable to compile with Sloeber and Core 1.9.0

Development environment specific, Arduino, Eclipse, VS2013, Em::Blocks etc
Post Reply
tyllurius
Posts: 4
Joined: Wed Jan 06, 2021 6:56 pm

Unable to compile with Sloeber and Core 1.9.0

Post by tyllurius »

Hi there,

I have problems compiling projects with the Sloeber IDE (latest nightly) and 1.9.0 Core. It seems that it compiles ok, but when it comes to linkage the combiner can't find the precompiled files:

Compiler output is:

Code: Select all

'Starting combiner'
"D:\Programme\Sloeber\arduinoPlugin\packages\STM32\tools\xpack-arm-none-eabi-gcc\9.2.1-1.1/bin/arm-none-eabi-gcc" -mcpu=cortex-m3  -mthumb -Os --specs=nano.specs -u _printf_float -Wl,--defsym=LD_FLASH_OFFSET=0 -Wl,--defsym=LD_MAX_SIZE=65536 -Wl,--defsym=LD_MAX_DATA_SIZE=20480 -Wl,--cref -Wl,--check-sections -Wl,--gc-sections -Wl,--entry=Reset_Handler -Wl,--unresolved-symbols=report-all -Wl,--warn-common "-Wl,--default-script=D:\Programme\Sloeber\arduinoPlugin\packages\STM32\hardware\stm32\1.9.0\variants\PILL_F103XX/ldscript.ld" "-Wl,--script=D:\Programme\Sloeber\arduinoPlugin\packages\STM32\hardware\stm32\1.9.0\system/ldscript.ld" "-Wl,-Map,E:\OneDrive\Technik\_programmierung\sloeber-workspace\BlinkTest\hwdebug/BlinkTest.map"   "-LD:\Programme\Sloeber\arduinoPlugin\packages\STM32\tools\CMSIS\5.5.1/CMSIS/DSP/Lib/GCC/" -larm_cortexM3l_math -o "E:\OneDrive\Technik\_programmierung\sloeber-workspace\BlinkTest\hwdebug/BlinkTest.elf" "-LE:\OneDrive\Technik\_programmierung\sloeber-workspace\BlinkTest\hwdebug" -Wl,--start-group    .\sloeber.ino.cpp.o  .\libraries\SrcWrapper\src\stm32\PortNames.c.o .\libraries\SrcWrapper\src\stm32\analog.cpp.o .\libraries\SrcWrapper\src\stm32\bootloader.c.o .\libraries\SrcWrapper\src\stm32\clock.c.o .\libraries\SrcWrapper\src\stm32\core_callback.c.o .\libraries\SrcWrapper\src\stm32\dwt.c.o .\libraries\SrcWrapper\src\stm32\hw_config.c.o .\libraries\SrcWrapper\src\stm32\interrupt.cpp.o .\libraries\SrcWrapper\src\stm32\lock_resource.c.o .\libraries\SrcWrapper\src\stm32\low_power.c.o .\libraries\SrcWrapper\src\stm32\pinmap.c.o .\libraries\SrcWrapper\src\stm32\rtc.c.o .\libraries\SrcWrapper\src\stm32\stm32_def.c.o .\libraries\SrcWrapper\src\stm32\stm32_eeprom.c.o .\libraries\SrcWrapper\src\stm32\system_stm32yyxx.c.o .\libraries\SrcWrapper\src\stm32\timer.c.o .\libraries\SrcWrapper\src\stm32\uart.c.o  .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_adc.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_bdma.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_comp.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_cordic.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_crc.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_crs.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_dac.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_delayblock.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_dma.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_dma2d.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_exti.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_fmac.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_fmc.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_fsmc.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_gpio.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_hrtim.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_i2c.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_lptim.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_lpuart.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_mdma.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_opamp.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_pka.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_pwr.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_rcc.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_rng.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_rtc.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_sdmmc.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_spi.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_swpmi.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_tim.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_ucpd.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_usart.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_usb.c.o .\libraries\SrcWrapper\src\LL\stm32yyxx_ll_utils.c.o  .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_adc.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_adc_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_can.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_cec.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_comp.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_comp_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_cordic.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_cortex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_crc.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_crc_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_cryp.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_cryp_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_dac.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_dac_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_dcmi.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_dcmi_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_dfsdm.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_dfsdm_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_dma.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_dma2d.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_dma_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_dsi.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_dts.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_eth.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_eth_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_exti.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_fdcan.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_firewall.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_flash.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_flash_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_flash_ramfunc.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_fmac.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_fmpi2c.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_fmpi2c_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_gfxmmu.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_gpio.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_gpio_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_hash.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_hash_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_hcd.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_hrtim.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_hsem.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_i2c.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_i2c_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_i2s.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_i2s_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_ipcc.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_irda.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_iwdg.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_jpeg.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_lcd.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_lptim.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_ltdc.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_ltdc_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_mdios.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_mdma.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_mmc.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_mmc_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_nand.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_nor.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_opamp.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_opamp_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_ospi.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_otfdec.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_pccard.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_pcd.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_pcd_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_pka.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_pssi.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_pwr.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_pwr_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_qspi.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_ramecc.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_rcc.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_rcc_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_rng.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_rng_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_rtc.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_rtc_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_sai.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_sai_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_sd.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_sd_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_sdadc.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_sdram.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_smartcard.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_smartcard_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_smbus.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_spdifrx.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_spi.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_spi_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_sram.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_swpmi.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_tim.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_tim_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_tsc.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_uart.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_uart_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_usart.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_usart_ex.c.o .\libraries\SrcWrapper\src\HAL\stm32yyxx_hal_wwdg.c.o  .\libraries\SrcWrapper\src\syscalls.c.o  .\core\variant\PeripheralPins.c.o .\core\variant\variant.cpp.o     E:\OneDrive\Technik\_programmierung\sloeber-workspace\BlinkTest\hwdebug/arduino.ar  -lc -Wl,--end-group -lm -lgcc -lstdc++
arm-none-eabi-gcc: error: .\libraries\SrcWrappr\src\HAL\stm32yyxx_hal_sdram.c.o: No such file or directory
makefile:96: recipe for target 'BlinkTest.elf' failed
make: *** [BlinkTest.elf] Error 1
The makefile fails at this line:

Code: Select all

@echo 'Starting combiner'
	"D:\Programme\Sloeber\arduinoPlugin\packages\STM32\tools\xpack-arm-none-eabi-gcc\9.2.1-1.1/bin/arm-none-eabi-gcc" -mcpu=cortex-m3  -mthumb -Os --specs=nano.specs -u _printf_float -Wl,--defsym=LD_FLASH_OFFSET=0 -Wl,--defsym=LD_MAX_SIZE=65536 -Wl,--defsym=LD_MAX_DATA_SIZE=20480 -Wl,--cref -Wl,--check-sections -Wl,--gc-sections -Wl,--entry=Reset_Handler -Wl,--unresolved-symbols=report-all -Wl,--warn-common "-Wl,--default-script=D:\Programme\Sloeber\arduinoPlugin\packages\STM32\hardware\stm32\1.9.0\variants\PILL_F103XX/ldscript.ld" "-Wl,--script=D:\Programme\Sloeber\arduinoPlugin\packages\STM32\hardware\stm32\1.9.0\system/ldscript.ld" "-Wl,-Map,E:\OneDrive\Technik\_programmierung\sloeber-workspace\BlinkTest\hwdebug/BlinkTest.map"   "-LD:\Programme\Sloeber\arduinoPlugin\packages\STM32\tools\CMSIS\5.5.1/CMSIS/DSP/Lib/GCC/" -larm_cortexM3l_math -o "E:\OneDrive\Technik\_programmierung\sloeber-workspace\BlinkTest\hwdebug/BlinkTest.elf" "-LE:\OneDrive\Technik\_programmierung\sloeber-workspace\BlinkTest\hwdebug" -Wl,--start-group   $(LINK_OBJ)    E:\OneDrive\Technik\_programmierung\sloeber-workspace\BlinkTest\hwdebug/arduino.ar  -lc -Wl,--end-group -lm -lgcc -lstdc++
With 1.7.0 it works flawlessly. It sounds similar to this and this issue, but as far as I understood the issues with SrcWrapper should be gone with the latest Sloeber nightly. I'm not sure if it's a Sloeber related problem, but since 1.9.0 is already around for some time that must be a known problem.
Can someone tell me more about that problem?

Thanks!
User avatar
fpiSTM
Posts: 1738
Joined: Wed Dec 11, 2019 7:11 pm
Answers: 91
Location: Le Mans
Contact:

Re: Unable to compile with Sloeber and Core 1.9.0

Post by fpiSTM »

Unfortunately not.
Sloeber does not follow exactly Arduino build process. We tried to find a way but no success.
ag123
Posts: 1655
Joined: Thu Dec 19, 2019 5:30 am
Answers: 24

Re: Unable to compile with Sloeber and Core 1.9.0

Post by ag123 »

a question though, can you verify if it is using make. i.e. gnu make for the build
if it is and you are keen to try going the distance

you can try with a Makefile like this
viewtopic.php?p=1321#p1321

note that this Makefile is created in Linux so it may not work in windows.

note in addition I'm not using Sloeber, but just eclipse, CDT (C/CPP Development Toolkit) and my Makefile.
This Makefile sits in the workspace project directory for the project there are a few other (sub) directories that needs to reside in the workspace project folder specified in the Makefile comments.

note this is *unofficial*, it is my personal Makefile hack and it so happens that it works for me.
ag123
Posts: 1655
Joined: Thu Dec 19, 2019 5:30 am
Answers: 24

Re: Unable to compile with Sloeber and Core 1.9.0

Post by ag123 »

there is one thing which may be worth exploring, using STM32Cube IDE, that's basically eclipse, that is a route that 'no one has announced they did it', so if you try that, you may be a pioneer in it. especially on windows.

even with that it may be a huge pain to manually configure all the includes, defines and dependencies. think there are more than a hundred items of includes, symbols, flags, source locations etc to define to literally use it
Post Reply

Return to “IDE's”