LLVM Clang 17, GNU dbg or DAP debugger does not work
What I got:
CodeLite 17.0.0 - Stable released on January 11, 2023
LLVM Clang 17.0.3
https://github.com/llvm/llvm-project/re ... -win64.exe
MSYS2 Clang
https://github.com/msys2/msys2-installe ... 231026.exe
(from MSYS2 ) (and used Windows - CodeLite Documentation )
Code: Select all
pacman -Sy git \
openssh \
mingw-w64-clang-x86_64-gdb \
mingw-w64-clang-x86_64-toolchain \
mingw-w64-clang-x86_64-python3 \
mingw-w64-clang-x86_64-cmake \
mingw-w64-clang-x86_64-libffi \
mingw-w64-clang-x86_64-jq \
mingw-w64-clang-x86_64-libxml2 \
unzip
Codelite settings:
MakeFile Generator: CodeLite Makefile Generator
Compiler gcc-17.0.2(clang msys64)
Debug Adapter Client:
Code: Select all
Command: E:\CodeLite\LLDB_cpptools-win64\extension\debugAdapters\bin\OpenDebugAD7.exe --server (edit)
E:\CodeLite\compilar\msys64-clang\clang64\bin\lldb-vscode.exe -p 4711
Connection string: tcp://127.0.0.1:4711
If I compile ‘hello world’ example with:
MakeFile Generator: CodeLite Makefile Generator
Compiler: gcc-17.0.2(clang msys64)
Both GNU DBG and Debug Adapter Client work normaly.
Build Output:
Code: Select all
E:/CodeLite/compilar/msys64-clang/clang64/bin/mingw32-make.exe -j16 -e -f Makefile
"----------Building project:[ test - Debug ]----------"
mingw32-make[1]: Entering directory 'E:/CodeLite/proiecte/test'
E:/CodeLite/compilar/msys64-clang/clang64/bin/g++.exe -c "E:/CodeLite/proiecte/test/main.cpp" -gdwarf-2 -fstandalone-debug -O0 -Wall -o ../build-Debug/test/main.cpp.o -I. -I.
E:/CodeLite/compilar/msys64-clang/clang64/bin/g++.exe -o ..\build-Debug\bin\test.exe @../build-Debug/test/ObjectsList.txt -L.
mingw32-make[1]: Leaving directory 'E:/CodeLite/proiecte/test'
=== build completed successfully (0 errors, 0 warnings) ===
If I compile ‘hello world’ example with:
MakeFile Generator: CodeLite Makefile Generator
Compiler: gcc-17.0.3(clang llvm)
No debugger works.
GNU DGB: nothing happens
Debug Adapter Client: The debug interface that stays for less than half a second
(using DAP: Adding ‘std::system(“pause”);’ the debug interface does not close, Continue does nothing, Stop works, Next does nothing, Pause works and Next works in Assembly. Breakpoints Appear in the list but are not respected)
Build Output:
Code: Select all
E:/CodeLite/compilar/msys64-clang/clang64/bin/mingw32-make.exe -j16 -e -f Makefile
"----------Building project:[ test - Debug ]----------"
mingw32-make[1]: Entering directory 'E:/CodeLite/proiecte/test'
E:/CodeLite/compilar/LLVM-17.0.3-Clang/bin/clang++.exe -c "E:/CodeLite/proiecte/test/main.cpp" -m64 -g -O0 -gdwarf-2 -Wall -fstandalone-debug -o ../build-Debug/test/main.cpp.o -I. -I.
E:/CodeLite/compilar/LLVM-17.0.3-Clang/bin/clang++.exe -o ..\build-Debug\bin\test.exe @../build-Debug/test/ObjectsList.txt -L.
mingw32-make[1]: Leaving directory 'E:/CodeLite/proiecte/test'
=== build completed successfully (0 errors, 0 warnings) ===
So with msys2 clang/g++ , GNU DBG and DAP works, but not with LLVM Clang.
LLVM Clang does not come with make(or is named something else?) and I use ‘mingw32-make.exe -j16’ from msys2 clang, is this a problem?
Do I need to pass something else to the compiler to make debugger working?
Posted in llvm.org forum too, no solution: https://discourse.llvm.org/t/codelite-a ... er/74478/8