[fpc-devel] Getting error building fpc for clang 16
Martin Frb
lazarus at mfriebe.de
Thu Dec 7 13:52:59 CET 2023
On 07/12/2023 12:19, Jonas Maebe via fpc-devel wrote:
>
>
> On 2023-12-07 01:09, Martin Frb via fpc-devel wrote:
>> But I am getting
>>
>> make[8]: '/home/m/fpc/rel_3.3.1/source/rtl/units/x86_64-linux' is up
>> to date.
>> make[8]: Leaving directory '/home/m/fpc/rel_3.3.1/source/rtl/linux'
>> as --64 -o
>> /home/m/fpc/rel_3.3.1/source/rtl/units/x86_64-linux/abitag.o
>> x86_64/abitag.as
>> /home/m/fpc/rel_3.3.1/source/compiler/ppc1 -Ur -Ur -Xs -O2 -n
>> -Fi../inc -Fi../x86_64 -Fi../unix -Fix86_64 -FE.
>> -FU/home/m/fpc/rel_3.3.1/source/rtl/units/x86_64-linux -Cg
>> -Fl/usr/lib/gcc/x86_64-redhat-linux/13 -dx86_64 -dRELEASE -Us -Sg
>> system.pp
>
> The -Clv parameter is missing here for some reason, so the compiler is
> generating code for LLVM 7.0 rather than 16.0.
It seems to happen during "make install". Strange, why does it compile
during installation?
My script issues the following commands:
(I am using the same on another machine with clang 11)
make clean
make all OPT=" " OPTNEW=" -Clv16.0 " FPCMAKEOPT=" -Clv16.0 " LLVM=1
make install INSTALL_PREFIX=/home/m/fpc/$INSTPATH/def LLVM=1
The captured output does not have the commands itself, only the output....
The "100%" should still be from the "make all" (there is no install in
the text before that)
I assume "installbase" is the start of the output of above make install.
And then it starts the compiler.... Why?
Before that there are 10 other occurrences of
"Entering directory '/home/m/fpc/rel_3.3.1/source/compiler/utils'"
[100%] Compiled package utils-wasmbin
make[2]: Leaving directory '/home/m/fpc/rel_3.3.1/source/utils'
make[1]: Leaving directory '/home/m/fpc/rel_3.3.1/source'
/usr/bin/echo Build > build-stamp.x86_64-linux
/usr/bin/echo Build > base.build-stamp.x86_64-linux
make installbase FPC=/home/m/fpc/rel_3.3.1/source/compiler/ppcx64
ZIPDESTDIR=/home/m/fpc/rel_3.3.1/source
FPCMAKE=/home/m/fpc/rel_3.3.1/source/utils/fpcm/bin/x86_64-linux/fpcmake
make[1]: Entering directory '/home/m/fpc/rel_3.3.1/source'
/usr/bin/install -m 755 -d /home/m/fpc/rel_3.3.1/clang64/def/lib/fpc/3.3.1
/usr/bin/install -m 755 -d /home/m/fpc/rel_3.3.1/clang64/def/bin
make compiler_distinstall
FPC=/home/m/fpc/rel_3.3.1/source/compiler/ppcx64
ZIPDESTDIR=/home/m/fpc/rel_3.3.1/source
FPCMAKE=/home/m/fpc/rel_3.3.1/source/utils/fpcm/bin/x86_64-linux/fpcmake
make[2]: Entering directory '/home/m/fpc/rel_3.3.1/source'
make -C compiler distinstall
make[3]: Entering directory '/home/m/fpc/rel_3.3.1/source/compiler'
make quickinstall auxfilesinstall
make[4]: Entering directory '/home/m/fpc/rel_3.3.1/source/compiler'
make -C utils install
make[5]: Entering directory '/home/m/fpc/rel_3.3.1/source/compiler/utils'
/home/m/fpc/rel_3.3.1/source/compiler/ppcx64 -Ur -Xs -O2 -n -Fu..
-Fu/home/m/fpc/rel_3.3.1/source/rtl/units/x86_64-linux -FE.
-FUunits/x86_64-linux -Cg -Fl/usr/lib/gcc/x86_64-redhat-linux/13
-dx86_64 -dRELEASE msg2inc.pp
units/x86_64-linux/msg2inc.ll:663:71: error: expected '('
invoke void (i8**, i8*, i64, i64) @"\01fpc_ansistr_copy" (i8**
sret %reg.1_276, i8* %reg.1_275, i64 %reg.1_274, i64 %reg.1_270) to
label %.Lj88 unwind label %.Lj9
^
1 error generated.
Error: Error while assembling exitcode 1
=============
I also looked for msg2inc. And msg2inc was compiled before
msg2inc.pp is only twice in the log. As below, and as in the error above
Without the pp extension it is present in a few "rm". All above the
below snippet
make[5]: Leaving directory '/home/m/fpc/rel_3.3.1/source/compiler/utils'
/home/m/fpc/rel_3.3.1/source/compiler/ppcx64 -Clv16.0 -Ur -Xs -O2 -n
-Fu.. -Fu/home/m/fpc/rel_3.3.1/source/rtl/units/x86_64-linux -FE.
-FUunits/x86_64-linux -Cg -Fl/usr/lib/gcc/x86_64-redhat-linux/13
-dx86_64 -dRELEASE mka64ins.pp
/home/m/fpc/rel_3.3.1/source/compiler/ppcx64 -Clv16.0 -Ur -Xs -O2 -n
-Fu.. -Fu/home/m/fpc/rel_3.3.1/source/rtl/units/x86_64-linux -FE.
-FUunits/x86_64-linux -Cg -Fl/usr/lib/gcc/x86_64-redhat-linux/13
-dx86_64 -dRELEASE mkarmins.pp
/home/m/fpc/rel_3.3.1/source/compiler/ppcx64 -Clv16.0 -Ur -Xs -O2 -n
-Fu.. -Fu/home/m/fpc/rel_3.3.1/source/rtl/units/x86_64-linux -FE.
-FUunits/x86_64-linux -Cg -Fl/usr/lib/gcc/x86_64-redhat-linux/13
-dx86_64 -dRELEASE mkx86ins.pp
/home/m/fpc/rel_3.3.1/source/compiler/ppcx64 -Clv16.0 -Ur -Xs -O2 -n
-Fu.. -Fu/home/m/fpc/rel_3.3.1/source/rtl/units/x86_64-linux -FE.
-FUunits/x86_64-linux -Cg -Fl/usr/lib/gcc/x86_64-redhat-linux/13
-dx86_64 -dRELEASE msg2inc.pp
/home/m/fpc/rel_3.3.1/source/compiler/ppcx64 -Clv16.0 -Ur -Xs -O2 -n
-Fu.. -Fu/home/m/fpc/rel_3.3.1/source/rtl/units/x86_64-linux -FE.
-FUunits/x86_64-linux -Cg -Fl/usr/lib/gcc/x86_64-redhat-linux/13
-dx86_64 -dRELEASE mkx86inl.pp
/home/m/fpc/rel_3.3.1/source/compiler/ppcx64 -Clv16.0 -Ur -Xs -O2 -n
-Fu.. -Fu/home/m/fpc/rel_3.3.1/source/rtl/units/x86_64-linux -FE.
-FUunits/x86_64-linux -Cg -Fl/usr/lib/gcc/x86_64-redhat-linux/13
-dx86_64 -dRELEASE mkz80ins.pp
make[4]: Leaving directory '/home/m/fpc/rel_3.3.1/source/compiler/utils'
make[3]: Leaving directory '/home/m/fpc/rel_3.3.1/source/compiler'
make wpocycle
More information about the fpc-devel
mailing list