This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Headless build not working in CCS5.1 M8 and M8.5 (regression)

Other Parts Discussed in Thread: CCSTUDIO

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.

  • Attached is our temporary solution, we compiled this file and placed it into an extracted version of com.ti.ccstudio.errorparser_5.1.0.201109081200.jar

  • What is the current progress on this? I haven't tried it in a newer version yet but I would appreciate some sort of reply or feedback on my bug report.

  • Hi,

    Sorry for the late respond. I wasn't able to reproduce the error that you have attached. However, I have made adjustment to the errorparser plugin code not to depend on the Resource Explorer plugin. This should take care of the image loading issue for headless mode.

    Thanks,
    Patrick

  • Thanks, I'll be glad to try it and report back. Is the change already in one of the public builds?

  • It will be available in the up coming update 5.1.1, end of Jan 2012. If this issue is blocking for you, I can probably give you an early engineer build when it is ready.

    Let me know if you want to try out an early version. If I don't get back to you in couple of weeks, ping me again.

    Here is the CQ number for this defect: SDSCM00042411.

    Regards,
    Patrick