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.

Removing dependency on RTS library

Good morning, we are using a F28377D microcontroller and we need to compile our code without a RTS library.

This is because we are working on a project for aeronautics and we are not allowed to use libraries without creating the appropriate documentation for them. This would result in creating documentation for every part of RTS code, which is not feasible, given the 850 files of the library.

From paragraph 4.3.1 of the document SPRU514I, I read that "You must link all C/C++ programs with a run-time-support library.", so I am wondering: is it really mandatory? Is there any alternative solution? If not, what would you suggest?

Thank you.

  • A problem very similar to yours is discussed in this forum thread.

    Thanks and regards,

    -George

  • Thank you for the information.

    We are considering to re-implement the RTS library with only the files we need.
    From what I have read, this will include for sure boot.asm, boot28.inc, args_main.c, exit.c, _lock.c.
    Do you know if it is possible to have an example project with only these files, or however a limited number of inlcuded files?
    If it is for a different processor it doesn't matter, I would just like to have something to start with.
    Thank you again.

  • Strictly speaking, an assembly-only application doesn't necessarily need any of those files. If you want to run a C/C++ program, you must set up the C/C++ environment; this will at minimum require a boot routine. If you want to use files from the TI library as-is, you'll need at minimum the files you've mentioned. If you call any other C functions, you'll need those files. You could, however, implement everything yourself from scratch; if you don't need locks, don't have your implementation call _lock, etc. It all depends on exactly what you want to do. Sure, we could provide a minimal project, but it would be essentially empty. When you're looking to make a "minimal" project, you need to explicitly state which functionality is required. Do you need anything more than a boot routine which calls your main loop?
  • We are developing a C application. We are not using any function from the standard C library and we are not using locks, so we probably only need a boot routine that calls our main loop.
    We need tu use the Floating Point Unit of the microcontroller, but I am not sure if this affects what we need to re-implement.
    Do you know where I can find a boot routine example for the F28377D?
    Thank you.
  • Luca De Silvestri said:
    Do you know where I can find a boot routine example for the F28377D?

    The source to the entire RTS library, including the boot routine, can be found in a directory location similar to ...

    C:\ti\ccsv6\tools\compiler\ti-cgt-c2000_6.4.7\lib\src

    Thanks and regards,

    -George