[fpc-pascal] 64 bit cross binutils on a 32 bit OS

patspiper patspiper at gmail.com
Thu Apr 11 16:41:31 CEST 2013

On 11/04/13 14:48, Pierre Free Pascal wrote:
>>> So building Binutils with --target=x86_64-w64-mingw32
>>> should work for you.
>> It does indeed!
>> As for cygwin 64 bits, it seems that a patch for cygwin 64 support was
>> applied on 4.3.2013
>> (http://cygwin.cybermirror.org/64bit/x86_64-pc-cygwin-binutils-
>> 20130304.patch),
>> but it seems it is still not included in binutils 2.23.2
>    Anyhow, there is no cygwin target for Free Pascal,
> neither win32 nor win64.
My Linux->Win32 cross compilation uses cygwin cross binutils.

i686-cygwin-as --version:
GNU assembler (GNU Binutils) 2.23.1
Copyright 2012 Free Software Foundation, Inc.
This program is free software; you may redistribute it under the terms of
the GNU General Public License version 3 or later.
This program has absolutely no warranty.
This assembler was configured for a target of `i686-cygwin'.

However, I have been recently plagued with a snag when creating cross 
compilers (from Ubuntu 32 bits):
i386-win32 / FPC 2.6.3: success
x86_64-win64 / FPC 2.6.3: success
x86_64-linux / FPC 2.6.3: fail
arm-winCE / FPC 2.6.3: success
arm-linux / FPC 2.6.3: fail

i386-win32 / FPC 2.7.1: fail
x86_64-win64 / FPC 2.7.1: fail
x86_64-linux / FPC 2.7.1: fail
arm-winCE / FPC 2.7.1: fail
arm-linux / FPC 2.7.1: fail

The failure message is always similar to:
.../fpc/crossbinutils/bin/x86_64-linux-ld: warning: ./link.res contains 
output sections; did you forget -T?
.../fpc/crossbinutils/bin/x86_64-linux-ld: cannot find -lgcc
.../fpc/crossbinutils/bin/x86_64-linux-ld: cannot find -lc
fpdoc.pp(382,1) Error: Error while linking

I am clueless at this stage.


More information about the fpc-pascal mailing list