Hi Anton,
Just wanted to ask if there are any updates regarding the build failure on Windows with the IAR compiler. I tried to build the head version on Win x64 for NXP LPC55S69 using
IAR ANSI C/C++ Compiler V8.50.9.278/W32 for ARM GNU Make 3.81 git version 2.36.0.windows.1 CMake 3.24.2 Python 3.10.5
but I still get some errors. They are though not the same as during my previous try:
[ 77%] Building C object secure_fw/CMakeFiles/tfm_s.dir/__/platform/ext/target/nxp/lpcxpresso55s69/Device/Source/startup_lpcxpresso55s69.o
extern typeof(__vector_table) __attribute__ ((alias ("__vector_table"))) __Vectors; ^ "C:\Work\TF-M\head\trusted-firmware-m\platform\ext\target\nxp\lpcxpresso55s69\Device\Source\startup_lpcxpresso55s69.c",218 Error[Pe260]: explicit type is missing ("int" assumed)
extern typeof(__vector_table) __attribute__ ((alias ("__vector_table"))) __Vectors; ^ "C:\Work\TF-M\head\trusted-firmware-m\platform\ext\target\nxp\lpcxpresso55s69\Device\Source\startup_lpcxpresso55s69.c",218 Error[Pe1113]: attributes are not permitted in a function definition
extern typeof(__vector_table) __attribute__ ((alias ("__vector_table"))) __Vectors; ^ "C:\Work\TF-M\head\trusted-firmware-m\platform\ext\target\nxp\lpcxpresso55s69\Device\Source\startup_lpcxpresso55s69.c",218 Error[Pe169]: expected a declaration
void Reset_Handler(void) ^ "C:\Work\TF-M\head\trusted-firmware-m\platform\ext\target\nxp\lpcxpresso55s69\Device\Source\startup_lpcxpresso55s69.c",228 Error[Pe099]: a declaration here must declare a parameter
{ ^ "C:\Work\TF-M\head\trusted-firmware-m\platform\ext\target\nxp\lpcxpresso55s69\Device\Source\startup_lpcxpresso55s69.c",229 Error[Pe065]: expected a ";" At end of source Warning[Pe012]: parsing restarts here after previous syntax error
extern typeof(__vector_table) __attribute__ ((alias ("__vector_table"))) __Vectors; ^ "C:\Work\TF-M\head\trusted-firmware-m\platform\ext\target\nxp\lpcxpresso55s69\Device\Source\startup_lpcxpresso55s69.c",218 Warning[Pe1051]: standard requires that parameter "__vector_table" be given a type by a subsequent declaration ("int" assumed) At end of source Error[Pe130]: expected a "{" At end of source Error[Pe067]: expected a "}"
extern typeof(__vector_table) __attribute__ ((alias ("__vector_table"))) __Vectors; ^ "C:\Work\TF-M\head\trusted-firmware-m\platform\ext\target\nxp\lpcxpresso55s69\Device\Source\startup_lpcxpresso55s69.c",218 Error[Pe1154]: entity declared as alias cannot have definition
extern typeof(__vector_table) __attribute__ ((alias ("__vector_table"))) __Vectors; ^ "C:\Work\TF-M\head\trusted-firmware-m\platform\ext\target\nxp\lpcxpresso55s69\Device\Source\startup_lpcxpresso55s69.c",218 Error[Pe1153]: declaration does not match its alias variable "__vector_table @ ".intvec"" make[2]: *** [secure_fw/CMakeFiles/tfm_s.dir/__/platform/ext/target/nxp/lpcxpresso55s69/Device/Source/startup_lpcxpresso55s69.o] Error 2 make[1]: *** [secure_fw/CMakeFiles/tfm_s.dir/all] Error 2 make: *** [all] Error 2
Could you please tell if there is any plan to fix these errors in the near future?
Another question regarding the latest release 1.6.1: I tried to build this too using the setup mentioned above, but I get an error for missing Perl:
CMake Error at C:/Program Files/CMake/share/cmake-3.24/Modules/FindPackageHandleStandardArgs.cmake:230 (message): Could NOT find Perl (missing: PERL_EXECUTABLE) Call Stack (most recent call first): C:/Program Files/CMake/share/cmake-3.24/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE) C:/Program Files/CMake/share/cmake-3.24/Modules/FindPerl.cmake:84 (FIND_PACKAGE_HANDLE_STANDARD_ARGS) build/lib/ext/mbedcrypto-src/library/CMakeLists.txt:115 (find_package)
I installed Straberry Perl on my machine and added it to PATH, but the error still persists. I tried also to re-run pip3 install -r tools\requirements.txt but it says that all the requirements are up-to-date. What am I missing here?
Thanks in advance. Ildikó
From: Anton Komlev Anton.Komlev@arm.com Sent: Monday, October 31, 2022 2:11 PM To: Pocsai Ildiko LCPF-CH Ildiko.Pocsai@mt.com; tf-m@lists.trustedfirmware.org Subject: Re: EXTERNAL - Trusted Firmware M build error on Windows 10
Hi Ildiko,
Thanks for reporting. The same defect is reproducible on other platforms and possibly caused by some recent changes. Let me update you here when fix be available.
Best regards, Anton
From: Pocsai Ildiko LCPF-CH via TF-M <tf-m@lists.trustedfirmware.orgmailto:tf-m@lists.trustedfirmware.org> Sent: Monday, October 31, 2022 5:56 AM To: tf-m@lists.trustedfirmware.orgmailto:tf-m@lists.trustedfirmware.org Subject: [TF-M] Trusted Firmware M build error on Windows 10
Hello,
I'm trying to build the Trusted Firmware M on Win10 x64 for NXP LPC55S69 using the IAR compiler, but I get the following error:
[ 76%] Building C object secure_fw/CMakeFiles/tfm_s.dir/__/platform/ext/target/nxp/lpcxpresso55s69/Device/Source/startup_lpcxpresso55s69.o
extern uint32_t __INITIAL_SP; ^ "C:\Work\TF-M\trusted-firmware-m\platform\ext\target\nxp\lpcxpresso55s69\Device\Source\startup_lpcxpresso55s69.c",29 Error[Pe007]: unrecognized token
extern uint32_t __INITIAL_SP; ^ "C:\Work\TF-M\trusted-firmware-m\platform\ext\target\nxp\lpcxpresso55s69\Device\Source\startup_lpcxpresso55s69.c",29 Error[Pe065]: expected a ";"
extern uint32_t __INITIAL_SP; ^ "C:\Work\TF-M\trusted-firmware-m\platform\ext\target\nxp\lpcxpresso55s69\Device\Source\startup_lpcxpresso55s69.c",29 Error[Pe007]: unrecognized token
extern uint32_t __STACK_LIMIT; ^ "C:\Work\TF-M\trusted-firmware-m\platform\ext\target\nxp\lpcxpresso55s69\Device\Source\startup_lpcxpresso55s69.c",30 Error[Pe007]: unrecognized token
extern uint32_t __STACK_LIMIT; ^ "C:\Work\TF-M\trusted-firmware-m\platform\ext\target\nxp\lpcxpresso55s69\Device\Source\startup_lpcxpresso55s69.c",30 Error[Pe065]: expected a ";"
extern uint32_t __STACK_LIMIT; ^ "C:\Work\TF-M\trusted-firmware-m\platform\ext\target\nxp\lpcxpresso55s69\Device\Source\startup_lpcxpresso55s69.c",30 Error[Pe007]: unrecognized token
(VECTOR_TABLE_Type)(&__INITIAL_SP), /* Initial Stack Pointer */
In the attachment, you can find the full build log and also the CMake build file generation log.
Some details about my setup:
Win10 Enterprise x64. Version 20H2 IAR ANSI C/C++ Compiler V8.50.9.278/W32 for ARM GNU Make 3.81 git version 2.36.0.windows.1 CMake 3.24.2 Python 3.10.5
I followed the steps from the Getting started guide herehttps://tf-m-user-guide.trustedfirmware.org/getting_started/index.html than the steps to build the framework for LPC55S69 herehttps://tf-m-user-guide.trustedfirmware.org/platform/nxp/lpcxpresso55s69/README.html.
Do you have any idea what I'm missing?
In case you need any further information let me please know.
Thanks in advance.
Kind regards, Ildikó Pocsai