On Wed, 21 Jan 2026, Mattias Gaertner via fpc-devel wrote:

Hi,

I'm trying to build the namespaced unicodertl on win64:

First I build the normal compiler+units:

make distclean all
make install PREFIX=C:\pascal\3.3.1

fpc-unicodertl.cfg:
-dUNICODERTL
-Municodestrings
-dEnable_Delphi_RTTI

Building the rtl fails:
make -C rtl clean all SUB_TARGET=unicodertl FPC_DOTTEDUNITS=1 PP=C:\pascal\3.3.1\bin\x86_64-win64\ppcx64.exe

with:
...
Compiling ../namespaced/commmon/System.CPU.pp
592 lines comiled, 0.0 sec
make[1]: *** No rule to make target 'WinApi.Signals.ppu' needed by fpc_units. Stop.
make[1]: Leaving directory 'C:/pascal/3.3.1/source/rtl/win64'

The rtl/win64/Makefile is indeed missing a rule for WinApi.Signals.
The Makefile.fpc contains a conditional prerule:

ifeq ($(ARCH),x86_64)
# signals unit is x86 specific for now
CPU_UNITS=$(CPUUNIT) $(SIGNALSUNIT) $(INTRINSICSUNIT)
endif

Which is used in the target section:
units=$(SYSTEMUNIT) ... $(CPU_UNITS)

Does that mean, the Makefiles must be updated on win64 before building? They are in git.

If there is an error in Makefile.fpc, the makefiles must be remade, and
committed together with the changed Makefile.fpc.

Michael.
_______________________________________________
fpc-devel maillist  -  [email protected]
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel

Reply via email to