Loading...
 

SW4STM32 and SW4Linux fully supports the STM32MP1 asymmetric multicore Cortex/A7+M4 MPUs

   With System Workbench for Linux, Embedded Linux on the STM32MP1 family of MPUs from ST was never as simple to build and maintain, even for newcomers in the Linux world. And, if you install System Workbench for Linux in System Workbench for STM32 you can seamlessly develop and debug asymmetric applications running partly on Linux, partly on the Cortex-M4.
You can get more information from the ac6-tools website and download (registration required) various documents highlighting:

System Workbench for STM32


Windows : Workbench crash when I remove 1 (of 4) build configuration.

We have a project with multiple configuration.
There is one configuration that is no more used, but still in the project.

We just get used to not compile it, neither on our desktop development environment or on our Jenkins server.

I tried to remove it this morning ... that breaks the Jenkins build.

Just to be sure to be clear ... it was no more compiled on Jenkins, but for a reason I cannot understand, removing it from the project just break our build.

Here is a part of the log file.

Any ideas?


’’!SESSION 2021-01-28 18:20:57.170 -------------------
eclipse.buildId=4.6.3.M20170301-0400
java.version=1.8.0_151
java.vendor=Oracle Corporation
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US
Framework arguments: -pluginCustomization configuration/st_pref.ini -product org.eclipse.epp.package.cpp.product -no-indexer -application org.eclipse.cdt.managedbuilder.core.headlessbuild -import ./ -cleanBuild Kragleski/Lego
Command-line arguments: -os linux -ws gtk -arch x86_64 -pluginCustomization configuration/st_pref.ini -product org.eclipse.epp.package.cpp.product -no-indexer -data /var/lib/jenkins/ESMP-xxxx_MCellB -application org.eclipse.cdt.managedbuilder.core.headlessbuild -import ./ -cleanBuild Kragleski/Lego

ENTRY org.eclipse.core.resources 4 2 2021-01-28 18:21:00.907

MESSAGE Problems occurred when invoking code from plug-in: “org.eclipse.core.resources”.

STACK 0

java.lang.NullPointerException
at fr.ac6.mcu.ide.core.MCUIdeProjectTargetPartsManager.getMcu(MCUIdeProjectTargetPartsManager.java:490)
at fr.ac6.mcu.ide.core.MCUIdeProjectTargetPartsManager.getMcu(MCUIdeProjectTargetPartsManager.java:473)
at fr.ac6.mcu.ide.core.MCUIdeProjectTargetPartsManager.getMcu(MCUIdeProjectTargetPartsManager.java:462)
at fr.ac6.mcu.ide.build.CrossCommandLineGenerator.generateCommandLineInfo(CrossCommandLineGenerator.java:81)
at fr.ac6.mcu.ide.process.makefile.MakefileGenerator.generateToolCommandLineInfo(MakefileGenerator.java:2499)
at fr.ac6.mcu.ide.process.makefile.MakefileGenerator.addRuleForSource(MakefileGenerator.java:3071)
at fr.ac6.mcu.ide.process.makefile.MakefileGenerator.addFragmentMakefileEntriesForSource(MakefileGenerator.java:2319)
at fr.ac6.mcu.ide.process.makefile.MakefileGenerator.addSources(MakefileGenerator.java:2227)
at fr.ac6.mcu.ide.process.makefile.MakefileGenerator.populateFragmentMakefile(MakefileGenerator.java:1043)
at fr.ac6.mcu.ide.process.makefile.MakefileGenerator.regenerateMakefiles(MakefileGenerator.java:958)
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.performMakefileGeneration(CommonBuilder.java:1006)
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.performPrebuildGeneration(CommonBuilder.java:873)
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:748)
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:513)
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:459)
at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:735)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:206)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:330)
at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:405)
at org.eclipse.core.internal.resources.Project$1.run(Project.java:551)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2240)
at org.eclipse.core.internal.resources.Project.internalBuild(Project.java:529)
at org.eclipse.core.internal.resources.Project.build(Project.java:120)
at org.eclipse.cdt.managedbuilder.internal.core.HeadlessBuilder$1.run(HeadlessBuilder.java:271)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2240)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2262)
at org.eclipse.cdt.managedbuilder.internal.core.HeadlessBuilder.buildConfigurations(HeadlessBuilder.java:281)
at org.eclipse.cdt.managedbuilder.internal.core.HeadlessBuilder.start(HeadlessBuilder.java:522)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:388)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:243)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:673)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:610)
at org.eclipse.equinox.launcher.Main.run(Main.java:1519)
at org.eclipse.equinox.launcher.Main.main(Main.java:1492)

ENTRY org.eclipse.osgi 4 0 2021-01-28 18:21:01.004

MESSAGE Application error

STACK 1

org.eclipse.core.internal.resources.ResourceException: Errors occurred during the build.
at org.eclipse.core.internal.resources.Project$1.run(Project.java:553)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2240)
at org.eclipse.core.internal.resources.Project.internalBuild(Project.java:529)
at org.eclipse.core.internal.resources.Project.build(Project.java:120)
at org.eclipse.cdt.managedbuilder.internal.core.HeadlessBuilder$1.run(HeadlessBuilder.java:271)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2240)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2262)
at org.eclipse.cdt.managedbuilder.internal.core.HeadlessBuilder.buildConfigurations(HeadlessBuilder.java:281)
at org.eclipse.cdt.managedbuilder.internal.core.HeadlessBuilder.start(HeadlessBuilder.java:522)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:388)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:243)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:673)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:610)
at org.eclipse.equinox.launcher.Main.run(Main.java:1519)
at org.eclipse.equinox.launcher.Main.main(Main.java:1492)
Contains: Errors running builder ‘CDT Builder’ on project ‘Kragleski’.
java.lang.NullPointerException
at fr.ac6.mcu.ide.core.MCUIdeProjectTargetPartsManager.getMcu(MCUIdeProjectTargetPartsManager.java:490)
at fr.ac6.mcu.ide.core.MCUIdeProjectTargetPartsManager.getMcu(MCUIdeProjectTargetPartsManager.java:473)
at fr.ac6.mcu.ide.core.MCUIdeProjectTargetPartsManager.getMcu(MCUIdeProjectTargetPartsManager.java:462)
at fr.ac6.mcu.ide.build.CrossCommandLineGenerator.generateCommandLineInfo(CrossCommandLineGenerator.java:81)
at fr.ac6.mcu.ide.process.makefile.MakefileGenerator.generateToolCommandLineInfo(MakefileGenerator.java:2499)
at fr.ac6.mcu.ide.process.makefile.MakefileGenerator.addRuleForSource(MakefileGenerator.java:3071)
at fr.ac6.mcu.ide.process.makefile.MakefileGenerator.addFragmentMakefileEntriesForSource(MakefileGenerator.java:2319)
at fr.ac6.mcu.ide.process.makefile.MakefileGenerator.addSources(MakefileGenerator.java:2227)
at fr.ac6.mcu.ide.process.makefile.MakefileGenerator.populateFragmentMakefile(MakefileGenerator.java:1043)
at fr.ac6.mcu.ide.process.makefile.MakefileGenerator.regenerateMakefiles(MakefileGenerator.java:958)
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.performMakefileGeneration(CommonBuilder.java:1006)
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.performPrebuildGeneration(CommonBuilder.java:873)
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:748)
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:513)
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:459)
at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:735)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:206)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:330)
at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:405)
at org.eclipse.core.internal.resources.Project$1.run(Project.java:551)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2240)
at org.eclipse.core.internal.resources.Project.internalBuild(Project.java:529)
at org.eclipse.core.internal.resources.Project.build(Project.java:120)
at org.eclipse.cdt.managedbuilder.internal.core.HeadlessBuilder$1.run(HeadlessBuilder.java:271)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2240)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2262)
at org.eclipse.cdt.managedbuilder.internal.core.HeadlessBuilder.buildConfigurations(HeadlessBuilder.java:281)
at org.eclipse.cdt.managedbuilder.internal.core.HeadlessBuilder.start(HeadlessBuilder.java:522)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:388)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:243)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:673)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:610)
at org.eclipse.equinox.launcher.Main.run(Main.java:1519)
at org.eclipse.equinox.launcher.Main.main(Main.java:1492)

ENTRY org.eclipse.core.resources 2 10035 2021-01-28 18:21:01.142

MESSAGE The workspace will exit with unsaved changes in this session.

’’

Hi,

Can you attach the .cproject file of your project (it’s the xml manifest file which defines your build configurations) ?

In this xml file, for each configuration, the mcu option element (option id=”fr.ac6.managedbuild.option.gnu.cross.mcu.XXXXXX name=”Mcu” ...) should have a non-empty “value” attribute with the name of the STM32 soc. The log message says that somehow, this option was corrupted when you removed the configuration.

Did you delete your configuration on System Workbench or by editing the .cproject manually ? Maybe some artifact of the configuration definition weren’t fully removed.

Regards,
Kevin.

I removed the configuration from the System Workbench and not by editing it manually.

At first sight, there is a value for that option :



Let me check if I can post the entire file.

Can the fact that this configuration that I tried to delete was the first one in the configuration has something to do with the problem?


Deleting configuration even if it is the 1st one should not corrupt the build. I tried on my project and it doesn’t provoke errors.
Does the project still build with System Workbench in GUI mode ? Or there is the same error as for the build on Jenkins  ?
Kevin.

Yes, the project still build in System Workbench in GUI Mode.
In Jenkins, one of the configuration builds before the error arise.

This works:
/var/lib/Ac6/SystemWorkbench/eclipse -nosplash --launcher.suppressErrors -no-indexer -data /var/lib/jenkins/AnotherTest -application org.eclipse.cdt.managedbuilder.core.headlessbuild -import ./ -cleanBuild Kragleski/UnitTest
/var/lib/jenkins/workspace/EmmetBrickowski_AnotherTest
Create.
Opening ‘Kragleski’.
Refreshing ‘/Kragleski’.
14:15:16 **** Build of configuration UnitTest for project Kragleski ****

And then, this not:
/var/lib/Ac6/SystemWorkbench/eclipse -nosplash --launcher.suppressErrors -no-indexer -data /var/lib/jenkins/AnotherTest -application org.eclipse.cdt.managedbuilder.core.headlessbuild -import ./ -cleanBuild Kragleski/Lego
/var/lib/jenkins/workspace/EmmetBrickowski_AnotherTest
Create.
Opening ‘Kragleski’.
Refreshing ‘/Kragleski’.

But, this time (don’t know what I changed to be honest or even if this is the cause of error), I have this :
check_group_uucp(): error testing lock file creation Error details:Permission deniedcheck_lock_status: No permission to create lock file.
RXTX fhs_lock() Error: opening lock file: /var/lock/LCK..ttyS3: Permission denied. FAILED TO OPEN: No such file or directory
testRead() Lock file failed

But ... it is there even for the “working build”