www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - link error on Windows

reply Joel <joelcnz gmail.com> writes:
I think is works with older versions of DMD.

D:\jpro\dpro2\SpellIt>dub
Performing "debug" build using D:\jpro\dmd2\windows\bin\dmd.exe 
for x86_64.
bindbc-loader 0.3.0: target for configuration "noBC" is up to 
date.
bindbc-sdl 0.18.0: target for configuration "dynamic" is up to 
date.
spellit ~master: building configuration "application"...
..\arsdLib\source\arsd\terminal.d(3657,5): Deprecation: variable 
idx is shadowing variable 
arsd.terminal.ScrollbackBuffer.drawInto.idx. Rename the foreach 
variable.
Linking...
lld-link: error: undefined symbol: 
_D4core8internal7switch___T14__switch_errorZQrFNaNbNiNfAyamZv
 referenced by 
 D:\jpro\dmd2\windows\bin\..\..\src\phobos\std\format.d:7088
               
 .dub\build\application-debug-windows-x86_64-dmd_2092-8E7B763C2C746F27EB489566C5B583AE\spellit.obj:(_D3std6format__T10printFloatTfTaZQrFNaNfNkAafSQBsQBr__T10FormatSpecTaZQpEQCtQCs12RoundingModeZQCa)
 referenced by 
 D:\jpro\dmd2\windows\bin\..\..\src\phobos\std\uni.d:6291
               
 .dub\build\application-debug-windows-x86_64-dmd_2092-8E7B763C2C746F27EB489566C5B583AE\spellit.obj:(_D3std3uni__T16UnicodeSetParserTSQBf5regex8internal6parser__T6ParserTAyaTSQCuQBpQBmQBg7CodeGenZQBiZQDi13parseCharTermMFNfZSQEr8typecons__T5TupleTSQFoQFn__T13InversionListTSQGoQGn8GcPolicyZQBhTEQHjQHi__TQHhTQGsZQHp8OperatorZQDh)
 referenced by 
 D:\jpro\dpro2\SpellIt\..\JecsdlLib\source\jecsdl\draw.d:47
               
 .dub\build\application-debug-windows-x86_64-dmd_2092-8E7B763C2C746F27EB489566C5B583AE\spellit.obj:(_D6jecsdl4draw10JRectangleQrMFZv)
 referenced by 
 D:\jpro\dpro2\SpellIt\..\JecsdlLib\source\jecsdl\lettermanager.d:650
               
 .dub\build\application-debug-windows-x86_64-dmd_2092-8E7B763C2C746F27EB489566C5B583AE\spellit.obj:(_D6jecsdl13lettermanager13LetterManager7doInputMFKbZa)
 referenced by 
 D:\jpro\dpro2\SpellIt\..\arsdLib\source\arsd\dom.d:5988
               
 .dub\build\application-debug-windows-x86_64-dmd_2092-8E7B763C2C746F27EB489566C5B583AE\spellit.obj:(_D4arsd3dom13parseSelectorFAAyabZSQBgQBe17SelectorComponent)
 referenced by 
 D:\jpro\dpro2\SpellIt\..\arsdLib\source\arsd\terminal.d:1770
               
 .dub\build\application-debug-windows-x86_64-dmd_2092-8E7B763C2C746F27EB489566C5B583AE\spellit.obj:(_D4arsd8terminal20RealTimeConsoleInput11injectEventMFSQCaQBy10InputEventEQCtQCrQCl17InjectionPositionZv)
 referenced by 
 D:\jpro\dpro2\SpellIt\..\arsdLib\source\arsd\terminal.d:3718
               
 .dub\build\application-debug-windows-x86_64-dmd_2092-8E7B763C2C746F27EB489566C5B583AE\spellit.obj:(_D4arsd8terminal16ScrollbackBuffer11handleEventMFSQBwQBu10InputEventZb)
 referenced by D:\jpro\dpro2\SpellIt\source\app.d:188
               
 .dub\build\application-debug-windows-x86_64-dmd_2092-8E7B763C2C746F27EB489566C5B583AE\spellit.obj:(_Dmain)
 referenced by D:\jpro\dpro2\SpellIt\source\app.d:185
               
 .dub\build\application-debug-windows-x86_64-dmd_2092-8E7B763C2C746F27EB489566C5B583AE\spellit.obj:(_Dmain)
 referenced by D:\jpro\dpro2\SpellIt\source\projectetc.d:307
               
 .dub\build\application-debug-windows-x86_64-dmd_2092-8E7B763C2C746F27EB489566C5B583AE\spellit.obj:(_D10projectetc10ProjectEtc11showTheWordMFZv)
 referenced 1 more times
Error: linker exited with status 1 D:\jpro\dmd2\windows\bin\dmd.exe failed with exit code 1.
May 16 2020
parent reply Joel <joelcnz gmail.com> writes:
I tried with DMD32 D Compiler v2.088.1-dirty, and it compiled and 
created an exe file, but not run (msvcr100.dll not found - and 
tried to find it on the net without success).
May 18 2020
parent reply Nathan S. <no.public.email example.com> writes:
On Tuesday, 19 May 2020 at 04:54:38 UTC, Joel wrote:
 I tried with DMD32 D Compiler v2.088.1-dirty, and it compiled 
 and created an exe file, but not run (msvcr100.dll not found - 
 and tried to find it on the net without success).
DMD 2.089 changed the default linking options. I bet an up-to-date DMD will also work if you invoke it as "dmd -m32mscoff". It should also work if you build it in 64-bit mode.
May 20 2020
parent Joel <joelcnz gmail.com> writes:
On Wednesday, 20 May 2020 at 09:31:38 UTC, Nathan S. wrote:
 On Tuesday, 19 May 2020 at 04:54:38 UTC, Joel wrote:
 I tried with DMD32 D Compiler v2.088.1-dirty, and it compiled 
 and created an exe file, but not run (msvcr100.dll not found - 
 and tried to find it on the net without success).
DMD 2.089 changed the default linking options. I bet an up-to-date DMD will also work if you invoke it as "dmd -m32mscoff". It should also work if you build it in 64-bit mode.
Thanks Nathan. Got it to work using 64-bit. :)
May 20 2020