digitalmars.D.learn - Linking error: unresolved external symbol internal
- MrSmith (23/23) Oct 10 2017 I have a static library and an application.
- Steven Schveighoffer (4/34) Oct 10 2017 No idea exactly what causes it, but here is another place I've seen it:
I have a static library and an application. When linking final executable I get: lib.lib(texteditor_1d_40c.obj) : error LNK2001: unresolved external symbol internal lib.lib(textbuffer_14_3ce.obj) : error LNK2001: unresolved external symbol internal Happens on Windows 32 and 64 bit. Only with debug build. DMD 2.076.0 Error doesn't happen when I move code from library to the application. Here is reduced test case (where 2 errors happen, 4 files): https://gist.github.com/MrSmith33/29125fa3538bb03637d0aebab6ccff7c Here is smaller case (only 1 error, 2 files): https://gist.github.com/MrSmith33/dc53d8cb6ce642fcb6dbc5863d029cec If this is relevant: 3 places I found in dmd where "internal" symbol is created: * https://github.com/dlang/dmd/blob/4d86fcba2fd2ef86cc85738cd2ac2b059dbb5800/src/ddmd/backend/dt.c#L420 * https://github.com/dlang/dmd/blob/4d86fcba2fd2ef86cc85738cd2ac2b059dbb5800/src/ddmd/tocsym.d#L662 * https://github.com/dlang/dmd/blob/4d86fcba2fd2ef86cc85738cd2ac2b059dbb5800/src/ddmd/tocsym.d#L681
Oct 10 2017
On 10/10/17 11:09 AM, MrSmith wrote:I have a static library and an application. When linking final executable I get: lib.lib(texteditor_1d_40c.obj) : error LNK2001: unresolved external symbol internal lib.lib(textbuffer_14_3ce.obj) : error LNK2001: unresolved external symbol internal Happens on Windows 32 and 64 bit. Only with debug build. DMD 2.076.0 Error doesn't happen when I move code from library to the application. Here is reduced test case (where 2 errors happen, 4 files): https://gist.github.com/MrSmith33/29125fa3538bb03637d0aebab6ccff7c Here is smaller case (only 1 error, 2 files): https://gist.github.com/MrSmith33/dc53d8cb6ce642fcb6dbc5863d029cec If this is relevant: 3 places I found in dmd where "internal" symbol is created: * https://github.com/dlang/dmd/blob/4d86fcba2fd2ef86cc85738cd2ac2b059dbb5800/src/dd d/backend/dt.c#L420 * https://github.com/dlang/dmd/blob/4d86fcba2fd2ef86cc85738cd2ac2b059dbb5800/sr /ddmd/tocsym.d#L662 * https://github.com/dlang/dmd/blob/4d86fcba2fd2ef86cc85738cd2ac2b059dbb5800/sr /ddmd/tocsym.d#L681No idea exactly what causes it, but here is another place I've seen it: https://issues.dlang.org/show_bug.cgi?id=17740 -Steve
Oct 10 2017