[fpc-pascal] Downloaded cross-compiler from Sourceforge - wiki incorrect?
Tomas Hajny
XHajT03 at hajny.biz
Thu Mar 23 09:35:33 CET 2023
On 2023-03-23 09:25, Bo Berglund via fpc-pascal wrote:
> I tried to add a cross-compiler for Win32 to my existing Lazarus 2.2.4
> installation on Windows 10 x64.
.
.
> Then opened Lazarus 2.2.4 with my project and changed project options
> as
> follows:
>
> Compiler_Options/Config_and_Target/Target OS(-T): Win32
>
> Everything else left as-is.
>
>
> Now when I OK this, Lazarus pops up a message saying:
> --------------------------------------
> The current FPC has no config file. It will probably miss
> some units. Check your installation of fpc.
> --------------------------------------
> When I hit the OK button another pop-up:
> --------------------------------------
> The project uses target OS=win32 and CPU=x86_64.
> The system.ppu for this target was not found in the FPC
> binary directories.
> Make sure fpc is installed correctly for this target and the
> fpc.cfg contains the right directories.
> [OK]
> ---------------------------------------
>
> So I followed the install instructions on the Wiki and wound up in this
> non-working state...
>
> What steps are missing that I must do?
> Why does it not find the correct system.ppu?
>
> I searched the install dir for system.ppu and found two here:
>
> C:\Programs\Lazarus_2.2.4\fpc\3.2.2\units\i386-win32\rtl
> C:\Programs\Lazarus_2.2.4\fpc\3.2.2\units\x86_64-win64\rtl
>
>
> What I see is:
> in C:\Programs\Lazarus_2.2.4\fpc\3.2.2\bin\ only x86_64-win64 exists
>
> in C:\Programs\Lazarus_2.2.4\fpc\3.2.2\units these dirs exsist:
> i386-win32
> x86_64-win64
>
> in C:\Programs\Lazarus_2.2.4\fpc\3.2.2\fpmkinst these dirs exsist:
> i386-win32
> x86_64-win64
>
> It seems like the cross installer failed to install the cross binaries,
> why????
>
> I must have done something seriously wrong...
>
> Or could the problem be that Windows Defender has blocked all exe files
> from
> being installed?
I don't know how it works with Lazarus (I install FPC using the
installer provided with FPC, not the one for Lazarus), but I don't think
that this has anything to do with Windows Defender. You missed another
step mentioned by Sven, in particular changing the target CPU from
x86_64 to i386. If it fails to find system.cpu even after that step, you
may need to revisit the configuration file as already suggested in the
message to make sure that search path for units (-Fu) references the
full target "variable" rather than explicitly the x86_64-win64
directory.
Tomas
More information about the fpc-pascal
mailing list