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 Build Variable BIOS_CG_ROOT missing in TI-RTOS

Other Parts Discussed in Thread: SYSBIOS

Hello,

I'm trying to convert a project from using SYS/BIOS 6.35.04.50 / XDC-Tools 3.25.3.72 to TI-RTOS-C6000 V2.0.1.23 / XDC-Tools 3.30.5.60.

A problem occurs when using the build variable BIOS_CG_ROOT within the compiler include search path or in the Pre-/Post-build steps. The variable doesn't exist any more. There is also a variable definition for COM_TI_RTSC_SYSBIOS_INSTALL_DIR, but it seems to be empty.

Is there another way to get the SYS/BIOS installation directory in a variable?

Thanks,
Ralf

  • Ralf,

    Try this:

    • Right-click on your project and select Properties
    • Select Build on the left pane and under the variables tab,  check the Show system variables checkbox
    • Scroll through the list of variables that show up and search for BIOS_CG_ROOT. If it's already there, select it and click the Edit button on the right, if not click Add
    • In the Add/Edit window, select Directory from the Type drop-down list.
    • For value, Browse to the path <TI-RTOS_INSTALL_DIR>/products/bios_6_40_xx_xx
    • Click OK and Apply the modified Properties. Rebuild your project and see if that fixes it.

    Here's an screenshot of what the process should like:

    Let me if this helps

    Moses

  • Hard-coding the directory into the variable is something I was trying to avoid. It makes automation very error-prone.

    I think the variable definitions for the other RTSC products are also removed in TI-RTOS:
    NDK_INSTALL_DIR, COM_TI_UIA_INSTALL_DIR, COM_TI_RTSC_IPC_INSTALL_DIR

    Thanks,
    Ralf

  • Ralf,
    Moving from a SYS/BIOS project to TI-RTOS is not as straight-forward. They are both distinct products in CCS and the environment variables and project properties don't carry over. It's a whole lot more straight-forward if you're going from one version of TI-RTOS to another. In this case the project should build without any changes. For your case, I'd suggest that you start a clean, fresh TI-RTOS project (Hello world or minimal) and migrate your code over. It'll save you all the battling with Environment variables. The next time you upgrade to a newer TI-RTOS for C6000 you wouldn't need to do anything, your project properties and environment variables will carry over.

    Let me know if this helps

    Moses
  • Moses,

    I already have working TI-RTOS projects.
    This doesn't answer the question about of having the installation directory of SYS/BIOS defined in a system variable. Maybe it's not possible any more?

    Moses Isang said:
    ... The next time you upgrade to a newer TI-RTOS for C6000 you wouldn't need to do anything, your project properties and environment variables will carry over.

    This is exactly what will not work any more, because the directory would have to be hard-coded into a variable. This was no problem with SYS/BIOS because BIOS_CG_ROOT was a system variable which was automatically updated.

    Thanks,
    Ralf

  • Ralf,

        Yes you're correct, the BIOS_CG _ROOT variable should update automatically. The guys on the CCS forum will be the best people to answer this question. However, from my experience this is not a problem when you're going from one TI-RTOS  to a newer one. The environment variables will be automatically updated. Going from SYS/BIOS to TI-RTOS might be where the problems you're seeing are.

    Regards,

    Moses

  • I don't think this is a CCS issue. I think the variable was simply removed in TI-RTOS.

    It comes down to my original question to which I still don't have an answer yet:
    Is there another way to get the SYS/BIOS installation directory in a variable?
    I mean a system variable, not user-defined.

    Thanks,
    Ralf

  • Ralf,

       Why do you need a SYS/BIOS installation directory variable if you're using TI-RTOS? TI-RTOS doesn't depend on the BIOS_CG_ROOT variable. TI-RTOS creates its own installation directory as a system variable and doesn't create one for SYS/BIOS. The other sub-products, one of which is SYS/BIOS are accessed relative to the TI-RTOS installation directory. To answer your question, if you need a SYS/BIOS installation directory variable when using TI-RTOS (still don't know why you'll need to), you'll have to manually add it the way I described in my first post.

    By the way if you're porting a SYS/BIOS project to TI-RTOS, we have a Porting Guide you'll find useful.

    Regards

    Moses

  • Moses,

    I know that this variable normally is not required. But I need the SYS/BIOS path in a variable, because I'm using it in a Pre-build step to generate a RTSC package:

    set XDCPATH=${BIOS_CG_ROOT}\packages && ${XDC_CG_ROOT}\xdc.exe

    My RTSC package depends on some SYS/BIOS modules. Therefore I'm using BIOS_CG_ROOT to create the XDCPATH environment variable.

    There is also a XDCPATH system variable in CCS which could be used instead. But because of a bug in CCSv6 (SDSCM00051627), this variable isn't applied correctly in Pre-/Post-build steps.

    I think the conclusion ist that it isn't possible to solve this problem with TI-RTOS and CCSv6 at the moment.

    Ralf

  • Ralf,
    At least can you confirm that you're able to manually create the variable for your special case and it works?

    Regards,
    Moses
  • I'm sure that this would work.

    Thanks a lot four your time Moses.

    Ralf