Thread overview | |||||
---|---|---|---|---|---|
|
October 12, 2018 LDC2 -I option results in unresolved externals | ||||
---|---|---|---|---|
| ||||
I'm using the latest LDC2 beta, and when running the compiler with -I (Look for imports also in <directory>) it fails with unresolved externals. These are my commands. ===================================================== $ ldc2 "source\setup.d" -I "source" -J "build\vars" -of "build\bin\setup.exe" -m32 -g setup.obj : error LNK2019: unresolved external symbol __D6common17createErrorDialogFxC9ExceptionZv referenced in function __Dmain setup.obj : error LNK2019: unresolved external symbol __D6common14getConsoleArgsFxPuZAAya referenced in function __D5setup20getAvailableBrowsersFZ14__foreachbody1MFKC3std7windows8registry3KeyZi setup.obj : error LNK2001: unresolved external symbol __D6common12__ModuleInfoZ build\bin\setup.exe : fatal error LNK1120: 3 unresolved externals Error: C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.15.26726\bin\HostX86\x86\link.exe failed with status: 1120 ===================================================== But this next one works fine. ===================================================== $ ldc2 "source\setup.d" "source/common.d" -J "build\vars" -of "build\bin\setup.exe" -m32 -g ===================================================== I'm using LDC2 version 1.12.0-beta2, on DMD v2.082.0, on Windows with VS Build Tools 2017. Any solutions or corrections appreciated. |
October 12, 2018 Re: LDC2 -I option results in unresolved externals | ||||
---|---|---|---|---|
| ||||
Posted in reply to spikespaz | On Friday, 12 October 2018 at 06:01:12 UTC, spikespaz wrote:
> I'm using the latest LDC2 beta, and when running the compiler with -I (Look for imports also in <directory>) it fails with unresolved externals. These are my commands.
>
> =====================================================
>
> $ ldc2 "source\setup.d" -I "source" -J "build\vars" -of "build\bin\setup.exe" -m32 -g
> setup.obj : error LNK2019: unresolved external symbol __D6common17createErrorDialogFxC9ExceptionZv referenced in function __Dmain
> setup.obj : error LNK2019: unresolved external symbol __D6common14getConsoleArgsFxPuZAAya referenced in function __D5setup20getAvailableBrowsersFZ14__foreachbody1MFKC3std7windows8registry3KeyZi
> setup.obj : error LNK2001: unresolved external symbol __D6common12__ModuleInfoZ
> build\bin\setup.exe : fatal error LNK1120: 3 unresolved externals
> Error: C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.15.26726\bin\HostX86\x86\link.exe failed with status: 1120
>
> =====================================================
>
> But this next one works fine.
>
> =====================================================
>
> $ ldc2 "source\setup.d" "source/common.d" -J "build\vars" -of "build\bin\setup.exe" -m32 -g
>
> =====================================================
>
> I'm using LDC2 version 1.12.0-beta2, on DMD v2.082.0, on Windows with VS Build Tools 2017.
> Any solutions or corrections appreciated.
-I does not tell the compiler to actually compile the modules it finds in the given directory. It's only for symbol lookup.
DMD has the -i option which tells the compiler to automatically compile all imported modules. I don't know if LDC has anything similar, the wiki page listing its command line options hasn't been updated in a while.
|
October 12, 2018 Re: LDC2 -I option results in unresolved externals | ||||
---|---|---|---|---|
| ||||
Posted in reply to Mike Parker | On Friday, 12 October 2018 at 07:32:26 UTC, Mike Parker wrote:
> DMD has the -i option which tells the compiler to automatically compile all imported modules. I don't know if LDC has anything similar.
It does, same option.
|
Copyright © 1999-2021 by the D Language Foundation