Hi, I am trying to generate a cross-compiler targetting ARM wince plateform from gcc trunk and I have an error message when compiling mingw and regarding linker
My tree is organized like this : src + binutils + gcc + mingw + w32api + build-mingw32ce and I am using a script to build the different modules in the following order : binutils bootstrap-gcc mingw w32api gcc > cd build-mingw32ce ../build-mingw32ce.sh -j2 build-mingw32ce.sh: ... build_binutils() { echo "" echo "BUILDING BINUTILS --------------------------" echo "" echo "" mkdir -p binutils cd binutils ${BASE_DIRECTORY}/binutils/configure \ --prefix=${PREFIX} \ --target=${TARGET} \ --disable-nls make ${PARALLELISM} make install cd ${BUILD_DIR} } build_bootstrap_gcc() { mkdir -p gcc-bootstrap cd gcc-bootstrap ${BASE_DIRECTORY}/${gcc_src}/configure \ --with-gcc \ --with-gnu-ld \ --with-gnu-as \ --target=${TARGET} \ --prefix=${PREFIX} \ --disable-threads \ --disable-nls \ --enable-languages=c \ --disable-win32-registry \ --disable-multilib \ --disable-shared \ --disable-interwork \ --without-newlib \ --enable-checking make ${PARALLELISM} all-gcc make install-gcc cd ${BUILD_DIR} } build_mingw() { mkdir -p mingw cd mingw ${BASE_DIRECTORY}/mingw/configure \ --build=${BUILD} \ --host=${TARGET} \ --target=${TARGET} \ --prefix=${PREFIX} make ${PARALLELISM} make install cd ${BUILD_DIR} } ... The problem I have is about crtstuff in mingw : source: /home/Vincent/cegcc-4.4.0/src building in: /home/Vincent/cegcc-4.4.0/src/build-mingw32ce prefix: /opt/mingw32ce components: mingw checking package version... 3.11 checking build system type... i686-pc-cygwin checking host system type... arm-unknown-mingw32ce checking target system type... arm-unknown-mingw32ce checking for arm-mingw32ce-gcc... arm-mingw32ce-gcc checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether arm-mingw32ce-gcc accepts -g... yes checking for arm-mingw32ce-gcc option to accept ANSI C... none needed checking for arm-mingw32ce-ar... arm-mingw32ce-ar checking for arm-mingw32ce-as... arm-mingw32ce-as checking for arm-mingw32ce-ranlib... arm-mingw32ce-ranlib checking for arm-mingw32ce-ld... arm-mingw32ce-ld checking for arm-mingw32ce-dlltool... arm-mingw32ce-dlltool checking for arm-mingw32ce-dlltool... arm-mingw32ce-dlltool checking for arm-mingw32ce-windres... arm-mingw32ce-windres checking for a BSD-compatible install... /usr/bin/install -c configure: creating ./config.status config.status: creating Makefile configure: configuring in mingwex configure: running /bin/sh '/home/Vincent/cegcc-4.4.0/src/mingw/mingwex/configure' --prefix=/opt/mingw32ce '--build=i686-pc-cygwin' '--host=arm-mingw32ce' '--target=arm-mingw32ce' '--prefix=/opt/mingw32ce' 'build_alias=i686-pc-cygwin' 'host_alias=arm-mingw32ce' 'target_alias=arm-mingw32ce' --cache-file=/dev/null --srcdir=/home/Vincent/cegcc-4.4.0/src/mingw/mingwex checking build system type... i686-pc-cygwin checking host system type... arm-unknown-mingw32ce checking target system type... arm-unknown-mingw32ce checking for a BSD-compatible install... /usr/bin/install -c configure: creating ./config.status config.status: creating Makefile Making in mingwex... make[1]: Entering directory `/home/Vincent/cegcc-4.4.0/src/build-mingw32ce/mingw/mingwex' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/home/Vincent/cegcc-4.4.0/src/build-mingw32ce/mingw/mingwex' arm-mingw32ce-dlltool --as arm-mingw32ce-as --output-def mingwthrd.def mthr.o mthr_init.o arm-mingw32ce-dlltool --as arm-mingw32ce-as --output-def mingwthrd.def mthr.o mthr_init.o arm-mingw32ce-gcc -Wl,--base-file=mingwthrd.base -B./ -mdll -Wl,--image-base,0x6FBC0000 mthr.o mthr_init.o -Lmingwex \ -o mingwthrd_dummy.exe arm-mingw32ce-gcc -Wl,--base-file=mingwthrd.base -B./ -mdll -Wl,--image-base,0x6FBC0000 mthr.o mthr_init.o -Lmingwex \ -o mingwthrd_dummy.exe /opt/mingw32ce/lib/gcc/arm-mingw32ce/4.4.0/../../../../arm-mingw32ce/bin/ld: crtbegin.o: No such file: No such file or directory collect2: ld returned 1 exit status make: *** [mingwthrd.def] Error 1 make: *** Waiting for unfinished jobs.... /opt/mingw32ce/lib/gcc/arm-mingw32ce/4.4.0/../../../../arm-mingw32ce/bin/ld: crtbegin.o: No such file: No such file or directory collect2: ld returned 1 exit status make: *** [mingwm10.dll] Error 1 Could someone tell me if gcc-4.4 needs more parameters when cross-compiling because it works fine with gcc-4.1 ? Does --with-sysroot and --with-build-sysroot could help ? Thanks