Page 1 of 1

Unable to compile with Sloeber and Core 1.9.0

Posted: Wed Jan 06, 2021 8:04 pm
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!

Re: Unable to compile with Sloeber and Core 1.9.0

Posted: Wed Apr 14, 2021 8:56 am
by fpiSTM
Unfortunately not.
Sloeber does not follow exactly Arduino build process. We tried to find a way but no success.

Re: Unable to compile with Sloeber and Core 1.9.0

Posted: Wed Apr 14, 2021 2:05 pm
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.

Re: Unable to compile with Sloeber and Core 1.9.0

Posted: Wed Apr 14, 2021 2:15 pm
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