Windows experience is atrocious
harakim
harakim at gmail.com
Fri Jul 21 02:54:16 UTC 2023
On Thursday, 20 July 2023 at 16:22:47 UTC, Rumbu wrote:
> Long time D user here (from D1 era). I said to come back after
> two years to see how things evolved in the meantime.
>
> Here is my Windows experience:
>
> 1. Downloaded DMD installer.
> 2. Cannot run, blocked by AppLocker, IOC blacklisted
> 3. Added to exception list
> 4. Cannot run, blocked by Windows SmartScreen
> 5. Bypass
> 6. You have DMD 2.090 installed, replace it? Yes
> 7. Failed, installer said run dmd-2.104.2.exe /f
> 8. Looking in cpanel to see if I an older version of D is
> installed. Nope.
> 9. Found an old folder with D. Deleted it.
> 10. Going to command prompt into downloads folder
> 11. Running dmd-2.104.2.exe /f
> 12. Error, an instance of DMD is already running.
> 13. Looking through my processes, there is no such thing
> 14. Running dmd-2.104.2.exe /f again. It works!
> 15. You don't have VS Tools 2019 installed. I have. 2015, 2017,
> 2019 and 2022
> 16. Ignore and go on.
> 17. Launch VSCode
> 18. Install code-d, C++ already installed
> 19. Create a new project
> 20. Run tasks - Run -> dub cannot be initialized
> 21. Go to code.dlang.org
> 22. Click on Download -> redirect to github/releases
> 23. WTF, only source code.
> 24. building Dub from source
> 25. Added manually to PATH
> 26. Go back to VSCode
> 27. Edit dub.json, adding target ./bin/hello.exe
> 28. Build Task, dub-auto - Run hello, ok
> 29. Build Task, dub-auto - Build hello -> config -> edit
> tasks.json
> 30. Documentation says that I should have a dub template. Nope,
> I have a CMake template.
> 31. Too complicated. Close VSCode, posting on forum :)
>
> ----
>
> OK, I know, there is VisualD, but install process is still
> complicated.
I downloaded the latest version and Windows "protected" me from
running the installer. So that much I was able to repro.
When I went to install, it asked me if I wanted to uninstall the
old version, which I said I did, and then it uninstalled and
installed perfectly. I tested that it compiled my project from
one year ago and it worked like a charm. How do I know it didn't
just fail to do anything, you might ask?
```
source\arsd\simpledisplay.d(6445,51): Deprecation: using `in ref`
is deprecated, use `-preview=in` and `in` instead
...
source\arsd\http2.d(3567,17): Error: function `void
arsd.http2.OpenSslSocket.close()` does not override any function,
did you mean to override `nothrow @nogc scope @trusted void
std.socket.Socket.close()`?
Error C:\Program Files\D\dmd2\windows\bin\dmd.exe failed with
exit code 1.
```
Oh, D... *smile and sigh*
More information about the Digitalmars-d
mailing list