Discussion:
trying to link a large project: linker dies
(too old to reply)
Joshua Moore
2007-09-20 12:07:43 UTC
Permalink
I'm trying to link a program that has a large amount of static global data
in variables (for instance, several large arrays). If I remove some of
these large arrays, the program links correctly. If not, I get these errors
(BCB 2007):
[ILINK32 Warning] Warning: BSS : 0x00000000 / 0x00400000
[ILINK32 Warning] Warning: CODE : 0x000044c7 / 0x00400000
[ILINK32 Warning] Warning: DATA : 0x00cc6720 / 0x00cc7000
[ILINK32 Warning] Warning: DEBNAM : 0x0000262d / 0x00400000
[ILINK32 Warning] Warning: DEBSYM : 0x000032b6 / 0x00400000
[ILINK32 Warning] Warning: DEBTYP : 0x00003ab2 / 0x00400000
[ILINK32 Warning] Warning: Extdef flags : 0x00000021 / 0x00004000
[ILINK32 Warning] Warning: Extdefs : 0x00000084 / 0x00004000
[ILINK32 Warning] Warning: External types : 0x00000020 / 0x00040000
[ILINK32 Warning] Warning: Import symbols : 0x00000000 / 0x00100000
[ILINK32 Warning] Warning: Line number cache : 0x0000133e / 0x00060000
[ILINK32 Warning] Warning: OBJ symbols : 0x000016f4 / 0x00100000
[ILINK32 Warning] Warning: Public GSX : 0x00000178 / 0x000c0000
[ILINK32 Warning] Warning: Publics : 0x00000d38 / 0x000c0000
[ILINK32 Warning] Warning: SegRelocs : 0x00010734 / 0x00400000
[ILINK32 Warning] Warning: StringBlock : 0x000004d7 / 0x00400000
[ILINK32 Warning] Warning: Type names : 0x00000186 / 0x00100000
[ILINK32 Warning] Warning: UNKNOWN : 0x00000006 / 0x00400000
[ILINK32 Warning] Warning: Virdefs : 0x00000164 / 0x00020000
[ILINK32 Warning] Warning: C:/Documents and Settings/John/My
Documents/tigerdata/convert-gcc/Debug_Build/ProjectConvertGcc.ilc:
0x00010000 / 0x03000000
[ILINK32 Warning] Warning: C:/Documents and Settings/John/My
Documents/tigerdata/convert-gcc/Debug_Build/ProjectConvertGcc.ild:
0x030e3000 / 0x03000000
[ILINK32 Warning] Warning: C:/Documents and Settings/John/My
Documents/tigerdata/convert-gcc/Debug_Build/ProjectConvertGcc.ilf:
0x0001d000 / 0x03000000
[ILINK32 Warning] Warning: C:/Documents and Settings/John/My
Documents/tigerdata/convert-gcc/Debug_Build/ProjectConvertGcc.ils:
0x0004a000 / 0x03000000
[ILINK32 Warning] Warning: C:/Documents and Settings/John/My
Documents/tigerdata/convert-gcc/Debug_Build/ProjectConvertGcc.tds:
0x00020000 / 0x06000000
[ILINK32 Warning] Warning: CODE : 0x00000000 / 0x00400000
[ILINK32 Warning] Warning: DATA : 0x001cfeb0 / 0x00400000
[ILINK32 Warning] Warning: DEBNAM : 0x000000e5 / 0x00400000
[ILINK32 Warning] Warning: DEBSYM : 0x00000167 / 0x00400000
[ILINK32 Warning] Warning: DEBTYP : 0x0000024c / 0x00400000
[ILINK32 Warning] Warning: Extdef flags : 0x00000000 / 0x00004000
[ILINK32 Warning] Warning: Extdefs : 0x00000000 / 0x00004000
[ILINK32 Warning] Warning: Import symbols : 0x00000000 / 0x00100000
[ILINK32 Warning] Warning: OBJ symbols : 0x0000030c / 0x00100000
[ILINK32 Warning] Warning: Public GSX : 0x00000038 / 0x000c0000
[ILINK32 Warning] Warning: Publics : 0x000001f8 / 0x000c0000
[ILINK32 Warning] Warning: SegRelocs : 0x00000118 / 0x00400000
[ILINK32 Warning] Warning: StringBlock : 0x0000001d / 0x00400000
[ILINK32 Warning] Warning: Virdefs : 0x00000000 / 0x00020000
[ILINK32 Warning] Warning: unknown heap name : 0x03000000 / 0x03000000
[ILINK32 Error] Fatal: Error detected (LME1511)
[ILINK32 Warning] Warning: BSS : 0x00000000 / 0x00400000
[ILINK32 Warning] Warning: CODE : 0x000044c7 / 0x00400000
[ILINK32 Warning] Warning: DATA : 0x00cc6720 / 0x00cc7000
[ILINK32 Warning] Warning: DEBNAM : 0x0000262d / 0x00400000
[ILINK32 Warning] Warning: DEBSYM : 0x000032b6 / 0x00400000
[ILINK32 Warning] Warning: DEBTYP : 0x00003ab2 / 0x00400000
[ILINK32 Warning] Warning: Extdef flags : 0x00000021 / 0x00004000
[ILINK32 Warning] Warning: Extdefs : 0x00000084 / 0x00004000
[ILINK32 Warning] Warning: External types : 0x00000020 / 0x00040000
[ILINK32 Warning] Warning: Import symbols : 0x00000000 / 0x00100000
[ILINK32 Warning] Warning: Line number cache : 0x0000133e / 0x00060000
[ILINK32 Warning] Warning: OBJ symbols : 0x000016f4 / 0x00100000
[ILINK32 Warning] Warning: Public GSX : 0x00000178 / 0x000c0000
[ILINK32 Warning] Warning: Publics : 0x00000d38 / 0x000c0000
[ILINK32 Warning] Warning: SegRelocs : 0x00010734 / 0x00400000
[ILINK32 Warning] Warning: StringBlock : 0x000004d7 / 0x00400000
[ILINK32 Warning] Warning: Type names : 0x00000186 / 0x00100000
[ILINK32 Warning] Warning: UNKNOWN : 0x00000006 / 0x00400000
[ILINK32 Warning] Warning: Virdefs : 0x00000164 / 0x00020000
[ILINK32 Warning] Warning: C:/Documents and Settings/John/My
Documents/tigerdata/convert-gcc/Debug_Build/ProjectConvertGcc.ilc:
0x00010000 / 0x03000000
[ILINK32 Warning] Warning: C:/Documents and Settings/John/My
Documents/tigerdata/convert-gcc/Debug_Build/ProjectConvertGcc.ild:
0x030e3000 / 0x03000000
[ILINK32 Warning] Warning: C:/Documents and Settings/John/My
Documents/tigerdata/convert-gcc/Debug_Build/ProjectConvertGcc.ilf:
0x0001d000 / 0x03000000
[ILINK32 Warning] Warning: C:/Documents and Settings/John/My
Documents/tigerdata/convert-gcc/Debug_Build/ProjectConvertGcc.ils:
0x0004a000 / 0x03000000
[ILINK32 Warning] Warning: C:/Documents and Settings/John/My
Documents/tigerdata/convert-gcc/Debug_Build/ProjectConvertGcc.tds:
0x00020000 / 0x06000000
[ILINK32 Warning] Warning: CODE : 0x00000000 / 0x00400000
[ILINK32 Warning] Warning: DATA : 0x001cfeb0 / 0x00400000
[ILINK32 Warning] Warning: DEBNAM : 0x000000e5 / 0x00400000
[ILINK32 Warning] Warning: DEBSYM : 0x00000167 / 0x00400000
[ILINK32 Warning] Warning: DEBTYP : 0x0000024c / 0x00400000
[ILINK32 Warning] Warning: Extdef flags : 0x00000000 / 0x00004000
[ILINK32 Warning] Warning: Extdefs : 0x00000000 / 0x00004000
[ILINK32 Warning] Warning: Import symbols : 0x00000000 / 0x00100000
[ILINK32 Warning] Warning: OBJ symbols : 0x0000030c / 0x00100000
[ILINK32 Warning] Warning: Public GSX : 0x00000038 / 0x000c0000
[ILINK32 Warning] Warning: Publics : 0x000001f8 / 0x000c0000
[ILINK32 Warning] Warning: SegRelocs : 0x00000118 / 0x00400000
[ILINK32 Warning] Warning: StringBlock : 0x0000001d / 0x00400000
[ILINK32 Warning] Warning: Virdefs : 0x00000000 / 0x00020000
[ILINK32 Warning] Warning: unknown heap name : 0x03000000 / 0x03000000
[ILINK32 Error] Fatal: Error detected (LME1744)
[ILINK32 Error] Fatal: Access violation. Link terminated.

I got similar errors with BCB 2006, so I downloaded '07 yesterday. Google
has shown just 1 or 2 people with the same problem, but they didn't have a
fix. I used to get problems like this with BCB 5.0, but that was mostly with
the compiler (not the linker), and I was able to resolve those by putting
different large arrays in different source files.

Joshua Moore
RCM Engineering
Cartographic Programmer
Goshen, IN
Bob Gonder
2007-09-20 16:39:57 UTC
Permalink
Post by Joshua Moore
[ILINK32 Warning] Warning: unknown heap name : 0x03000000 / 0x03000000
, and I was able to resolve those by putting
different large arrays in different source files.
The more usual method is to GlobalAlloc() the arrays at runtime.

Try it with a few of your largest arrays and see if it doesn't help.
Loading...