Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / fpc-devel / 2026-01

build unicodertl on win64

2 messages · 2 people ·

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Mattias Gaertner

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.

Mattias

Reply by email

Michael Van Canneyt
to Mattias Gaertner
Mattias Gaertner wrote 39 lines
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.

Reply by email