This is the mail archive of the
ecos-discuss@sourceware.org
mailing list for the eCos project.
RE: User libraries
- From: "Steven Clugston" <steven dot clugston at newcastle dot ac dot uk>
- To: <ecos-discuss at ecos dot sourceware dot org>
- Date: Thu, 17 Apr 2008 08:58:41 +0100
- Subject: RE: [ECOS] User libraries
>> >-----Original Message-----
>> >From: Davies, Greg [mailto:Greg.Davies@Ultra-UEMS.com]
>Are you using eclipse 3.2? I'm using 3.3 where there's no
>managed/unmanaged makefile projects.
I'm using eclipse 3.3 on Linux. It still has the notion of a makefile
project though.
>I have
>eCos as a project using an external builder command, which
>just runs the makefile that is output by the graphical
>configuration tool. This allows me to reference the include
>and lib directories relative to my workspace. Any project that
>links eCos also references the eCos project, so it builds
>automatically when I need it.
I've managed to build eCos in eclipse and build one additional library
that references it, i.e. it needs the termios.h header.
The configtool generates ProjectName_build and ProjectName_install
directories, both of these I tried to import into a single eclipse
project, but found even after modifying the path in the configtool
generated makefile, that it won't build.
So instead I've created two separate projects, eCos_build and
eCos_install in eclipse and that works fine.
It also allows me to run configtool directly on the projects if I keep
the .ecc file inside the workspace.
The eCos_install project is just a dummy project to contain the headers,
made dummy by not specifying a make command.
Also I had to persuade eclipse to run just 'make' and not 'make all' on
the eCos_build project.
>For my main application project, I set project references for
>everything I want to bring in, add directories -I and -L, and
>libraries -l for everything I need, including the eCos
>libraries. In the Misc section of the linker setting I added
>to following: -Wl,--cref -Wl,-Map,ProjectName.map -lc -lgcc
>-T target.ld -n The linker script target.ld is the one that
>eCos created for me on this build, and it's in the same
>directory as target.a, otherwise I'd have to add another
>directory -L so it could be found. As for the rest of the
>options, I don't remember what they do. As you already know,
>but just for completeness, I check the no startup files and no
>standard libs boxes.
>
Next step is to try and setup an application project as you've
described.
Steven.
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss