On Mon, Apr 26, 2010 at 6:25 AM, Mario Emmenlauer <[email protected]> wrote: >> Hi Kai, >> >> On 04/25/2010 04:48 PM, Kai Tietz wrote: >>> 2010/4/25 Mario Emmenlauer <[email protected]>: >>>> >>>> Hi all, >>>> >>>> I fail to build a canadian cross with mingw Revision: 2263 (current >>>> trunk). >>>> >>>> The error happens during "make all-target-libgcc", message is: >>>> [cut]/build/root/x86_64-w64-mingw32/bin/ld: skipping incompatible \ >>>> [cut]/build/root/mingw/lib/libmingw32.a when searching for -lmingw32 >>>> >>>> There are more identical errors for other libs like kernel32 and >>>> msvcrt. >>>> >>>> >>>> objdump lists the correct format: >>>> [cut]/build/root/bin/x86_64-w64-mingw32-objdump --archive-headers \ >>>> [cut]/build/root/x86_64-w64-mingw32/lib/libmingw32.a >>>> [...] >>>> lib64_libmingw32_a-tlsmcrt.o: file format pe-x86-64 >>>> >>>> Also, ld seems to be valid: >>>> [cut]/build/root/bin/x86_64-w64-mingw32-ld: supported targets: \ >>>> pe-x86-64 pei-x86-64 elf64-x86-64 elf64-l1om elf64-little elf64-big >>>> \ >>>> elf32-little elf32-big srec symbolsrec verilog tekhex binary ihex >>>> >>>> >>>> Here is what I tried: >>>> - makefile: experimental/buildsystem/makebuildroot-test.mk >>>> - makefile: experimental/buildsystem/makebuildroot.mk >>>> - compile instructions from mingw64 sourceforge wiki >>>> >>>> Compiled with various combinations of >>>> - binutils-2.20.1, binutils-2.20.51 and binutils-trunk >>>> - gcc-4.4.3, gcc-4.5.0 and gcc-4.5.1-trunk >>>> >>>> Operating system: >>>> - Ubuntu 9.10 x86_64 >>>> - Debian testing x86_64 >>>> - Ubuntu 8.10 x86_64 >>>> >>>> All result in the identical error message about 'skipping incompatible' >>>> when searching for mingw libs. >>> >>> Well, for me it is looking like that either your binutils version >>> isn't a x64 defaulted one, or the libraries are build for 32-bit and >>> not for 64-bit. Did you used for crt build '--enable-lib32' or >>> '--enable-lib64'? >> >> Sorry that I forgot that crucial piece of information! >> >> I tried both with and without multilib, same result. Based on a >> suggestion from jon_y in IRC, I concentrate on without multilib first. >> For leaving out multilib, I do not add any of '--enable-lib32' or >> '--enable-lib64' to configure of mingw crt (but leave the default). >> For gcc and binutils, I do add '--disable-multilib' to configure. >> >> Is there an easy test whether any of the components targets the wrong >> architecture? > > I just checked from an i686 Ubuntu Hardy, same error. So its not related > to the x86_64 architecture of the host OS. > > Can anybody successfully compile a canadian cross from Linux with > current trunk? If yes, what are the specs and compile instructions > used, so I have a reference? > > Cheers, >
On Mon, Apr 26, 2010 at 6:25 AM, Mario Emmenlauer <[email protected]> wrote: >> Hi Kai, >> >> On 04/25/2010 04:48 PM, Kai Tietz wrote: >>> 2010/4/25 Mario Emmenlauer <[email protected]>: >>>> >>>> Hi all, >>>> >>>> I fail to build a canadian cross with mingw Revision: 2263 (current >>>> trunk). >>>> >>>> The error happens during "make all-target-libgcc", message is: >>>> [cut]/build/root/x86_64-w64-mingw32/bin/ld: skipping incompatible \ >>>> [cut]/build/root/mingw/lib/libmingw32.a when searching for -lmingw32 >>>> >>>> There are more identical errors for other libs like kernel32 and >>>> msvcrt. >>>> >>>> >>>> objdump lists the correct format: >>>> [cut]/build/root/bin/x86_64-w64-mingw32-objdump --archive-headers \ >>>> [cut]/build/root/x86_64-w64-mingw32/lib/libmingw32.a >>>> [...] >>>> lib64_libmingw32_a-tlsmcrt.o: file format pe-x86-64 >>>> >>>> Also, ld seems to be valid: >>>> [cut]/build/root/bin/x86_64-w64-mingw32-ld: supported targets: \ >>>> pe-x86-64 pei-x86-64 elf64-x86-64 elf64-l1om elf64-little elf64-big >>>> \ >>>> elf32-little elf32-big srec symbolsrec verilog tekhex binary ihex >>>> >>>> >>>> Here is what I tried: >>>> - makefile: experimental/buildsystem/makebuildroot-test.mk >>>> - makefile: experimental/buildsystem/makebuildroot.mk >>>> - compile instructions from mingw64 sourceforge wiki >>>> >>>> Compiled with various combinations of >>>> - binutils-2.20.1, binutils-2.20.51 and binutils-trunk >>>> - gcc-4.4.3, gcc-4.5.0 and gcc-4.5.1-trunk >>>> >>>> Operating system: >>>> - Ubuntu 9.10 x86_64 >>>> - Debian testing x86_64 >>>> - Ubuntu 8.10 x86_64 >>>> >>>> All result in the identical error message about 'skipping incompatible' >>>> when searching for mingw libs. >>> >>> Well, for me it is looking like that either your binutils version >>> isn't a x64 defaulted one, or the libraries are build for 32-bit and >>> not for 64-bit. Did you used for crt build '--enable-lib32' or >>> '--enable-lib64'? >> >> Sorry that I forgot that crucial piece of information! >> >> I tried both with and without multilib, same result. Based on a >> suggestion from jon_y in IRC, I concentrate on without multilib first. >> For leaving out multilib, I do not add any of '--enable-lib32' or >> '--enable-lib64' to configure of mingw crt (but leave the default). >> For gcc and binutils, I do add '--disable-multilib' to configure. >> >> Is there an easy test whether any of the components targets the wrong >> architecture? > > I just checked from an i686 Ubuntu Hardy, same error. So its not related > to the x86_64 architecture of the host OS. > > Can anybody successfully compile a canadian cross from Linux with > current trunk? If yes, what are the specs and compile instructions > used, so I have a reference? > > Cheers, > > Mario > Not with the current trunk but I've managed to get the 4.5 build going. I have a few patches that "fix" the gcc build system and also use version-specific-libraries. Which means, unfortunately, my build scripts wouldn't work too well for you without the patches. If you want, I can send them but you'll have to apply some patches to make it work right for you :-/ ------------------------------------------------------------------------------ _______________________________________________ Mingw-w64-public mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
