Hi,
Here is the status for cegcc-4.3.2 experiment :
So I started from a vanilla GCC-4.3.2 and the latest sources(09/13/08) of
upcoming binutils-2.19 branch
I first tried to generate a boostrap GCC for mingw32ce and I used the
following parameters for configure :
${BASE_DIRECTORY}/gcc/configure \
--with-gcc \
--with-gnu-ld \
--with-gnu-as \
--prefix=${PREFIX} \
--with-local-prefix=${PREFIX} \
--disable-bootstrap \
--target=${TARGET} \
--disable-threads \
--disable-nls \
--enable-languages=c \
--disable-win32-registry \
--disable-multilib \
--disable-interwork \
--without-newlib \
--enable-checking \
--with-headers \
|| exit 1
The problem is libgcc needs to have a stdio.h but at this stage, mingw and
thus stdio.h are not yet installed (it will be done after generating a
boostrap GCC).
Fortunately, GCC developpers thought about it and provide an inhibit_libc
for this case.
When looking at configure in gcc folder I found this :
inhibit_libc=false
if { { test x$host != x$target && test "x$with_sysroot" = x ; } ||
test x$with_newlib = xyes ; } &&
{ test "x$with_headers" = x || test "x$with_headers" = xno ; } ; then
inhibit_libc=true
fi
AC_SUBST(inhibit_libc)
I had the choice to remove the --with-headers or to add a =no, I choosed
the second option but after libssp was not compiling anymore :
/cygdrive/c/cygwin/home/foo/cegcc-4.3.2/src/gcc/libssp/ssp.c:38:21: error:
alloca.h: No such file or directory
/cygdrive/c/cygwin/home/foo/cegcc-4.3.2/src/gcc/libssp/ssp.c:47:20: error:
fcntl.h: No such file or directory
/cygdrive/c/cygwin/home/foo/cegcc-4.3.2/src/gcc/libssp/ssp.c:50:20: error:
paths.h: No such file or directory
/cygdrive/c/cygwin/home/foo/cegcc-4.3.2/src/gcc/libssp/ssp.c:56:21: error:
syslog.h: No such file or directory
/cygdrive/c/cygwin/home/foo/cegcc-4.3.2/src/gcc/libssp/ssp.c: In function
'__guard_setup':
/cygdrive/c/cygwin/home/foo/cegcc-4.3.2/src/gcc/libssp/ssp.c:70: warning:
implicit declaration of function 'open'
...
Finally I have disabled libssp during compilation of boostrap GCC.
The secong big issue was compilation of libstdc++ and more precisely about
typeinfo :
/cygdrive/c/cygwin/home/foo/cegcc-4.3.2/src/gcc/libstdc++-v3/include/precompiled/stdc++.h:102:
/cygdrive/c/cygwin/home/foo/cegcc-4.3.2/src/gcc/libstdc++-v3/libsupc++/typeinfo:117:6:
error: #error "Inline implementation of type_info comparision requires
merging of type_info objects"
To solve it I have added in gcc/gcc/config/arm/wince-pe.h
builtin_define ("__GXX_TYPEINFO_EQUALITY_INLINE=0"); \
Now I still have an issue with cegcc(see log below)
Building cegcc.dll --------------------------
rm -rf /home/Vincent/cegcc-4.3.2/src/build-cegcc/cegccdll/_tmp
rm -rf /home/Vincent/cegcc-4.3.2/src/build-cegcc/cegccdll/_tmp_static
rm -rf /home/Vincent/cegcc-4.3.2/src/build-cegcc/cegccdll/stripped
rm -f /home/Vincent/cegcc-4.3.2/src/build-cegcc/cegccdll/cegcc.dll
/home/Vincent/cegcc-4.3.2/src/build-cegcc/cegccdll/libcegcc.dll.a.tmp
/home/Vincent/cegcc-4.3.2/src/build-cegcc/cegccdll/libcegcc.dll.a
/home/Vincent/cegcc-4.3.2/src/build-cegcc/cegccdll/cegcc.dll.def
/home/Vincent/cegcc-4.3.2/src/build-cegcc/cegccdll/cegcc.dll.map
rm -rf /home/Vincent/cegcc-4.3.2/src/build-cegcc/cegccdll
rm -rf /home/Vincent/cegcc-4.3.2/src/build-cegcc/cegccdll/_tmp
mkdir -p /home/Vincent/cegcc-4.3.2/src/build-cegcc/cegccdll/_tmp
rm -rf /home/Vincent/cegcc-4.3.2/src/build-cegcc/cegccdll/_tmp_static
mkdir -p /home/Vincent/cegcc-4.3.2/src/build-cegcc/cegccdll/_tmp_static
make: Circular version.rc <- version.rc.o dependency dropped.
arm-wince-cegcc-windres version.rc -o version.rc.o
arm-wince-cegcc-windres: Can't detect architecture.
make: *** [version.rc.o] Error 1
I don't have time for now to keep on working on cegcc so I Let community
works on this.
Sources are available here :
http://www.smartmobili.com/Downloads/cegcc-4.3.2.tar.bz2
Vincent R.
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Cegcc-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/cegcc-devel