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.

"bhERROR: Could not locate CCSv5 INSTALLDIR" reported when running install_drivers.sh on a fresh CCS 6.1.3 installation under Linux

After performing a fresh installation of CCS 6.1.3.00033 in Linux (CentOS 6.7 64-bit) in which selected to install Blackhawk drivers the following error was reported when I run the install_drivers.sh script:

$ sudo /opt/ti/ti_ccs6_1_3/ccsv6/install_scripts/install_drivers.sh 
[sudo] password for Mr_Halfword: 
Uninstalling /etc/udev/rules.d/71-ti-permissions.rules
TI XDS100 installation completed successfully.  Some versions of Linux
require a reboot in order for the driver to function properly.  For other
versions restarting udev is sufficient.  Restarting udev now ... 
Starting udev:                                             [  OK  ]
Starting udev:                                             [  OK  ]
bhERROR: Could not locate CCSv5 INSTALLDIR.  Now exiting script...
Starting udev:                                             [  OK  ]

Not sure why the error is reported about a CCSv5 INSTALLDIR since had installed CCS 6.1.3. I haven't investigated the error, since CCS 6.1.3 is able to use a Blackhawk USB560-M Emulator, 20 pin JTAG. The PC had previously been using earlier versions of CCS 6, so not sure if the error about not locating the CCSv5 INSTALLDIR would cause a problem on a PC which had never had the Blackhawk drivers installed from a previous version of CCS.

The version of Blackhawk Emulators installed in CCS 6.1.3 is 6.0.0.347. I haven't updated to version 6.0.83.001, for the reason described in https://e2e.ti.com/support/development_tools/code_composer_studio/f/81/t/504702

  • Chester,

    Interesting; I don't get this error (although I am using Ubuntu). However, I don't have previous CCSv5 installs in my Linux PC (wiped it out a while ago).

    As you mention, the message mentions "bhERROR", which seems to point to a legacy BlackHawk udev rule. I wouldn't expect this to break functionality, especially given it references a legacy version.

    In any case, I would double-check the udev messages (/var/log/udev) and the dmesg and see if this error happens before the script runs.

    I would also check the dev rules directory (/etc/udev/rules.d) and see if there is an invalid rule there.

    BTW, BH 6.0.83.1 works fine with my BH USB560 (not USB560m or USB560bp).

    Hope this helps,
    Rafael
  • desouza said:
    As you mention, the message mentions "bhERROR", which seems to point to a legacy BlackHawk udev rule. I wouldn't expect this to break functionality, especially given it references a legacy version.

    The bhERROR error message comes from the /opt/ti/ti_ccs6_1_3/ccsv6/install_scripts/bh_emulation_install.sh, i.e. from inside the CCS 6.1.3 installation. When I got the bhERROR from running the CCS 6.1.3 ccsv6/install_scripts/install_drivers.sh the current working directory was my home directory.

    When I changed to the ccsv6/install_scripts directory before running the install_drivers.sh script, then the error no longer occurred and "bh usb560 installation completed successfully" was reported instead:

    $ cd /opt/ti/ti_ccs6_1_3
    $ cd ccsv6/install_scripts/
    $ sudo ./install_drivers.sh
    [sudo] password for Mr_Halfword: 
    Uninstalling /etc/udev/rules.d/71-ti-permissions.rules
    TI XDS100 installation completed successfully.  Some versions of Linux
    require a reboot in order for the driver to function properly.  For other
    versions restarting udev is sufficient.  Restarting udev now ... 
    Starting udev:                                             [  OK  ]
    Starting udev:                                             [  OK  ]
    bh usb560 installation completed successfully.  Some versions of Linux
    require a reboot in order for the driver to function properly.  For other
    versions restarting udev is sufficient.  Restarting udev now ... 
    Starting udev:                                             [  OK  ]
    Starting udev:                                             [  OK  ]
    

    i.e. the ccsv6/install_scripts/bh_emulation_install.sh script seems sensitive to the current working directory. Not sure if the script can be changed to avoid this issue.

    Edit: The http://processors.wiki.ti.com/index.php/Linux_Host_Support_CCSv6#Installation_Instructions do say to change to the <CCS_INSTALL_DIR>/ccsv6/install_scripts directory before running the ./install_drivers.sh script, so my mistake in not reading the instructions.

  • desouza said:
    BTW, BH 6.0.83.1 works fine with my BH USB560 (not USB560m or USB560bp).

    Which GNU libc version does ldd --version report on your system?

    On my CentOS 6.7 system the GNU libc version is 2.12 and as I tried to explain on the other thread "Blackhawk CCSv6.0 Emulation Update 6.0.83.001" requires a lather GNU libc version 2.15.

    I guess that to get better support should switch to Ubuntu LTS since that is what TI test CCS on.

    [My use of CentOS 6 is historic from using different software tools]

  • Chester,

    Interesting; I don't have any BH or SD scripts in the install_scripts subdirectory (I installed using the web version). However, IIRC there is a difference when installing CCS as sudo (which I usually do), where each component installer runs the underlying scripts during install time. When installing CCS as user, the component installers copy their scripts to the install_scripts subdirectory.

    I am installing CCS as user just to see if I got this right.

    ldd --version reports 2.19 for me (Ubuntu 14.04/64), thus the same problem (I replied to the other thread - sorry it skipped our radar).

    If you are planning to change but is not a fan of Ubuntu, a popular alternative is Mint - it is based on the same platform, same packages but not the same Unity desktop.

    Regards,
    Rafael
  • desouza said:
    Interesting; I don't have any BH or SD scripts in the install_scripts subdirectory (I installed using the web version). However, IIRC there is a difference when installing CCS as sudo (which I usually do), where each component installer runs the underlying scripts during install time. When installing CCS as user, the component installers copy their scripts to the install_scripts subdirectory.

    Thanks for the information.

     In my case I installed CCS 6.1.3 using the web version as a user, and run the install_drivers.sh as sudo as prompted after the CCS installation as a user had finished. 

    desouza said:
    ldd --version reports 2.19 for me (Ubuntu 14.04/64), thus the same problem (I replied to the other thread - sorry it skipped our radar).

    If you are planning to change but is not a fan of Ubuntu, a popular alternative is Mint - it is based on the same platform, same packages but not the same Unity desktop.

    I will give Ubuntu a try on a test PC, to check if CCS and my other applications run OK.

    One other annoyance with CentOS 6.7 is that a XDS110 doesn't work with the default Kernel, since the XDS110 driver generates some IOCTL requests which the 2.6.32 Linux Kernel doesn't support.

  • Chester,

    I confirmed that installing CCS as a user creates several additional installer scripts in the subdirectory - moreover, the script is different than the one installed under ccs_base/emulation/Blackhawk/Install. They are most probably dynamically generated by the component installer. (similar thing for Spectrum Digital)

    One additional detail that may influence your choice of OS is that, starting with CCSv6.2.0 (somewhere in June/July) Linux 32 bits will be deprecated in favor of 64 bits.

    Cheers,
    Rafael