[fpc-devel] Annoying error when building compiler on i386-win32

Florian Klämpfl florian at freepascal.org
Tue Apr 6 10:45:01 CEST 2021

> Am 06.04.2021 um 10:42 schrieb Michael Van Canneyt via fpc-devel <fpc-devel at lists.freepascal.org>:
> On Tue, 6 Apr 2021, Florian Klämpfl via fpc-devel wrote:
>>> Am 06.04.2021 um 07:37 schrieb Sven Barth via fpc-devel <fpc-devel at lists.freepascal.org>:
>>> Am 05.04.2021 um 20:33 schrieb J. Gareth Moreton via fpc-devel:
>>>> Hi everyone,
>>>> I have a slightly annoying error when building the compiler for i386-win32.  I mentioned it to Sven a while ago, and the cause is due to the fact that my copy of common.dll is 64-bit, not 32-bit (as Sven confirmed for me).
>>>> Compiling .\oracle\src\oraoci.pp
>>>> oraoci.pp(1437) Error: Invalid DLL C:\WINDOWS\system32\common.dll, invalid header size
>>>> oraoci.pp(1437) Fatal: There were 1 errors compiling module, stopping
>>>> Fatal: Compilation aborted
>>>> Simply commenting out "{$linklib common}" on line 19 of the above file fixes the problem.  I would like to propose that this error be changed to a warning, since apparently not having the library present doesn't cause issues for compilation, just possibly execution later on.
>>> No. If you have a messed up system, that is not *our* fault.
>> But isn’t the complaint valid to a certain degree: if one cross compiles from x86_64-win64 to i386-win32, then the wrong DLLs are checked due to folder redirection, no? We have only code in place for the other direction (i386-win32 to x86_64-win64).
> The weird behaviour of windows is is not a valid reason to remove a {$linklib} statement.

No. But the compiler could take care of the fact to look into the right directory as we do in the i386-win32 to x86_64-win64 case.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-devel/attachments/20210406/c37e7fdd/attachment.htm>

More information about the fpc-devel mailing list