We are using Hudson to create nightly headless builds of our firmware project. This worked fine using an earlier version of CCS but since we upgrade to M8 (later to M8.5) it resulted in an error.
To reproduce:
1) Create a project that will produce a compile warning (e.g. unreachable code after a return statement)
2) Clean the project
3) Run the following command
C:\ti\ccsv5\eclipse\eclipsec.exe" -nosplash -application org.eclipse.cdt.managedbuilder.core.headlessbuild -data "C:\CCSWorkspaceV5" -build "myproject/Debug"
I attached the .log file from the workspace metadata. I have some experience with eclipse plugin development and I think I figured out what happens:
!MESSAGE An error occurred while automatically activating bundle com.ti.ccstudio.resource.explorer (460).
Caused by: org.eclipse.swt.SWTError: Invalid thread access
[...]
at com.ti.ccstudio.internal.resource.explorer.ResourceExplorerPlugin.start(ResourceExplorerPlugin.java:77)
Your bundle resource explorer is trying to load icons which obviously fails in a headless environment (see http://www.eclipse.org/swt/faq.php#uithread )
Unfortunately its class com/ti/ccstudio/internal/resource/explorer/ResourceExplorerUtils is then not loaded but required by the error parser:
java.lang.NoClassDefFoundError: com/ti/ccstudio/internal/resource/explorer/ResourceExplorerUtils
at com.ti.ccstudio.errorparser.parsers.PatternProvider.createPatternData(PatternProvider.java:338)
Without detailed knowledge of your code I obviously can't suggest a fix but in theoery the following methods could work:
1) Make ResourceExplorer work in headless mode
OR (probably easier)
2) Remove the dependency to ResourceExplorerUtils
We helped outselves by crating a dummy class file that contains an empty function (attached). This way, headless compiles work for us.
By the way we also found a compiler bug when compiling one of our files. It was introduced in M8.5 but we have not narrowed it down yet:
INTERNAL ERROR: C:\ti\ccsv5\tools\compiler\tms470\bin\acpia470.exe experienced a segmentation fault while
processing
We will try to create a sample project and narrow down what creates the crash.
If you need more details feel free to contact me, we really would like to see this fixed in one of the next versions.