[fpc-pascal] Running FPC on a system that supports multiple architectures
Mark Morgan Lloyd
markMLl.fpc-pascal at telemetry.co.uk
Fri Oct 5 12:32:51 CEST 2012
Mark Morgan Lloyd wrote:
> Sven Barth wrote:
>> Am 05.10.2012 11:34, schrieb Mark Morgan Lloyd:
>>> For information, it works, but I'm getting an error when it calls the
>>> linker. If I link using a script it's fine:
>>
>> It would help very much if you'd post the error that you get.
>
> I posted the minimum to report (partial) success in case the problem was
> considered below the threshold of interest.
>
> I'm compiling binutils 2.20 using
>
> ./configure --prefix=/usr/local/i486-linux i486-linux-gnu
>
> etc., and then setting up symlinks
>
> /usr/local/bin/i486-linux-as -> /usr/local/i486-linux/bin/as
>
> etc. When I do a direct compilation I get
>
> ~$ fpc -XPi486-linux- test.pas
> Free Pascal Compiler version 2.6.0 [2012/05/05] for i386
> Copyright (c) 1993-2011 by Florian Klaempfl and others
> Target OS: Linux for i386
> Compiling test.pas
> Linking test
> test.pas(5,1) Error: Can't call the linker, switching to external linking
> test.pas(5,1) Fatal: There were 1 errors compiling module, stopping
> Fatal: Compilation aborted
> Error: /usr/local/bin/ppc386 returned an error exitcode (normal if you
> did not specify a source file to be compiled)
>
> If I use -vt I see
>
> ..
> Searching file /usr/local/lib/fpc/2.6.0/I486-LINUX-LD... not found
> Searching file /usr/local/bin/i486-linux-ld... found
> Using util /usr/local/bin/i486-linux-ld
> test.pas(5,1) Error: Can't call the linker, switching to external linking
> test.pas(5,1) Fatal: There were 1 errors compiling module, stopping
> Fatal: Compilation aborted
> Error: /usr/local/bin/ppc386 returned an error exitcode (normal if you
> did not specify a source file to be compiled)
>
> Nothing obviously useful in -vv output.
Also ppas.sh reads
#!/bin/sh
DoExitAsm ()
{ echo "An error occurred while assembling $1"; exit 1; }
DoExitLink ()
{ echo "An error occurred while linking $1"; exit 1; }
echo Linking test
OFS=$IFS
IFS="
"
/usr/local/bin/i486-linux-ld -b elf32-i386 -m elf_i386 -s -L. -o
test link.res
if [ $? != 0 ]; then DoExitLink test; fi
IFS=$OFS
--
Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk
[Opinions above are the author's, not those of his employers or colleagues]
More information about the fpc-pascal
mailing list