On Fri, Apr 10, 2009 at 01:18:57AM -0700, grahamlab wrote:
>
>
>
> grahamlab wrote:
> >
> >
> >
> > Sergei Gavrikov-4 wrote:
> >>
> >> On Fri, Apr 10, 2009 at 12:59:19AM -0700, grahamlab wrote:
> >>> Sergei Gavrikov-4 wrote:
> >>> >
> >>> > On Fri, Apr 10, 2009 at 12:30:56AM -0700, grahamlab wrote:
> >>> >>
> >>> >> Hello all
> >>> >> I am trying to evaluate the best way for me to use ecos for my
> >>> project -
> >>> >> to
> >>> >> use the configtool or command line interface.
> >>> >> So I
> >>> >> 1.created an ecos build using from command line using the default
> >>> >> template.
> >>> >> 2.executed the make command to build ecos
> >>> >> 3.created a testbed directory and created a hello world application
> >>> >> 4.compiled and linked successfully
> >>> >> Next I
> >>> >> 1 created an ecos build using the configuration tool
> >>> >> 2 created a test bed directory and created a hello world application
> >>> >> 3 this does not compile and gives the following errors -
> >>> >> test.cpp: In function ‘int main()’:
> >>> >> test.cpp:6: error: ‘printf’ was not declared in this scope
> >>> >>
> >>> >> Both use the same makefile and make.params files(atached) - the only
> >>> >> changes
> >>> >> were to point to the correct install directory.
> >>> >
> >>> > Graham, not only
> >>> >
> >>> > /tmp$ diff configtool_Make.params cli_Make.params
> >>> > 5c5
> >>> > < export PREFIX := /home/graham/ecos/DevBoard_install
> >>> > ---
> >>> > > export PREFIX := /home/graham/lab1/install
> >>> > 7c7
> >>> > < export CC := $(COMMAND_PREFIX)gcc
> >>> > ---
> >>> > > export CC := $(COMMAND_PREFIX)g++
> >>> >
> >>> >
> >>> > /tmp$ diff configtool_Makefile cli_Makefile
> >>> >
> >>> >
> >>> > Are you really going program in C++? Try rename your main.cpp in the
> >>> > main.c.
> >>> >
> >>> > BTW, the short plain text files you can just attach.
> >>> >
> >>> > Sergei.
> >>> >
> >>> >> If I point the configtool version at the commandline version install
> >>> tree
> >>> >> it
> >>> >> will compile
> >>> >>
> >>> >> Could some one explain why this is?
> >>> >>
> >>> >> Thanks
> >>> >>
> >>> >> http://www.nabble.com/file/p22984314/configtool_Make.params
> >>> >> configtool_Make.params
> >>> >> http://www.nabble.com/file/p22984314/configtool_Makefile
> >>> >> configtool_Makefile
> >>> >> http://www.nabble.com/file/p22984314/cli_Make.params cli_Make.params
> >>> >> http://www.nabble.com/file/p22984314/cli_Makefile cli_Makefile
> >>> >> Graham
> >>> >>
> >>> >> --
> >>> >> View this message in context:
> >>> >>
> >>> http://www.nabble.com/Confusing-compilation-problem-tp22984314p22984314.html
> >>> >> Sent from the Sourceware - ecos-discuss mailing list archive at
> >>> >> Nabble.com.
> >>> >>
> >>> >>
> >>> >> --
> >>> >> Before posting, please read the FAQ:
> >>> http://ecos.sourceware.org/fom/ecos
> >>> >> and search the list archive:
> >>> http://ecos.sourceware.org/ml/ecos-discuss
> >>> >
> >>> > --
> >>> > Before posting, please read the FAQ:
> >>> http://ecos.sourceware.org/fom/ecos
> >>> > and search the list archive:
> >>> http://ecos.sourceware.org/ml/ecos-discuss
> >>> >
> >>> >
> >>> >
> >>> Helo again Sergei
> >>>
> >>> Beleive me I have tried muliple permutations using both g++ and gcc
> >>
> >> I hope that your Make.params were not handy tweaked.
> >>
> >>> The cli vesrion compile with both g++ and gcc
> >>> The config tool version compiles with neither.
> >>>
> >>> It seems that you cannot switch between a cli build and a configtool
> >>> build
> >>> I am a little confused but will investigate further.
> >>> Do you use the cli exclusively or do you switch between the 2?
> >>
> >> I have used CLI only, but I have eCos configtool installed too. I will
> >> try to reproduce your issue.
> >>
> >> Sergei
> >>
> >> --
> >> Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
> >> and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss
> >>
> >>
> >>
> > Hi Sergei
> > I have been looking at the stdio.h file in both install trees.
> > The files are exactly the same but in the CLI version things like
> > CYGINT_ISO_STDIO_FILETYPES are defined
> > but in the configtool version they are not - so the correct includes are
> > not generated.
> > Where do things like CYGINT_ISO_STDIO_FILETYPES get defined?
> >
> > Graham
> >
> It seems I need to include IO C libraries - all working now thanks
I cannot confirm your issue. Just now I tried GUI build and script
build_Make.params. All works as I could expect (see the below)
i. All was build using configtool-3.0. (stm3210e, default template).
$ ls
gui_build gui.ecc gui_install
ii. Generate Make.params, and test source
$ /opt/ecos/ecos-3.0/examples/build_Make.params
$ echo -e \
'#include <stdio.h>\nint main(void){printf("oops\\n");return 0;}' > a.cxx
$ ls
a.cxx gui_build gui.ecc gui_install Make.params
iii. Prepare Makefile
$ vi Makefile
..
$ ls
a.cxx gui_build gui.ecc gui_install Makefile Make.params
iv. Try to build
$ make -s
v. What I got
$ ls
a.cxx a.o a.out gui_build gui.ecc gui_install Makefile Make.params
Makefile is attached as a reference.
Sergei
include Make.params
OBJS = a.o
DST = a.out
.PHONY: all clean
all: ${DST}
clean:
-rm -f ${DST} ${OBJS}
%.o: %.cxx
$(CC) -c $^ $(ACTUAL_CXXFLAGS) -I$(PREFIX)/include -o $@
${DST}: ${OBJS}
$(CC) $(ACTUAL_LDFLAGS) -L$(PREFIX)/lib -Ttarget.ld $^ -o $@
--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss