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.

CCS: Product discovery path

Tool/software: Code Composer Studio

Hello,

Is there a way to set a discovery path for a product to be part of the project setting file and that the path itself will be relative to one on the project's variables?

Specifically i am looking for a way to tell CCS under the project's properties->CCS General to take the compiler from a folder that is relative to one of the project's predefined variables.

Currently i can only select the compiler version from a predefined list and if i want to add another, i can press the "more" button but this takes me to the general CCS settings (not project related" and there also i can only set an absolute path.

I will appreciate any help/advice you can provide.

Thanks

Guy

  • Guy,

    Product discovery settings are stored in the CCS installation vs the project. The reason for this is so that projects can be portable across users installations. The project stores the products and versions used and then CCS resolves the locations based on the users discovery path.

    There is a similar discussion here: e2e.ti.com/.../2436412

    I suspect that you are doing something similar to what that user was doing.

    Regards,
    John
  • Guy,

    This may be possible (I haven't tested this). CCS automatically creates the build variables that are used by the builder (such as CG_TOOL_GCC, CG_TOOL_LD, etc.) based on the tool selection on the project properties, but this variable can be edited and overriden by project-specific ones. You would need to edit all the relative variables yourself. An example for the GCC compiler is shown below, where the "GCC" was edited:

    You could also change the build command on the project itself and point to a custom variable of your choosing. This guarantees the variable will not be overriden if someone accidentally changes the compiler used by the project. 

    At last, you could instead standardize the method to install CCS among the different workstations in your company - if that is what you are looking for. An example is shown at:

    http://processors.wiki.ti.com/index.php/Enterprise_distribution 

  • Note that what Rafael suggested would likely work ok but there is a catch. Overriding the variable should be fine but CCS would have to be aware of (i.e. discovered) a compatible version of the compiler to initiate the build. This is likely pretty easy for you to manage. It seems like your main concern is to ensure that the exact compiler in your repo is being used instead of a different one. With this scenario if the project builds it would always use the one in your repo. However if the compiler in the repo is very different from what CCS is aware of a user may have to install something similar for the build to proceed (even though CCS will use the one in the repo to build).
  • Hello,
    Thank you all.

    What i need is a way to define the discovery path relative to the project's location (not even the work-space or CCS location). i need to be agnostic to drive letter and absolute paths. The only thing i can depend on is the relative location of the tools to to location of the project's source files.
    The closest thing so far seems to be what desouza wrote but if i understood John remark it will still not help me since CCS will need to already be familiarize with the products i need from is absolute CCS discovery path.
    Is there any other alternative to accomplish what i need?

    Thanks
  • Guy,

    No matter what CCS has to discover the compiler in order to be able to use it. You can setup the variables as Rafael has shown and doing that CCS would be using the compiler relative to your project when it invokes it. But CCS still has to be aware of the compiler. You could have a readme in your project telling your other team members to update the discovery path to point to the location of the compiler. However if you are going to do that then there really isn't much benefit to messing with the variables. The project itself is just storing the compiler version and not an absolute path to the tools. So if the user then setup the path it would use the desired compiler.

    John