On Tue, 23 Oct 2018 20:16:28 +0200, Sönke Ludwig wrote:

Am 17.10.2018 um 23:07 schrieb K. P.:

Hi - vibe newbie here. Can someone shine some light on what's going wrong here and how to fix it.

Using current DMD, current DUB on Win 10.

Thanks for any help!

(...)
D:\projects\d2\apitest\hello>dub -a x86_64
(...)
Linking...
C:\D2\dmd2\windows\bin\lld-link.exe: error: could not open libcmt.lib: no such file or directory
C:\D2\dmd2\windows\bin\lld-link.exe: error: could not open OLDNAMES.lib: no such file or directory
Error: linker exited with status 1
C:\D2\dmd2\windows\bin\dmd.exe failed with exit code 1.

D:\projects\d2\apitest\hello>

It's using the LLD linker, which was added recently as an experimental
alternative to the Microsoft linker. I haven't tried it yet, so I'm not
sure how well it works, but you could try to build with -a x86_mscoff
to see if 32-bit builts work properly.

Alternatively, you'd have to go the classic path and install the C++
tools of VisualStudio (community edition). DMD should then automatically
pick up the Microsoft linker. LDC2 also works as an alternative on Windows.

Thanks for your help - much appreciated. It worked fine - alas ... there are quite a number of warnings

...
...
C:\Users\kpeters\AppData\Local\dub\packages\vibe-core-1.4.3\vibe-core\source\vibe\core\core.d(692,70): Deprecation: std.algorithm.setops.No is not visible from module core
C:\Users\kpeters\AppData\Local\dub\packages\vibe-core-1.4.3\vibe-core\source\vibe\core\log.d(33,23): Deprecation: opDot is deprecated. Use alias this
C:\Users\kpeters\AppData\Local\dub\packages\vibe-core-1.4.3\vibe-core\source\vibe\core\log.d(50,3): Deprecation: opDot is deprecated. Use alias this
C:\Users\kpeters\AppData\Local\dub\packages\vibe-core-1.4.3\vibe-core\source\vibe\core\log.d(51,3): Deprecation: opDot is deprecated. Use alias this
C:\Users\kpeters\AppData\Local\dub\packages\vibe-core-1.4.3\vibe-core\source\vibe\core\log.d(67,3): Deprecation: opDot is deprecated. Use alias this
C:\Users\kpeters\AppData\Local\dub\packages\vibe-core-1.4.3\vibe-core\source\vibe\core\log.d(68,3): Deprecation: opDot is deprecated. Use alias this
C:\Users\kpeters\AppData\Local\dub\packages\vibe-core-1.4.3\vibe-core\source\vibe\core\log.d(847,14): Deprecation: opDot is deprecated. Use alias this
C:\Users\kpeters\AppData\Local\dub\packages\vibe-core-1.4.3\vibe-core\source\vibe\core\log.d(852,9): Deprecation: opDot is deprecated. Use alias this
C:\Users\kpeters\AppData\Local\dub\packages\vibe-core-1.4.3\vibe-core\source\vibe\core\log.d(860,13): Deprecation: opDot is deprecated. Use alias this
C:\Users\kpeters\AppData\Local\dub\packages\vibe-core-1.4.3\vibe-core\source\vibe\core\log.d(861,10): Deprecation: opDot is deprecated. Use alias this
C:\Users\kpeters\AppData\Local\dub\packages\vibe-core-1.4.3\vibe-core\source\vibe\core\log.d(865,10): Deprecation: opDot is deprecated. Use alias this
C:\Users\kpeters\AppData\Local\dub\packages\vibe-core-1.4.3\vibe-core\source\vibe\core\log.d(869,11): Deprecation: opDot is deprecated. Use alias this
C:\Users\kpeters\AppData\Local\dub\packages\vibe-core-1.4.3\vibe-core\source\vibe\core\log.d(870,11): Deprecation: opDot is deprecated. Use alias this
C:\Users\kpeters\AppData\Local\dub\packages\vibe-core-1.4.3\vibe-core\source\vibe\core\log.d(871,11):
...
...
C:\Users\kpeters\AppData\Local\dub\packages\vibe-d-0.8.4\vibe-d\mongodb\vibe\db\mongo\settings.d(16,8): Deprecation: alias std.digest.digest.toHexString is deprecated - import std.digest instead of std.digest.digest. std.digest.digest will be removed in 2.084
C:\Users\kpeters\AppData\Local\dub\packages\vibe-d-0.8.4\vibe-d\mongodb\vibe\db\mongo\settings.d(16,8): Deprecation: alias std.digest.digest.toHexString is deprecated - import std.digest instead of std.digest.digest. std.digest.digest will be removed in 2.084

Linking...
vibe-d_web.lib(common.obj) : warning LNK4255: library contain multiple objects of the same name; linking object as if no debug info
eventcore.lib(driver.obj) : warning LNK4255: library contain multiple objects of the same name; linking object as if no debug info
eventcore.lib(driver.obj) : warning LNK4255: library contain multiple objects of the same name; linking object as if no debug info
eventcore.lib(core.obj) : warning LNK4255: library contain multiple objects of the same name; linking object as if no debug info
Copying files for vibe-d:tls...

Do they hail from compiler upgrades that are not yet handled in the vibe sources? Or are there any other legitimate reasons for these peskies? If compiler 'incompatibility', when can we expect a version that is in synch with the compiler progress?

Finally, a thing that puzzles me: I build my little server, run it successfully, then Ctrl-C it and get my Windows command prompt back. When I then try to delete the exe I just built, I get 'Access denied'. I have to end the command prompt that spawned the exe in order to being able to delete the exe - what's going on??

Thanks for again for anyone who can shed light on either or both of my questions.

Cheers,
Kai