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.

CODECOMPOSER: Implementing Eigen library for a project with Tiva

Part Number: CODECOMPOSER
Other Parts Discussed in Thread: TM4C1294NCPDT

Hello all,

Long time I don't post. I'm trying to help a colleague who needs to implement Kalman filters in TM4C129. The project is done within Code Composer, and requires the use of Eigen library.

We are getting all sorts of "is ambiguous" errors (among others). My lack of c++ experience (and the unusual way that Eigen uses files without extensions) are not helping figure it out.

Could not find any successful Eigen post here in E2E, so it is either very easy and don't cause people to post, or is very uncommon...

Any guidance?

Cheers

Bruno

  • We are getting all sorts of "is ambiguous" errors (among others).

    Can you show what the errors are, and what your program is?

    I hadn't heard of Eigen before, but just:

    1. Cloned https://gitlab.com/libeigen/eigen.git

    2. Created a new project for a TM4C1294NCPDT in CCS 12.0, using the TI v20.2.7.LTS ARM compiler.

    3. In the project used a main.cpp source file with the code from the simple first program in https://eigen.tuxfamily.org/dox/GettingStarted.html

    4. In the project properties:

    a. Added an include search path to the directory which had cloned Eigen to.

    b. Set the Heap Size and C System stack size to "large" values of 65536 - as didn't analyse the memory usage required.

    5. The example built successfully without any warnings or errors.

    6. Ran the example which produced the expected results from the Getting Started page:

  • Hi Chester,

    Thank you for the quick reply. Lesson learned, a fresh project such as yours was all it took to make it work, instead of a few days lost while trying to add the functionality to an existing project.

    Of course, in the end we did need that project to accept Eigen. In our case the issue was apparently that the initial Eigen functions were being called from a .c file instead of .cpp - which my colleague figured out after following your "just do it" reply. All working here now.

    Thanks again, all the best.

    Bruno