I am trying to pre-process a header file written in C syntax, as an include in my device startup assembly file.
Snippets of the Assembly file:
#include "mcu_powers_preprocessed_macros.h" Stack_Size EQU STACK_SIZE AREA STACK, READWRITE, ALIGN=3 Stack_Mem FILL Stack_Size,WATERMARK_PATTERN,4 ;defined in Assembler preprocessor MACRO
It used to work with arm assembler 5.
I have included the following options in the assembler Misc Controls field :
--cpreproc --cpreproc_opts=-xc
And the resulting Assembler control string looks like:
--cpu Cortex-M4.fp -g --cpreproc --cpreproc_opts=-xc --cpreproc_opts=--target=arm-arm-none-eabi --cpreproc_opts=-mcpu=cortex-m4 --cpreproc_opts=-mfpu=fpv4-sp-d16 --cpreproc_opts=-mfloat-abi=hard --cpreproc_opts=-D__UVISION_VERSION="526" --cpreproc_opts=-D_RTE_ --cpreproc_opts=-DSTM32F407xx --cpreproc_opts=-D__UVISION_VERSION="526" --cpreproc_opts=-D_RTE_ --cpreproc_opts=-DSTM32F407xx -I.\RTE\Device\STM32F407ZGTx -I.\RTE\Device\STM32F407ZGTx\STCubeGenerated\Inc -I.\RTE\_Target_1 -IC:\Keil_v5\ARM\PACK\ARM\CMSIS\5.4.0\CMSIS\Core\Include -IC:\Keil_v5\ARM\PACK\ARM\CMSIS\5.4.0\CMSIS\DSP\Include -IC:\Keil_v5\ARM\PACK\ARM\CMSIS\5.4.0\CMSIS\Driver\Include -IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.13.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include -IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.13.0\Drivers\STM32F4xx_HAL_Driver\Inc --pd "__UVISION_VERSION SETA 526" --pd "_RTE_ SETA 1" --pd "STM32F407xx SETA 1" --list .\Listings\*.lst --xref -o .\Objects\*.o
The Assembler generated the following warnings:
assembling startup_stm32f407xx.s... startup_stm32f407xx.s: warning: RTE\Device\STM32F407ZGTx\startup_stm32f407xx.s: 'assembler' input unused [-Wunused-command-line-argument] startup_stm32f407xx.s: warning: argument unused during compilation: '-I .\RTE\Device\STM32F407ZGTx' [-Wunused-command-line-argument] startup_stm32f407xx.s: warning: argument unused during compilation: '-I .\RTE\Device\STM32F407ZGTx\STCubeGenerated\Inc' [-Wunused-command-line-argument] startup_stm32f407xx.s: warning: argument unused during compilation: '-I .\RTE\_Target_1' [-Wunused-command-line-argument] startup_stm32f407xx.s: warning: argument unused during compilation: '-I C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.4.0\CMSIS\Core\Include' [-Wunused-command-line-argument] startup_stm32f407xx.s: warning: argument unused during compilation: '-I C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.4.0\CMSIS\DSP\Include' [-Wunused-command-line-argument] startup_stm32f407xx.s: warning: argument unused during compilation: '-I C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.4.0\CMSIS\Driver\Include' [-Wunused-command-line-argument] startup_stm32f407xx.s: warning: argument unused during compilation: '-I C:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.13.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include' [-Wunused-command-line-argument] startup_stm32f407xx.s: warning: argument unused during compilation: '-I C:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.13.0\Drivers\STM32F4xx_HAL_Driver\Inc' [-Wunused-command-line-argument] startup_stm32f407xx.s: warning: argument unused during compilation: '-mfloat-abi=hard' [-Wunused-command-line-argument] startup_stm32f407xx.s: warning: argument unused during compilation: '-D __UVISION_VERSION=526' [-Wunused-command-line-argument] startup_stm32f407xx.s: warning: argument unused during compilation: '-D _RTE_' [-Wunused-command-line-argument] startup_stm32f407xx.s: warning: argument unused during compilation: '-D STM32F407xx' [-Wunused-command-line-argument] Z:\g_vm\iREG_MCU_v3\branch\Developing Branch\IREG_FW-Master\MCU_Power\RTE\Device\STM32F407ZGTx\startup_stm32f407xx.s(1): warning: A1313W: Missing END directive at end of file
I think the header file hasn't been pre-processed correctly. What am I doing wrongly?
Appreciate your advice.
ST
HI Tang,
Thanks that helps!
Actually I tried to rename the extension before wring the first thread post, but the case was reverted back immediately to lower case...so I thought that may not be allowed.
After reading your reply, I had to do the following to make it work, because my .S was generated by the MDK Run-Time Environment Manager.
1. Copy the file to other location 2. rename .s to .S 3. uncheck the startup code generation in Run-Time Environment Manager 4. Include the .S file in other directory node.
It worked...but due to some dependancy issue in Run-Time Environment Manager, it automatically added .s and .c start-up files into the Device directory, after closing and restarting the project.
So to make it work I have to uncheck all the related options in my Run-Time Environment Manager...kind of messing up the original work...
Hi Seng Tak GOH,
have you got the Solution, Please let me know , as Me too having the same Issue.
startup_stm32f765xx.s: warning: RTE\Device\STM32F765NIHx\startup_stm32f765xx.s: 'assembler' input unused [-Wunused-command-line-argument]startup_stm32f765xx.s: warning: argument unused during compilation: '-I .\RTE\Compiler' [-Wunused-command-line-argument]startup_stm32f765xx.s: warning: argument unused during compilation: '-I .\RTE\Device\STM32F765NIHx' [-Wunused-command-line-argument]startup_stm32f765xx.s: warning: argument unused during compilation: '-I .\RTE\_DC200_Main_Configuration' [-Wunused-command-line-argument]startup_stm32f765xx.s: warning: argument unused during compilation: '-I C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\CMSIS\Core\Include' [-Wunused-command-line-argument]startup_stm32f765xx.s: warning: argument unused during compilation: '-I C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\CMSIS\Driver\Include' [-Wunused-command-line-argument]startup_stm32f765xx.s: warning: argument unused during compilation: '-I C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.8.0\CMSIS\RTOS\RTX\INC' [-Wunused-command-line-argument]startup_stm32f765xx.s: warning: argument unused during compilation: '-I C:\Keil_v5\ARM\PACK\Keil\ARM_Compiler\1.2.0\Include' [-Wunused-command-line-argument]startup_stm32f765xx.s: warning: argument unused during compilation: '-I C:\Keil_v5\ARM\PACK\Keil\MDK-Middleware\7.3.0\USB\Include' [-Wunused-command-line-argument]startup_stm32f765xx.s: warning: argument unused during compilation: '-I C:\Keil_v5\ARM\PACK\Keil\STM32F7xx_DFP\2.8.0\Drivers\CMSIS\Device\ST\STM32F7xx\Include' [-Wunused-command-line-argument]startup_stm32f765xx.s: warning: argument unused during compilation: '-I C:\Keil_v5\ARM\PACK\Keil\STM32F7xx_DFP\2.8.0\Drivers\STM32F7xx_HAL_Driver\Inc' [-Wunused-command-line-argument]startup_stm32f765xx.s: warning: argument unused during compilation: '-mfloat-abi=hard' [-Wunused-command-line-argument]startup_stm32f765xx.s: warning: argument unused during compilation: '-D __UVISION_VERSION=536' [-Wunused-command-line-argument]startup_stm32f765xx.s: warning: argument unused during compilation: '-D _RTE_' [-Wunused-command-line-argument]startup_stm32f765xx.s: warning: argument unused during compilation: '-D STM32F765xx' [-Wunused-command-line-argument]RTE\Device\STM32F765NIHx\startup_stm32f765xx.s(1): warning: A1313W: Missing END directive at end of file