Hi I noticed that our next exchanges did not make it to the list because of the bad handling of lists reply-to by gmail (Harald Welte explained to me that it's a desirable feature, but I always forget to reply-to-all :-) )
Let's fix it. ==================================================================== here are new steps to build mingw32ce for windows from debian. get code cd $HOME mkdir cegcc cd cegcc svn co https://cegcc.svn.sourceforge.net/svnroot/cegcc/trunk cegcc-src wget ftp://ftp.gmplib.org/pub/gmp-4.3.1/gmp-4.3.1.tar.gz wget http://www.mpfr.org/mpfr-2.4.1/mpfr-2.4.1.tar.gz tar zxvf gmp-4.3.1.tar.gz tar zxvf mpfr-2.4.1.tar.gz patch code Here is what you must change in the mingw32ce build script Basically this deals with passing the proper gmp/mpfr options to the gcc configure script. This might be achievable by other means, e.g. environment. svn diff: ---8<--- Index: build-mingw32ce.sh =================================================================== --- build-mingw32ce.sh (revision 1449) +++ build-mingw32ce.sh (working copy) @@ -49,12 +49,17 @@ --components=LIST specify which components to build valid components are: ${COMPONENTS_COMMA_LIST} [all] + --gmp=DIR path to GMP library + --mpfr=DIR path to MPFR library Report bugs to <cegcc-devel@lists.sourceforge.net>. _ACEOF } +lib_gmp= +lib_mpfr= + ac_prev= for ac_option do @@ -97,6 +102,12 @@ | --co=* | --c=*) components=$ac_optarg ;; + --gmp=*) + lib_gmp=$ac_optarg ;; + + --mpfr=*) + lib_mpfr=$ac_optarg ;; + --host) ac_prev=host ;; --host=*) @@ -179,6 +190,16 @@ exit 1 fi +#compute the options for gmp and mpfr + +GCCDEPS= +if [ "x${lib_gmp}" != "x" ]; then + GCCDEPS="--with-gmp=${lib_gmp}" +fi +if [ "x${lib_gmp}" != "x" ]; then + GCCDEPS="${GCCDEPS} --with-mpfr=${lib_mpfr}" +fi + build_binutils() { echo "" @@ -209,6 +230,7 @@ --with-gcc \ --with-gnu-ld \ --with-gnu-as \ + ${GCCDEPS} \ --target=${TARGET} \ --build=${BUILD} \ --host=${HOST} \ @@ -314,6 +336,7 @@ --target=${TARGET} \ --host=${HOST} \ --prefix=${PREFIX} \ + ${GCCDEPS} \ --enable-threads=win32 \ --disable-nls \ --enable-languages=c,c++ \ @@ -333,6 +356,7 @@ --target=${TARGET} \ --host=${HOST} \ --prefix=${PREFIX} \ + ${GCCDEPS} \ --enable-threads=win32 \ --disable-nls \ --enable-languages=c,c++ \ ---8<--- now we're ready to go. First step is to build a linux mingw32ce, to allow building the target libs (build=host=linux, target=arm-wince-pe) we need some dependencies - you may have them in apt-get, I recompiled to get the same versions as what the final compiler has mkdir depends-linux mkdir gmp-linux cd gmp-linux ../gmp-4.3.1/configure --prefix=`cd ../depends-linux; pwd` make make install cd .. mkdir mpfr-linux cd mpfr-linux ../mpfr-2.4.1/configure --prefix=`cd ../depends-linux; pwd` --with-gmp=`cd ../depends-linux; pwd` make make install cd .. build the compiler and install e.g. to /opt/mingw32ce (target=arm-wince-pe, build=host=linux) This will NOT WORK if you do not set gcc_src=gcc, I don't know what's the problem with gcc 4.4 (you can try, though) mkdir build-linux cd build-linux sudo gcc_src=gcc ../cegcc-src/cegcc/src/scripts/build/build-minw32ce.sh --prefix=/opt/mingw32ce --gmp=`cd ../depends-linux;pwd` --mpfr=`cd ../depends-linux;pwd` cd .. Second step is to cross build the win32 compiler install mingw for linux -- or build it, if you prefer... sudo apt-get install mingw32 the compiler prefix is i586-mingw32msvc- crossbuild dependencies for windows host (build is linux, host is windows, target has no sense (same as host)) mkdir depends-win mkdir gmp-win cd gmp-win ../gmp-4.3.1/configure --host=i586-mingw32msvc --prefix=`cd ../depends-win; pwd` make make install cd .. mkdir mpfr-win cd mpfr-win ../mpfr-2.4.1/configure --host=i586-mingw32msvc --prefix=`cd ../depends-win; pwd` --with-gmp=`cd ../depends-win; pwd` make make install cd .. build cegcc for windows: build=linux, host=windows, target=arm-wince-pe the linux version of the compiler needs to be in the path to build the target libs! Do not forget to update PATH or the build will fail, of course. mkdir INSTALL mkdir build-win cd build-win PATH=/opt/mingw32ce/bin:$PATH export PATH gcc_src=gcc ../cegcc-src/cegcc/src/scripts/build-mingw32ce.sh --prefix=`cd ../INSTALL;pwd` --host=i586-mingw32msvc --gmp=`cd ../depends-win;pwd` --mpfr=`cd ../depends-win;pwd` make make install And here you have a nice arm-wince-pe toolchain for mingw! I'd like some feedback on this process. That's why I'm not posting binaries yet. I want someone else to test that, to check wether that's ok or not. Sebastien ------------------------------------------------------------------------------ Lotusphere 2011 Register now for Lotusphere 2011 and learn how to connect the dots, take your collaborative environment to the next level, and enter the era of Social Business. http://p.sf.net/sfu/lotusphere-d2d _______________________________________________ Cegcc-devel mailing list Cegcc-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/cegcc-devel