Skip to main content

Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Language IDEs » C / C++ IDE (CDT) » Multiple CDT embedded targets(Wishlist type item - importable libraries)
Multiple CDT embedded targets [message #1853452] Sat, 02 July 2022 17:35 Go to next message
Duane Ellis is currently offline Duane EllisFriend
Messages: 2
Registered: July 2022
Junior Member
What is missing from eclipse is the ability to create a pure C source code library that can be reused and reasonably imported into an EMBEDDED CDT package used by various CHIP venders

Take this as an example to try:
Create your own replacement implementation of the standard "string.h" library - its an example for this discussion.

I want to be able to create a library package that I can give to somebody and they cause within their already existing project.

The project would have for example these 3 things:

a) one "common src" directory

b) An optional series of target specific directories
* For example an optimization library for Arm CORTEX-M series
* Another for the ESP-32 series of chips
* Another for Xilinx Micr[/ALIGN]oBlaze
* etc.[/ALIGN]

c) One "common include directory"

d) Maybe a target-specific include directories

e) This should be buildable in either a DEBUG or RELEASE configuration
in effect as a standalone library for maintenance operations and maintenance builds, and test builds

f) When Imported into other tools - like Xilinx or STM - it should come in as a standalone project within the workspace, and automatically add the selected INC dirs to your APPLICATION project, and add the LIBRARY name to the list of libraries linked to your project

G) The ability to remove the library from the project

Right now, (E) and (F) and (G) is not possible and that makes it painful, very painful to use Eclipse CDT
Re: Multiple CDT embedded targets [message #1853479 is a reply to message #1853452] Mon, 04 July 2022 13:57 Go to previous messageGo to next message
tepalia02 02 is currently offline tepalia02 02Friend
Messages: 20
Registered: April 2022
Junior Member
Hi, tried this old thread?
Re: Multiple CDT embedded targets [message #1853485 is a reply to message #1853479] Mon, 04 July 2022 15:37 Go to previous message
Duane Ellis is currently offline Duane EllisFriend
Messages: 2
Registered: July 2022
Junior Member
That's not even close to usable.

I could go through a provide a list of "requirements" - for what I'm looking for but I think I would be wasting my time

I am at times so frustrated that I would like to 100% replace all of CDT with something that is usable
and at times, I think I have to re-write it on my own.

What's wrong with the current implementation is this:

a) When I import a library it is not immediately usable by other members of the workspace.

Ok it is if you perform 'surgery' on all of the other projects, such as:

A library publishes or produces a "public api include folder" - why do I have to add this to all other members of the workspace?

The library creates a code library, why do I have to manually modifiy all applications in the workspace so that they can link against the project?

One library might require or use another library, for example: LWIP often is used with FreeRTOS

b) But instead, the idea that eclipse seems to be centered around is this: Just copy all of your source code(and header files) into this one directory and let the compiler tool sort it out
that works but is a maintainers nightmare - it's hard to track what came from where, and what changed

c) On Linux, and other platforms there is this idea of "Installing the library" - sorry - nope, will not and cannot.
I work on more then one project at a time, if Project(FOO) requires the library in Confguration(X) - do I install the configuration(X) headers and .a and .o files?
But what about project(BAR) that requires an incompatible configuration(Y), when switching from project(FOO) to (BAR) to help answer a question what happens?
Does my 'installed-configuration-x" get converted to Y? And then converted back to X later? What happens if something is missed?
Things like that should be 'installed' locally to the client project.

d) Besides, in most resource constrained places - embedded stuff - you must highly Taylor things to fit the situation, ie: Compile time flags that disable features or enable certain things
it's just not possible to install a full featured version of a library with all bells and whistles present because there is not enough flash memory in the design to do that
Thus configuration is a "forcing function" for many embedded situations, the LWIP and FreeRTOS configuration files are exact examples of this.

Previous Topic:Scanner Discovery for Makefile Project
Next Topic:.h not recognized as C++
Goto Forum:

Current Time: Sat Feb 04 03:50:59 GMT 2023

Powered by FUDForum. Page generated in 0.45624 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top