Green Kernel build

Hi There.
I am trying to build the green kernel. I am having some issues using the STM32F7508 VEE port.

Issue #1: The VEE port must be recompiled for Multi app (the default is monapp) however by default the platform editor does not show the option. It seems it is not capable of reading properly the .platform file:


It cannot find the architecture.
I had to manually add the architecture from the microej repo.

Issue #2: Note that even if I could update the platform for multi app, after I recompile the configuration project, the option appears unchecked again → the file has been modified by something. I looked at the .platform file and indeed it was edited during the build process (!).

I don’t know if my VEE Port truly supports multiapp at the end.

Issue #3: when I try to build the kernel, I get this message:
BUILD FAILED
Found an error when building GREEN

  • Where

File : C:\Program Files\MicroEJ\MicroEJ-SDK-23.07\rcp\configuration\org.eclipse.osgi\468\data\repositories\microej-build-repository\com\is2t\easyant\plugins\platform-loader\2.1.0\platform-loader-2.1.0.ant
Line : 377 column : 167

  • Problem Report:

The Platform must have been built from an Architecture version 7.10.0 or higher (Architecture version not found)

Can you help me?

I use SDK: Dist. 23.07

Thanks

Sam

Hello Sam,

Issue #1:

To configure your VEE Port for multi sandbox, you should set the following configuration to true:

Re-building the xyz-configuration project will automatically configure the VEE Port for multi-sandbox.

See the related documentation in the VEE Port README: VEEPort-STMicroelectronics-STM32F7508-DK/README.rst at 2.0.0 · MicroEJ/VEEPort-STMicroelectronics-STM32F7508-DK · GitHub

Note that the platform editor is legacy and, indeed, requires to import the Architecture packs in your MICROEJ SDK 5 workspace (which is no longer part of the normal build flow).

Issue #2:

Indeed, the configuration in module.properties overrides the xyz.platform file configuration during the build. The xyz.platform is kept for advanced build configuration & legacy reasons.
You should not need to modify it in order to build the Kernel-Green.

Issue #3:

In the Kernel-Green module.ivy, you must define the path to your VEE Port build:

Please check that it indeed refers to a valid path & the VEE Port has been properly built at this path. Note that the path should refer to the source folder of the VEE Port build.

For more information, please refer to Platform Selection — MicroEJ Documentation

Best regards,
Rémy

Hi Remy,

for #1 and #2, thanks, you solved my problem.

=> I would recommend that you update the VEE Port documentation on github as it says specifically:

To build a Multi-Sandbox VEE Port, open stm32f7508_freertos-configuration/STM32F7508.platform, go to the Content tab and check Multi Applications.

For #3, I did update the property name="platform-loader.target.platform.dir in the ivy file.
This is not the problem: the VEE port is found, but it looks like the version is not correct.

The module.ivy in the VEE Port says:

<dependency org="com.microej.architecture.CM7.${xpf.toolchain.name}" name="${xpf.name}" rev="8.0.0">

So I don’t see what is wrong

As this VEE port is the one that is referred to in the spec, I am stuck.

Can you check on your side that it builds?

Thanks

Semir

Hi Sam,

We tested on our side and we have the same error when we omit the /source/ folder at the end of the VEE Port path.

Please verify that you have:

<ea:property name="platform-loader.target.platform.dir" value="C:/path/to/VEEPort-STMicroelectronics-STM32F7508-DK/STM32F7508-Platform-CM7hardfp_IAR83-2.0.0/source" />

and NOT:

<ea:property name="platform-loader.target.platform.dir" value="C:/path/to/VEEPort-STMicroelectronics-STM32F7508-DK/STM32F7508-Platform-CM7hardfp_IAR83-2.0.0" />

Best regards,
Rémy

That solves the issue,
Thanks
Sam