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.

build SYSBIOS on command line and trim down

Other Parts Discussed in Thread: SYSBIOS, DM3725

Hello,

I am developing software for C6000 DSP with CCS 5.3, using SYSBIOS and SYSLINK.

The build will eventually need to be done on the command line under Linux, integrated in a wider build environment.

Also, we will want to move the tools (including SYSBIOS) under source control (we use Clearcase).

If it wasn't for SYSBIOS, I could move under clearcase just the code generation tools (less than 100Mbytes) and build the application using makefiles.

For the SYSBIOS part, though, it looks like there isn't an easy way of doing a build on the command line outside of CCS.

Also the bios and xdctools directories seem quite unwieldy because of their size for our clearcase server; they contain all possible supported platforms. Could they be trimmed down?

So my question is: is there a way to do the two things I want, i.e.:

1) build SYSBIOS using makefiles

2) strip down the bios/xdctools/ipc directories to contain only my target so that I can get a minimal size.

thanks

  • Hello Claudio,

    SYS/BIOS does include a method to rebuild it from the command line. If you look in the SYS/BIOS User's Guide, you should find a chapter called "Rebuilding SYS/BIOS." Please see if this will fit your needs. Note that it says, "Any targets for which you do not specify a compiler location will be skipped during the build." This will help you cut down on the size of the installation.

    I believe IPC has a similar rebuilding mechanism in place as well. See its User's Guide for more information.

    Whitney

  • Claudio,
    for 1), are you talking about rebuilding SYSBIOS or just using SYSBIOS in your build that should run on the command line?

    For 2), I believe most of the XDCtools size is due to the content of packages/ti/targets/rts6000/lib directory. As far as I know, there is no XDCtools release that would extract only the files from that directory that you need. What you would have to do is to create your own version of XDCtools by picking only components that you need. I am not sure how Clearcase works, but you would have to keep the whole packages/xdc directory and the whole packages/ti directory except that in packages/ti/targets/rts6000/lib you would need only two files, depending on what your target is. If you want to try this, I can give you more details, but be aware you would be doing something that's not tested or officially supported.   

  • Sasha, Whitney,

    1) my title and description was not very good really. What I want to know is: "how to build a SYSBIOS application using the command line?".

    My project will contain a SYSBIOS application, with its app.cfg. What I want to do is to build this app from the command line/makefile.

    I can see that the SYSBIOS configuration part is built using the 'xs' program specifying the 'configuro' tool with a bunch of parameters. I tried to run that but I got a few errors.

    Now I've find the BIOS user's guide (SPRUEX3L) contains a section on this and I am trying again to make it work (I should have RTFM at the start, I guess!).

    I'll come back here as soon as I stumble again...

    2) I've taken a more detailed look at the content of the xdctools directory and I guess that as a start I should be able to remove from the packages/ti/targets the arm,rts5500, rts5400, rts2800, msp430, rts470 which are not relevant to my architecture (c6000). This would reduce the size to half of the original.

    Thanks

  • Hi All,

    I am posting it here as I need to do similar things. need to build Sysbios through command line and then link my project along with sysbios. as far as I read XDC tool helps to generate .cfg file and then .opt ,linker which helps to link the application and sysbios and generate .out . Everything happens good in CCS but how to do outside CCS through make files  . i ran bios.mak by setting xdc path and target it ran sucessfully. i guess thats just to rebuild sysbios, the whole integarting part is still unknown to me. any leads on it will be of greater help .

  • John,

    Please see section “2.4.3 Building an Application with GCC” in the kernel user’s guide (www.ti.com/.../spruex3o.pdf).  This describes the build steps and flow for building an app on the command line.  It uses GCC, but the same concepts can be used for TI or other tool chains.

    Another example in the SYS/BIOS FAQ might help - it shows building with a makefile with TI tools on Linux:
    processors.wiki.ti.com/.../BIOS_FAQs

    Regards,
    Scott

  • thanks Scott . I was able to build it successfully.

    the *.cfg builds to generate a folder containing compiler.opt linker.cmd and sys bios package containing obj s i hope this can be a one time process of invoking xdc using the configro command. and thus rebuilding application files only if ddnt change *.cfg file. any idea what should be my target and platform if am using beagleboard xm or dm3725.
  • John,

    For your follow up question about the DM3725… This device is not in the formal list of devices supported by SYS/BIOS.  But, I asked around, and we think that you should be able to use the “sdp3430” platform on this device, for both ARM and DSP projects.

    ARM
        target = ti.targets.arm.elf.A8Fnv
        platform = ti.platforms.sdp3430

    DSP
        target = ti.targets.C64P
        platform = ti.platforms.sdp3430

    Regards,
    Scott

  • Hi Scott,
    Hi Scott,

    Thanks for you answer. currently we are having a Beagleboard XM development kit and we use the following target and platform .
    TARGET = ti.targets.C64P
    PLATFORM = ti.platforms.evm3530

    later we are planning to migrate to use DM3725, hence can we use platform = ti.platforms.evm3530 for the same?

    Regards
    John
  • John,

    I just compared the memory map of the two platforms, and yes, I think ti.platforms.evm3530 should work too.

    You’ll want to double check the DSP clockRate in your case.  For evm3530 it is defined as 330, for sdp3430 it is 312.4.

    Regards,
    Scott