Hello I am using MCUXpresso IDE, version v10.1.0 [Build 589] [2017-11-14] with an MIMXRT1050-EVK SDK, version 2.3.0 (2017-11-16). I am attempting to run the IDE in headless mode via a Gitlab CI job but I am encountering the following error (!MESSAGE Unable to find part support for NXP MIMXRT1052xxxxx in project fennec_meterboard Resetting to generic part for core cm7):
!SESSION 2017-12-18 10:17:47.016 -----------------------------------------------
eclipse.buildId=unknown
java.version=1.8.0_141
java.vendor=Oracle Corporation
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_CA
Framework arguments: -application org.eclipse.cdt.managedbuilder.core.headlessbuild -import /home/gitlab-runner/builds/4c8286cc/0/firmware//fennec-meterboard -build fennec_meterboard
Command-line arguments: -os linux -ws gtk -arch x86_64 -application org.eclipse.cdt.managedbuilder.core.headlessbuild -import /home/gitlab-runner/builds/4c8286cc/0/firmware//fennec-meterboard -data /tmp/mcuxpresso-ci-workspace -build fennec_meterboard
!ENTRY com.nxp.mcuxpresso.core.datamodels 1 0 2017-12-18 10:17:49.550
!MESSAGE Recreating part support. No part support available.
!ENTRY com.crt.log 1 0 2017-12-18 10:17:49.593
!MESSAGE Unable to find part support for NXP MIMXRT1052xxxxx in project fennec_meterboard Resetting to generic part for core cm7
!ENTRY com.crt.log 4 -1 2017-12-18 10:17:50.682
!MESSAGE Unable to find part support for NXP MIMXRT1052xxxxx in project fennec_meterboard Resetting to generic part for core cm7
!STACK 0
java.lang.Exception: java.lang.Exception: Unable to find part support for NXP MIMXRT1052xxxxx in project fennec_meterboard Resetting to generic part for core cm7
at com.crt.utils.general.Reporter.log(Reporter.java:603)
at com.nxp.mcuxpresso.core.datamodels.providers.SDKManifestProvider$4.run(SDKManifestProvider.java:721)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
Caused by: java.lang.Exception: Unable to find part support for NXP MIMXRT1052xxxxx in project fennec_meterboard Resetting to generic part for core cm7
at com.crt.config.database.TargetConfig.initFromString(TargetConfig.java:1351)
at com.crt.config.database.TargetConfig.init(TargetConfig.java:1240)
at com.crt.config.database.TargetConfig.<init>(TargetConfig.java:679)
at com.crt.config.database.TargetConfig.loadTargetConfig(TargetConfig.java:365)
at com.crt.config.database.TargetConfigDatabase.load(TargetConfigDatabase.java:73)
at com.crt.config.database.TargetConfigDatabase.findTargetConfig(TargetConfigDatabase.java:136)
at com.nxp.mcuxpresso.core.datamodels.providers.SDKManifestProvider$4.run(SDKManifestProvider.java:690)
... 1 more
It appears that when run in headless mode that the IDE is not able to determine the processor type and I assume this is because it can't find the appropriate SDK. There is a CLI option for the config tools called '-SDKpath' but it is not accepted by MCUXpresso.
I am using the following build script, similar to that suggested in Building Projects From The Command Line
#!/bin/bash
TOOLCHAIN_PATH=/usr/local/mcuxpressoide-10.1.0_589/ide/bin/
IDE=/usr/local/mcuxpressoide-10.1.0_589/ide/mcuxpressoide
MCUXPRESSO_WORKSPACE=/home/USER_NAME/Documents/MCUXpresso_10.1.0_589/workspace-nxp/
SDK_PATH=/home/USER_NAME/mcuxpresso/01/SDKPackages/SDK_2.3.0_EVK-MIMXRT1050.zip
WORKER_BUILD_DIR=/home/gitlab-runner/builds/4c8286cc/0/firmware/
REPO_NAME=MY_PROJECT_NAME
PROJECT_NAME=MY_PROJECT_NAME
PATH=$PATH:$TOOLCHAIN_PATH
echo Launching Eclipse IDE
"$IDE" -nosplash --launcher.suppressErrors -application org.eclipse.cdt.managedbuilder.core.headlessbuild -import "$WORKER_BUILD_DIR/$REPO_NAME" -data "$MCUXPRESSO_WORKSPACE" -cleanBuild "all" -build "$PROJECT_NAME"
Just a note, when building outside of the Gitlab CI process, i.e. as the user that installed MCUXpresso I can run the headless build process successfully. I have dumped the default user environment in hopes the SDK path might be injected as an environment variable but I see no such variable.
My questions are:
How does one communicate the location of the SDK to MCUXpresso in headless mode? I see no CLI options for this.
Has anyone had success running MCUXpresso in a similar CI environment? If so please post your build script and any suggestions.
Thanks.