This is the mail archive of the crossgcc@sources.redhat.com mailing list for the crossgcc project.
See the CrossGCC FAQ for lots more information.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Hi Chaps I am new to this list but have been reading avidly through the archives and getting lots of useful information on building the GCC tool chain for various targets. I have successfully built the GCC tools chain targeted to 'arm-linux' built from 'i686-pc-linux-gnu'. This with a little tweaking works wonderfully and I now have the GCC cross compiler for C, C++ and Ada95. For reasons unbeknown to me someone wants me to build the GCC tool chain targeted to 'arm-wince-pe', now I am having various problems in doing this and perhaps someone can offer some useful pointers.... I am not particularly fussed with where I build the cross either Linux, Cygwin or MinGW are all fine, so far I have made the most progress with Linux. build=i686-pc-linux-gnu target=arm-wince-pe Using source files from www.mingw.org: binutils-2.4.90-20030801-1-src.tar.gz gcc-core-3.3.1-20030804-1-src.tar.gz gcc-g++-3.3.1-20030804-1-src.tar.gz mingw-runtime-3.1-src.tar.gz w32api-2.4-src.tar.gz 1. I have managed (I think) to successfully build the binutils and gcc (phase1, c only). 2. However when I build the w32api I get error1.... make AS="arm-wince-pe-as" CC="arm-wince-pe-gcc" CPPFLAGS="" CFLAGS="-O2 -g" CXXFLAGS="" AR="arm-wince-pe-ar" RANLIB="arm-wince-pe-ranlib" LD="arm-wince-pe-ld" DLLTOOL="arm-wince-pe-dlltool" TAR="tar" TARFLAGS="z" TARFILEEXT=".tar.gz" WINDRES="arm-wince-pe-windres" -C lib make[1]: Entering directory `/home/drudnick/mingw/build/w32api-2.4/lib' arm-wince-pe-gcc -c -O2 -g -I../../../src/w32api-2.4/lib/../include -o dinput.o ../../../src/w32api-2.4/lib/dinput.c In file included from ../../../src/w32api-2.4/include/windef.h:246, from ../../../src/w32api-2.4/include/windows.h:48, from ../../../src/w32api-2.4/lib/dinput.c:25: ../../../src/w32api-2.4/include/winnt.h:1906:2: #error "undefined processor type" In file included from ../../../src/w32api-2.4/include/windef.h:246, from ../../../src/w32api-2.4/include/windows.h:48, from ../../../src/w32api-2.4/lib/dinput.c:25: ../../../src/w32api-2.4/include/winnt.h:1908: error: parse error before '*' token ../../../src/w32api-2.4/include/winnt.h:1919: error: parse error before "PCONTEXT" In file included from ../../../src/w32api-2.4/include/windows.h:50, from ../../../src/w32api-2.4/lib/dinput.c:25: ../../../src/w32api-2.4/include/winbase.h:1312: error: parse error before "LPCONTEXT" ../../../src/w32api-2.4/include/winbase.h:1590: error: parse error before '*' token make[1]: *** [dinput.o] Error 1 make[1]: Leaving directory `/home/drudnick/mingw/build/w32api-2.4/lib' make: *** [lib] Error 2 3. This I can move past by adding the lines near the start of winnt.h #elif defined(__arm__) && !defined(ARM) #define ARM 4. This carries on until the kerel32.c file is compiled and I hit some x86 assembler which should be arm but I dont know what the equivalents are or even if the arm should be going down this path. make AS="arm-wince-pe-as" CC="arm-wince-pe-gcc" CPPFLAGS="" CFLAGS="-O2 -g" CXXFLAGS="" AR="arm-wince-pe-ar" RANLIB="arm-wince-pe-ranlib" LD="arm-wince-pe-ld" DLLTOOL="arm-wince-pe-dlltool" TAR="tar" TARFLAGS="z" TARFILEEXT=".tar.gz" WINDRES="arm-wince-pe-windres" -C lib make[1]: Entering directory `/home/drudnick/mingw/build/w32api-2.4/lib' arm-wince-pe-gcc -c -O2 -g -I../../../src/w32api-2.4/lib/../include -o kernel32.o ../../../src/w32api-2.4/lib/kernel32.c /tmp/cctoMnzb.s: Assembler messages: /tmp/cctoMnzb.s:42: Error: bad instruction `movl %fs:0x10,r0' /tmp/cctoMnzb.s:65: Error: bad instruction `movl %fs:0x10,r0' /tmp/cctoMnzb.s:66: Error: bad instruction `movl (r0),r0' make[1]: *** [kernel32.o] Error 1 make[1]: Leaving directory `/home/drudnick/mingw/build/w32api-2.4/lib' make: *** [lib] Error 2 5. To battle onwards I simply remove the offending assembler statements. This allows the w32api components to completed building and then install. 6. Next I move onto the mingw-runtime. Here I get another assembler error in CRT_fp10.c arm-wince-pe-gcc -c -g -O2 -I ../../src/mingw-runtime-3.1/../w32api/include -I../../src/mingw-runtime-3.1/include -I../../src/mingw-runtime-3.1/../include -nostdinc -nostdinc++ -iwithprefixbefore include ../../src/mingw-runtime-3.1/CRT_fp10.c -o CRT_fp10.o /tmp/cc9JQVZa.s: Assembler messages: /tmp/cc9JQVZa.s:39: Error: bad instruction `fninit' make: *** [CRT_fp10.o] Error 1 7. Again I simply replace the offending call with its equivalent from CRT_fp8.c and this progress along. But alas I hit an error I cannot even think of a hack to move past... arm-wince-pe-dlltool --as arm-wince-pe-as --dllname mingwm10.dll \ --def mingwthrd.def --output-lib libmingwthrd.a arm-wince-pe-ar rv libmingwthrd.a crtmt.o a - crtmt.o arm-wince-pe-ranlib libmingwthrd.a arm-wince-pe-dlltool --as arm-wince-pe-as --output-def mingwthrd.def mthr.o mthr_init.o arm-wince-pe-gcc -Wl,--base-file=mingwthrd.base -B./ -mdll -Wl,--image-base,0x6FBC0000 -Wl,--entry,_DllMainCRTStartup@12 mthr.o mthr_init.o -Lmingwex \ -o mingwthrd_dummy.exe /home/drudnick/mingw/lib/gcc-lib/arm-wince-pe/3.3.1/../../../../arm-wince-pe/bin/ld: cannot open crt0.o: No such file or directory collect2: ld returned 1 exit status make: *** [mingwm10.dll] Error 1 At this point I am stopped..... so any advice or help or shrink wrapped instructions would be greatly appreciated. I strongly suspect that I have progressed down an incorrect path and perhaps someone can show me the light. I am about the attempt building on a Windows box, MSYS probably and see what surprises are in store for me there. Thanks Dave ------ Want more information? See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/ Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |