<html>
<head>
</head>
<body bgcolor="#ffffff" text="#000000" link="#0000ee" alink="#0000ee" vlink="#551a8b">
I use KDevelop 2.1. in SuSE Linux 8.0 to compile my program for    The crossed
platform arm-uclinux, <br>
I positioned well the flags of compilation in KDevelop (see below) :<br>
<br>
In Menu options ...    <br>
    +- KDevloper Setup<br>
        +- Compiler<br>
               <i>This computer is : <b>i386</b>     <br>
                OS : <b>linux  </b>    (I use linux 8.0)<br>
             ----------------------------------<br>
                Archtecture  : <b>arm</b><br>
                Plate-forme : <b>linux</b><br>
<br>
                Commands system of the preprocessor C : <b>arm-uclinux-gcc</b><br>
                Commands system of the compiler C : <b>arm-uclinux-gcc</b><br>
                Commands system of the compiler C++ : <b>arm-uclinux-gcc</b></i><b><br>
</b><br>
<br>
In menu Project ...<br>
    +- Options ...<br>
                Options of compiler :<br>
                          <u>In the tab Flags and warnings    </u><br>
                     <br>
                        Flags of compiler C (CFLAGS) : <b><i>-g -O -Wall
-mapcs-32 -mcpu=arm7tdmi -fpic -msingle-pic-base -mno-got -msoft-float -D__uclinux__
</i></b>                                                                   
 Flags of compiler C++ (CFLAGS) : <b><i>-g -O -Wall -mapcs-32 -mcpu=arm7tdmi
-fpic -msingle-pic-base -mno-got -msoft-float -D__uclinux__ </i></b>     
                                  <br>
            <br>
                        <u>In the tab Flags for the publishing(edition) of
the links</u><br>
                                    (LDFLAGS) <br>
                                Anothers flags :  <i><b>-T /usr/local/NETLx/userapps/glibc_apps/rt_init/user.ld 
</b><br>
</i><br>
In menu Build...<br>
    +- Configure ...<br>
                Arguments :  <i><b>--build=i386-linux --host=i386-linux --target=arm-uclinux
</b></i><br>
<br>
When I build my program I obtain  a binary work in plateforme  linux but
not work in : arm-uclinux<br>
<br>
<br>
P.S : when I go to menu Build ... Configure ... Arguments .... ans I presse
OK button I abtain :<br>
<br>
checking build system type... i386-pc-linux-gnu <br>
checking host system type... i386-pc-linux-gnu <br>
checking target system type... arm-unknown-uclinux <br>
checking for a BSD compatible install... /usr/bin/install -c <br>
checking for -p flag to install... yes <br>
checking whether build environment is sane... yes <br>
checking for mawk... no <br>
checking for gawk... gawk <br>
checking whether make sets ${MAKE}... yes <br>
checking for style of include used by make... GNU <br>
checking for i386-linux-g++... arm-uclinux-gcc <br>
checking whether we are using the GNU C++ compiler... no <br>
checking whether arm-uclinux-gcc accepts -g... no <br>
checking dependency style of arm-uclinux-gcc... gcc <br>
checking for i386-linux-gcc... arm-uclinux-gcc <br>
checking for C compiler default output... a.out <br>
<b>checking whether the C compiler works... configure: error: cannot run
C compiled programs. <br>
If you meant to cross compile, use `--host'. <br>
</b>*** échec *** <br>
<br>
The result of build :<br>
<br>
cd . \ <br>
&& CONFIG_FILES= CONFIG_HEADERS=config.h \ <br>
/bin/sh ./config.status <br>
config.status: creating config.h <br>
config.status: config.h is unchanged <br>
gmake all-recursive <br>
gmake[1]: Entre dans le répertoire `/home/abbe/mytest' <br>
cd . && \ <br>
/bin/sh /home/abbe/mytest/admin/missing --run automake --foreign ./Makefile
<br>
cd . && perl admin/am_edit Makefile.in <br>
cd . && \ <br>
CONFIG_HEADERS= CONFIG_LINKS= \ <br>
CONFIG_FILES=Makefile /bin/sh ./config.status <br>
fast creating Makefile <br>
gmake[1]: Quitte le répertoire `/home/abbe/mytest' <br>
gmake[1]: Entre dans le répertoire `/home/abbe/mytest' <br>
Making all in mytest <br>
gmake[2]: Entre dans le répertoire `/home/abbe/mytest/mytest' <br>
cd .. && \ <br>
/bin/sh /home/abbe/mytest/admin/missing --run automake --gnu mytest/Makefile
<br>
cd .. && perl admin/am_edit mytest/Makefile.in <br>
cd .. && \ <br>
CONFIG_HEADERS= CONFIG_LINKS= \ <br>
CONFIG_FILES=mytest/Makefile /bin/sh ./config.status <br>
fast creating mytest/Makefile <br>
gmake[2]: Quitte le répertoire `/home/abbe/mytest/mytest' <br>
gmake[2]: Entre dans le répertoire `/home/abbe/mytest/mytest' <br>
source='main.c' object='main.o' libtool=no \ <br>
depfile='.deps/main.Po' tmpdepfile='.deps/main.TPo' \ <br>
depmode=gcc /bin/sh ../admin/depcomp \ <br>
gcc -DHAVE_CONFIG_H -I. -I. -I.. -O2 -O0 -g3 -Wall -c `test -f main.c ||
echo './'`main.c <br>
/bin/sh ../libtool --mode=link gcc -O2 -O0 -g3 -Wall -o mytest main.o <br>
mkdir .libs <br>
gcc -O2 -O0 -g3 -Wall -o mytest main.o <br>
gmake[2]: Quitte le répertoire `/home/abbe/mytest/mytest' <br>
gmake[2]: Entre dans le répertoire `/home/abbe/mytest' <br>
gmake[2]: Quitte le répertoire `/home/abbe/mytest' <br>
gmake[1]: Quitte le répertoire `/home/abbe/mytest' <br>
*** succès *** <br>
         ---------------------------<br>
I does not understand why KDevelop does not consider my options of compilation
.<br>
<br>
But when I visualize the mytest.kdevprj file I obtain :<br>
<br>
[AUTHORS]<br>
dist=true<br>
install=false<br>
install_location=<br>
type=DATA<br>
<br>
[COPYING]<br>
dist=true<br>
install=false<br>
install_location=<br>
type=DATA<br>
<br>
[ChangeLog]<br>
dist=true<br>
install=false<br>
install_location=<br>
type=DATA<br>
<br>
[Config for BinMakefileAm]<br>
<b>addcxxflags=-g -O -Wall -mapcs-32 -mcpu=arm7tdmi -fpic -msingle-pic-base
-mno-got -msoft-float -D__uclinux__</b><br>
bin_program=mytest<br>
<b>cflags=-g -O -Wall -mapcs-32 -mcpu=arm7tdmi -fpic -msingle-pic-base -mno-got
-msoft-float -D__uclinux__</b><br>
<b>cppflags=-g -O -Wall -mapcs-32 -mcpu=arm7tdmi -fpic -msingle-pic-base
-mno-got -msoft-float -D__uclinux__</b><br>
cxxflags=\s-O0 -g3 -Wall<br>
ldadd=<br>
<b>ldflags=\s -T /usr/local/NETLx/userapps/glibc_apps/rt_init/user.ld</b><br>
<br>
[General]<br>
AMChanged=false<br>
author=Abdeslam<br>
configure_args=\s--build=i386-linux --host=i386-linux --target=i386-linux\s<br>
<a class="moz-txt-link-abbreviated" href="mailto:email=abbe@teamlog.com">email=abbe@teamlog.com</a><br>
kdevprj_version=1.3<br>
make_options=\s-j1<br>
makefiles=Makefile.am,mytest/Makefile.am,mytest/docs/Makefile.am,mytest/docs/en/Makefile.am<br>
modifyMakefiles=true<br>
project_name=MyTest<br>
project_type=normal_c<br>
short_info=<br>
sub_dir=mytest/<br>
version=0.1<br>
version_control=None<br>
<br>
[INSTALL]<br>
dist=true<br>
install=false<br>
install_location=<br>
type=DATA<br>
<br>
[LFV Groups]<br>
Autres=*<br>
En-têtes=*.h,*.hh,*.hxx,*.hpp,*.H<br>
GNU=AUTHORS,COPYING,ChangeLog,INSTALL,README,TODO,NEWS<br>
Sources=*.cpp,*.c,*.cc,*.C,*.cxx,*.ec,*.ecpp,*.lxx,*.l++,*.ll,*.l<br>
groups=En-têtes,Sources,GNU,Autres<br>
<br>
[Makefile.am]<br>
files=mytest.kdevprj,admin,AUTHORS,COPYING,ChangeLog,INSTALL,README,TODO<br>
sub_dirs=mytest<br>
type=normal<br>
<br>
[README]<br>
dist=true<br>
install=false<br>
install_location=<br>
type=DATA<br>
<br>
[TODO]<br>
dist=true<br>
install=false<br>
install_location=<br>
type=DATA<br>
<br>
[admin]<br>
dist=true<br>
install=false<br>
install_location=<br>
type=DATA<br>
<br>
[mytest.kdevprj]<br>
dist=true<br>
install=false<br>
install_location=<br>
type=DATA<br>
<br>
[mytest/Makefile.am]<br>
files=mytest/main.c<br>
sub_dirs=<br>
type=prog_main<br>
<br>
[mytest/docs/Makefile.am]<br>
sub_dirs=<br>
type=normal<br>
<br>
[mytest/docs/en/Makefile.am]<br>
sub_dirs=<br>
type=normal<br>
<br>
[mytest/main.c]<br>
dist=true<br>
install=false<br>
install_location=<br>
type=SOURCE<br>
<br>
P.S .  When I delete all options sets,  and I remplace the Kdevelop Makefile
by my Makefile  (see bellow):<br>
<br>
OBJFMT        = elf<br>
OBJFMTD       = elfdebug<br>
OBJFMT2FLT    = ldelf2flt<br>
LDFLAGS          = -T $(NETARMROOT)/userapps/glibc_apps/rt_init/user.ld<br>
LD            = arm-uclinux-ld<br>
<br>
CFLAGS        = -g -O -Wall -mapcs-32 -mcpu=arm7tdmi -fpic -msingle-pic-base
-mno-got -msoft-float -D__uclinux__<br>
CC            = arm-uclinux-gcc<br>
<br>
SRC           = main.c<br>
OBJ           = $(SRC:.c=.o) <br>
<br>
all: hello_glibc hello_glibc.elfdebug<br>
<br>
hello_glibc.elf: $(OBJ)<br>
    $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(OBJ) $(LIBS) $(NETLIBS)<br>
<br>
hello_glibc: hello_glibc.elf<br>
    $(OBJFMT2FLT) -s 40960 -o $@ $<<br>
<br>
hello_glibc.elfdebug: hello_glibc.elf<br>
    $(LD) $(LDFLAGS) -o $@ $<<br>
<br>
clean:<br>
    rm -f $(OBJ) hello_glibc *.elf *.elfdebug *.map<br>
<br>
<br>
The result : I obtain the good binary : work in arm-uclinux plate-forme.<br>
<br>
<b>But this solution it is of the deceit ( the cheating), <br>
<br>
Please can you help me.<br>
<br>
</b>Regards.<br>
<br>
Abdeslam.<br>
<br>
</body>
</html>