View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0018894 | FPC | Compiler | public | 2011-03-09 00:29 | 2011-04-14 14:54 |
Reporter | Cyrax | Assigned To | Joost van der Sluis | ||
Priority | normal | Severity | block | Reproducibility | always |
Status | closed | Resolution | fixed | ||
Product Version | 2.5.1 | ||||
Fixed in Version | 2.6.0 | ||||
Summary | 0018894: Since SVN revision 17094 FPC cannot compile win64-version of itself. | ||||
Description | When trying to compile it gives following error messages: globals.pas(726,49) Error: Identifier not found "HWND" globals.pas(752,40) Error: Identifier not found "GetSystemDirectory" globals.pas(756,39) Error: Identifier not found "LoadLibrary" globals.pas(759,58) Error: Identifier not found "GetProcAddress" globals.pas(762,33) Error: Identifier not found "FreeLibrary" globals.pas(1588,16) Error: Identifier not found "FreeLibrary" globals.pas(1591) Fatal: There were 6 errors compiling module, stopping | ||||
Tags | No tags attached. | ||||
Fixed in Revision | 17115 | ||||
FPCOldBugId | 0 | ||||
FPCTarget | |||||
Attached Files |
|
|
Here is patch which fixes this bug. |
2011-03-09 01:04
|
globals.pas.diff (271 bytes)
Index: globals.pas =================================================================== --- globals.pas (revision 17094) +++ globals.pas (working copy) @@ -26,7 +26,7 @@ interface uses -{$ifdef win32} +{$ifdef windows} windows, {$endif} {$ifdef os2} |
|
Related issue (after the patch): cannot build wince-arm crosscompiler: D:/Distrib/Programming/Lazarus/trunk/fpc/compiler/ppcrossarm.exe -Twince -Parm - XParm-wince- -Xr -Ur -Xs -O2 -n -Fuarm -Fusystems -FuD:/Distrib/Programming/Laza rus/trunk/fpc/rtl/units/arm-wince -Fiarm -FE. -FUarm/units/arm-wince -dRELEASE -darm -dGDB -dBROWSERLOG pp.pas globals.pas(752,40) Error: Identifier not found "GetSystemDirectory" globals.pas(756,47) Error: Incompatible type for arg no. 1: Got "Array[0..259] O f Char", expected "PWideChar" globals.pas(1591) Fatal: There were 2 errors compiling module, stopping Fatal: Compilation aborted |
|
Can you try again, using r17115 or later? |
|
r17116: arm-wince crosscompiler has been built successfully, x86_64-win64 cannot be built (on my winXp HE sp2) ... make -C gdbint all make[3]: Entering directory `D:/Distrib/Programming/Lazarus/trunk/fpc/packages/gdbint' c:/lazarus/fpc/2.5.1/bin/i386-win32/gmkdir.exe -p units/x86_64-win64 c:/lazarus/fpc/2.5.1/bin/i386-win32/cp.exe src/gdbver_nogdb.inc src/gdbver.inc Different target os or cpu, using default GDB GDB_V606 D:/Distrib/Programming/Lazarus/trunk/fpc/compiler/ppcrossx64.exe -Twin64 -Px86_64 -XPx86_64-win64- -Xr -Ur -Xs -O2 -n -FuD:/Distrib/Programming/Lazarus/trunk/fpc/rtl/units/x86_64-win64 -FlD:/Distrib/Programming/Lazarus/trunk/fpc/libgdb/win64 -FoD:/Distrib/Programming/Lazarus/trunk/fpc/libgdb/win64 -FiD:/Distrib/Programming/Lazarus/trunk/fpc/libgdb/win64 -Fisrc -FE. -FUunits/x86_64-win64 -dx86_64 -dRELEASE -dGDB_V606 -Fisrc -Fusrc src/gdbint.pp gdbint.pp(3087) Error: Invalid DLL C:\WINDOWS\system32\kernel32.dll, invalid header size gdbint.pp(3087) Error: Invalid DLL C:\WINDOWS\system32\user32.dll, invalid header size Fatal: There were 2 errors compiling module, stopping Fatal: Compilation aborted make[3]: *** [gdbint.ppu] Error 1 make[3]: Leaving directory `D:/Distrib/Programming/Lazarus/trunk/fpc/packages/gdbint' make[2]: *** [gdbint_all] Error 2 make[2]: Leaving directory `D:/Distrib/Programming/Lazarus/trunk/fpc/packages' make[1]: *** [packages_all] Error 2 make[1]: Leaving directory `D:/Distrib/Programming/Lazarus/trunk/fpc' make: *** [build-stamp.x86_64-win64] Error 2 |
|
I think that Anton's issue is not related to the earlier problem I tested on 64-bit and there it works fine so Anton's problem is a win32->win64 crosscompiling problem. Anton's might be related to a clash between kernel32.dll and the mingw kernel32.a import lib. Anton: could you try to add "lib" and ".a" to lines 488 and 489 of gdbint, so that the linklibs for win64 read "libkernel32.a" and "libuser32.a", and then test if the problem persists? |
|
Marco: after applying changes you mentioned x86_64-win64 crosscompiler (and packages) has been built without any errors, thank you |
Date Modified | Username | Field | Change |
---|---|---|---|
2011-03-09 00:30 | Cyrax | New Issue | |
2011-03-09 00:34 | Jonas Maebe | Status | new => assigned |
2011-03-09 00:34 | Jonas Maebe | Assigned To | => Joost van der Sluis |
2011-03-09 01:03 | Cyrax | Note Added: 0046521 | |
2011-03-09 01:04 | Cyrax | File Added: globals.pas.diff | |
2011-03-10 17:55 | Anton | Note Added: 0046553 | |
2011-03-10 20:09 | Joost van der Sluis | Note Added: 0046554 | |
2011-03-10 20:11 | Joost van der Sluis | Note Edited: 0046554 | |
2011-03-11 19:11 | Anton | Note Added: 0046561 | |
2011-03-11 19:13 | Anton | Note Edited: 0046561 | |
2011-03-11 19:14 | Anton | Note Edited: 0046561 | |
2011-03-11 19:14 | Anton | Note Edited: 0046561 | |
2011-03-12 15:49 | Marco van de Voort | Note Added: 0046569 | |
2011-03-12 17:01 | Anton | Note Added: 0046572 | |
2011-03-13 11:58 | Jonas Maebe | FPCOldBugId | => 0 |
2011-03-13 11:58 | Jonas Maebe | Fixed in Revision | => 17115 |
2011-03-13 11:58 | Jonas Maebe | Status | assigned => resolved |
2011-03-13 11:58 | Jonas Maebe | Resolution | open => fixed |
2011-03-13 11:58 | Jonas Maebe | Fixed in Version | => 2.5.1 |
2011-04-14 14:54 | Cyrax | Status | resolved => closed |