CLion: Debugging on windows with DMD and LLDB

singingbush singingbush at hotmail.com
Sun Feb 8 11:21:31 UTC 2026


On Wednesday, 15 October 2025 at 18:53:39 UTC, Andre Pany wrote:
> On Thursday, 9 October 2025 at 15:45:40 UTC, Andre Pany wrote:
>> Hi,
>> as CLion is now free for hobby projects it is quite 
>> interesting IDE for me.
>> I try to get as much as possible working on a barebone CLion 
>> installation on Windows.
>>
>> - Syntax highlighting for D is easy due to Textmate Bundle for 
>> D
>> - I registered *.D as as C files in the IDE, this enables me 
>> to set a breakoint
>>   in a source code line.
>>
>> - Syntax check and Code completion is at the moment not 
>> interesting, Copilot does
>>   a pretty good job here.
>>
>> Now the difficult part. CLion comes on Windows with GDB (MinGW 
>> Toolchain) and
>> LLDB 9.0 (Visual Studio Toolchain). I assume in theory it 
>> should be possible
>> to compile an x64 application with DMD and debug it with LLDB 
>> on Windows?
>>
>> Kind regards
>> André
>
> My findings:
>
> it works fine by using LDC instead of DMD. The embedded LLDB 
> 9.0 works in limited way.
> The plugin "lsp4ij" also adds support for Debug Adapter 
> Protocol. Therefore a recent LLDB (lldb-dap) can be used. The 
> next CLion version 2025.3 will also add builtin support for DAP.
>
> => On windows after downloading LLVM, debugging will not work 
> out of the box. The python "Windows embeddable package 3.10.10" 
> needs to be downloaded and extracted to the LLVM bin directory.
>
> => Breakpoints only working with argument -gc
>
> => By using the DAP, *.d extension also not need to be 
> registered as C++ file
>
> Kind regards
> André

We still aim to fully support CLion at some point. It's just been 
unfortunate that the Jetbrains platform evolves faster than the 
plugin has been developed.

Jetbrains are overhauling the debugger so [we plan to rip out the 
current implementation and replace it with integration of native 
debugger 
support](https://github.com/intellij-dlanguage/intellij-dlanguage/issues/1207) which has been a desire for quite some time. It makes more sense now as Jetbrains have a unified approach to the IDE's making it, in some ways, easier for use to add features across IDE's as they will depend on specific functionality which is no longer tied to specific IDE's meaning we can potentially support the native debugger without it being CLion specific with a completely different approach for Intellij.

Also, now that Jetbrains have made LSP integration part of their 
platform, work has started to allow users to optionally use 
Serve-D: https://github.com/orgs/intellij-dlanguage/projects/1

I personally don't want to rely on serve-d for too much, 
especially as we already have some of the functionality that the 
lsp provides without the need for an external tool. At the minute 
the approach is to just make it an (preview feature) option for 
auto-completion and potentially add individual options for the 
user to chose which serve-d features are enabled. It's probably a 
nicer option than relying on users to configure D tools 
individually but it would be nice to not need external tools at 
all (personally I only setup the compiler and dub, I don't use 
dcd, dscanner, or dfmt).


More information about the Digitalmars-d-ide mailing list