Troubleshooting CCS
From Texas Instruments Embedded Processors Wiki
Contents |
Overview
This guide provides some suggestions for CCSv5 users experiencing odd generic issues not covered in FAQs or other topics and having difficulty to reproducing in other environments (creating a reproducible test case to provide to support). It also describes how to find/generate additional diagnostic logs that will be useful to provide to TI when reporting an issue.
IMPORTANT! This page refers to CCSv5. For CCSv4 troubleshooting please check: Troubleshooting_CCSv4
Installation
1. Errors in startup script: For errors in startup script like the following, make sure to extract the offline installer zip file into a temporary folder and then run the setup.exe rather than installing it directly "on-the-fly".
Error in action ExecuteScript
can't read "fileList": no such variable
while executing
"::InstallJammer::actions::$component $this"
while executing
"$obj_execute"
(procedure "::InstallJammer::ExecuteActions" line 62)
invoked from within
"::InstallJammer::ExecuteActions "SetupActions""
(procedure "::InstallJammer::ParseCommandLineArguments" line 142)
invoked from within
"::InstallJammer::ParseCommandLineArguments $::argv"
(procedure "::InstallJammer::InitInstall" line 62)
invoked from within
"::InstallJammer::InitInstall"
(file "/installkitvfs/main.tcl" line 64456)
2. Clearing out existing installation: For failure during installation (CCS installer fails to complete), try removing all files under the InstallJammer registry folder for CCSv5 before retrying the installation. The path to the folder is typically:
- 32-bit Operating Systems: C:\Program Files\InstallJammer Registry\ccsv5
- 64-bit Operating Systems: C:\Program Files (x86)\InstallJammer Registry\ccsv5
Try deleting the entire 'ccsv5' folder. Keep in mind this will erase the install information of other CCSv5 versions you may have installed in parallel. If in doubt, check the date and time of each directory and delete the one that matches your attempt of install.
3. Installer hangs during installation: For issues where the web installer hangs during installation and generates following error, try one of the following suggestions:
- check your proxy settings - as the settings may be blocking the installer from downloading packages
- disable anti-virus software running on your machine as that may conflict with the installer
- download and install from the offline installer
Error in action ExecuteAction Error in action ExecuteScript couldn't open socket: invalid argument while executing "::InstallJammer::actions::$component $this" while executing "$obj execute" (procedure "::InstallJammer::ExecuteActions" line 69) invoked from within "::InstallJammer::ExecuteActions $action -parent $id -conditions $eval" (procedure "::InstallJammer::actions::ExecuteAction" line 35) invoked from within "::InstallJammer::actions::$component $this" Error in action ExecuteAction Error in action ExecuteScript couldn't open socket: invalid argument while executing "::InstallJammer::actions::$component $this" while executing "$obj execute" (procedure "::InstallJammer::ExecuteActions" line 69) invoked from within "::InstallJammer::ExecuteActions $action -parent $id -conditions $eval" (procedure "::InstallJammer::actions::ExecuteAction" line 35) invoked from within "::InstallJammer::actions::$component $this" while executing "$obj execute" (procedure "::InstallJammer::ExecuteActions" line 69) invoked from within "::InstallJammer::ExecuteActions $id -when $when" (procedure "::InstallJammer::RaiseEventHandler" line 93) invoked from within "::InstallJammer::RaiseEventHandler .wizard" (command bound to event)
4. CCS crashes during startup: There is a known issue where running the installer from a directory with accented characters can cause it to crash during startup and generate error log like the following. Make sure to run the installer from a directory without any accented or double-byte characters. It is also advisable to install CCS to a directory without any special characters. The default c:\ti is recommended.
eclipse.buildId=I20110613-1736
java.version=1.6.0_13
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=hu_HU
Framework arguments: -product com.ti.ccstudio.branding.product
Command-line arguments: -os win32 -ws win32 -arch x86 -product com.ti.ccstudio.branding.product
!ENTRY org.eclipse.equinox.app 0 0 2012-02-02 20:55:38.818
!MESSAGE Product com.ti.ccstudio.branding.product could not be found.
!ENTRY org.eclipse.osgi 4 0 2012-02-02 20:55:38.911
!MESSAGE Application error
!STACK 1
java.lang.RuntimeException: No application id has been found.
at org.eclipse.equinox.internal.app.EclipseAppContainer.startDefaultApp(EclipseAppContainer.java:242)
at org.eclipse.equinox.internal.app.MainApplicationLauncher.run(MainApplicationLauncher.java:29)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
5. CCS does not start up after installation: If CCS does not start up properly and generates an error log that looks something like below, it may be that another software package uninstalled the Microsoft Visual Studio redistributable packages that CCS relies on. If so, reinstalling the VC redistributable package(s) that comes with the CCS installer should resolve the error. They are located in the CCS installer at \baserepo\vcredist*.exe.
!ENTRY org.eclipse.osgi 4 0 2011-12-21 10:31:07.133 !MESSAGE An error occurred while automatically activating bundle com.ti.ccstudio.debug.server (342). !STACK 0 org.osgi.framework.BundleException: Exception in com.ti.ccstudio.debug.server.DebugServerPlugin.start() of bundle com.ti.ccstudio.debug.server. at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:734) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683) at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:299) at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:440) at org.eclipse.osgi.internal.loader.BundleLoader.setLazyTrigger(BundleLoader.java:268) at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:107) at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:462) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216) at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:400) at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:476) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:429) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:417) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107) at java.lang.ClassLoader.loadClass(Unknown Source) at org.eclipse.osgi.internal.loader.BundleLoader.loadClass(BundleLoader.java:345) at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:229) at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1207) at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:174) at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:905) at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:243) at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:55) at com.ti.ccstudio.core.CCStudioPlugin.getXPCOMRuntimeAdapter(CCStudioPlugin.java:85)
6. No update sites found: In some cases, when looking for updates, the list of CCS update sites may come up empty (under Help->Install New Software), thereby not listing any available updates. To restore the list, download the attached file, and unzip to extract the .xml file. Then go to CCS menu Window->Preferences->Install/Update->Available Software Sites, click on Import, browse to the attached file and click Ok.
General IDE
CCS is based on the Eclipse open source framework and when experiencing various odd/corrupted behavior (missing menu options, "blank" views, plug-ins are missing or no longer behave properly, random crashes, etc), common tips on cleaning up your Eclipse environment also apply to CCS. Some of these tips are:
1. Reset the perspective: If the issue is strange GUI appearance (missing menu options or strange/empty looking views), often just resetting the perspective can resolve this. This can be done by selecting 'Window->Reset Perspective'
2. Use the -clean argument when calling ccstudio.exe: CCS is launched by running the '.\ccsv5\eclipse\ccstudio.exe' executable. This is what is called when using the CCS desktop shortcut. However, ccstudio.exe can be called with some command line arguments. One of them is '-clean'. When calling 'ccstudio.exe' with '-clean', it will clean out cached data by the IDE and plug-ins upon launching CCS. Sometimes this cached data can get corrupted over time and cleaning it out can fix many problems. Note that launching CCS with '-clean' will cause the launch time to be slower so it is not recommend to use it every time but only when needed. To add the '-clean' option simply right-click on the CCS desktop shortcut and at the end of the "Target" field, enter '-clean'.
3. Clean the workspace (or try using a new one): CCS stores various information in a folder called '.metadata' located in the user's workspace. The contents of this folder can get corrupted over time, causing various instability and strange behavior. Using a new workspace or cleaning the old workspace often helps resolve these issues. To use a new workpspace, simply select a new workspace location ('File->Switch Workspace'). If you wish to clean the old workspace, the simplest way to do this is to delete the '.metadata' folder in the workspace. This will essentially reset the workspace and restore the environment to the default behavior. All projects that were in the workspace will need to be re-imported into CCS, even though they are still physically in the workspace folder. Also note that any modified preference settings will be lost (set back to the default setting). If you wish to avoid resetting those preferences, export the preferences to a file (outside the workspace) by selecting 'File->Export...->General->Preferences->To preference file' before deleting the workspace. Once the workspace has been cleaned, those preferences can be imported back into CCS by selecting 'File->Import...->General->Preferences->From preference file'
Debugger
For issues encountered during a debug session (launching a debug session, target connectivity issues, crashes experienced during debugging). Note that cleaning the workspace can also help resolve debugger issues.
1. For JTAG specific issues, see: Debugging JTAG Connectivity Problems
2. Delete the debug launch configuration: A launch configuration is a configuration file that Eclipse creates when a debug session is started; it caches the information on which target configuration to use, target options and several other settings.
- Go to menu "Run-->Debug Configurations..."
- Under "Code Composer Studio - Device Debugging", select the name of your launch configuration and delete it.
3. Delete target cache files:
- Cache files are saved in a user and CCS installation specific location.
- On Windows XP the location is: C:\Documents and Settings\<Your Login ID>\Local Settings\Application Data\.TI
- On Windows 7 the location is: C:\Users\<username>\AppData\Local\.TI\
- On Linux, there is a hidden directory named .TI and located in the user area. The location is ~/.TI
Information for Support
- Before posting a support question, please include the information requested in this page. Be sure to include relevant CCS diagnostic logs as described below:
CCS Diagnostic Logs
When contacting TI for support, in addition to the usual information, providing the following additional diagnostics logs can help support personnel in their investigations:
- Install Logs
- Eclipse/JVM Error Logs
- Crash Dump Files
- Debug Server Logs
- cTools/Trace Logs
For CCSv5, there is a utility that will automatically grab the above logs except the cTools/Trace Logs. This utility is accessible via 'Help->CCS Support Activities' menu. This will launch the CCS Support dialog:
From the above dialog are options to view various logs ('View' button), e-mail to support ('Email...'), clear the log ('Clear') and to enable logging ('Properties...'). Only the Debug Server Log is not enabled by default. To enable it, highlight it and click on Properties, check the box to 'Enable Debug Server Logging' and specify a location to save the log file. There is also a button to 'Archive Logs...'. This will zip up all the enabled logs to a location on your PC. This zip file can then be e-mailed or attached to the CCS support forums.
Debug Server Logging
- This is NOT enabled by default. Enabling Debug Server Logging will slow overall CCS performance, so it is not recommended to leave logging enabled. If you are unable to provide a reproducible test case to TI support, you can enable debug server logging to generate additional diagnostics logs. These logs will only be useful for issues related to the debug server (ex: can't connect to the target, debugger hangs, etc) and useless for other issues like project management or the editor. Logging data from the debugger can get very large, so it may be desirable to only enable debug server logging just before the event of interest is being exercised.
- You can also enable logging from within CCS by entering eval("DEBUG_LogEnable(1)") in the Scripting Console
cTools/Trace Logging
To generate cTools/Trace logs:
- Quit CCS.
- Right click on the “MyComputer” icon on your desktop.
- Select “Properties”.
- On XP select System Properties, in Win7 click on "Advanced System Settings"
- In the System Properties dialog, click on the “Advanced” tab. (should already be selected in Win7)
- Click on the “Environment Variables” button. In the “Environment Variables” dialog
- Under the “User variables” group, verify that the “TI_TRACE_LOGGING” environment variable exists and has a value of 6. Create it if it is not there.
- Click “OK” in all dialogs. Restart CCS.
- Reproduce the problem, noting what steps were performed in what order.
- Zip up the log file and send it to TI via the forums. The log file will be in /ccsv5/ccs_base/emulation/analysis/bin/Logs/ (WinXP) or /users/<userid>/.TI-trace (Win7). The file name will be something like: ti_trace_log_MMDDYY_PID.txt file.
