Hi friends,
my colleagues, working with Windows OS, reported a problem with ARM-DS painting 'red lines' under the types from 'stdint_t'. See the following:
I tried to reproduce this problem on Linux (I do not work with Windows anymore...), but I was unable to do so.
My colleagues on Windows use Docker images to build and compile their sources. They do not have a cross compiler installed locally on the work PC. So I suspect, that ARM-DS can't frind any C compiler headers as they are usally found under /usr/include/... on Unix systems.
Their questions is now, how these 'red lines' can be removed.
My first idea is to install a cross compiler as well, or at least the usual files from /usr/include/std*.h. Maybe ARM-DS will then be able to find some definition for the C99 types.Any other ideas and or better solutions?Is it possible to configure ARM-DS Eclipse to ignore the C99 type / add them to some dictionary /... ?Andy help is appreciated.
Best regards Carsten
Hi Carsten,
The language support comes from Eclipse itself, rather than anything that Arm can directly control. You can configure what Eclipse highlights in Windows > Preferences > C/C++ > Code Analysis.
FYI, these warnings also disappear when you "#include <stdbool.h".
Regards, Ronan
Hi Ronan,Thanks for the info. But I can only turn off the check at the given location. And "#include <stdbool.h", "#include <stdint.h", "#include <stddef.h" et al. are included in the sources.As it seems, the problem relates to the fact that Docker containers are used to build the source AND that there is no C compiler installed on Windows. So the Code Analysis can't find these standard headers on Windows, because the Compiler and all its headers are inside of a container.
On Linux, this problem doesn't exists. Probably the analyser find some headers in /usr/include. Also on Linux there is no need to use Docker containers, the Linaro compiler is directly installed in /opt.So I presume, that installing a C compiler on Windows might fix the problem. Or using Linux instead of Windows. Any other ideas on how to fix the problem?Regard, Carsten
Hi CarstenThe Eclipse IDE will report indexing errors for include paths or symbols for which it has no visibility (e.g. directory paths in a remote Linux machine in an image being debugged on a local Windows PC).
To resolve this, you must explicitly add any paths or symbols that the IDE has not been able to automatically locate for itself.
Right-click on the project in the Project Explorer view and then selecting Properties... from the context menu. In the dialog box, select: C/C++ General > Paths and Symbols > Add... and then add any missing include paths or symbols. Select both 'Add to all configurations' and 'Add to all languages', then click on Apply so that Eclipse will rebuild the index.
You will also need the C compiler installed in Windows, so that the IDE can find the compiler's include files.Stephen