Developer forums (C::B DEVELOPMENT STRICTLY!) > Plugins development
Code completion using LSP and clangd
kakas:
--- Quote from: Pecan on April 09, 2024, 07:48:48 pm ---A few questions so I can get a picture of your system setup.
1) Are you actually compiling with Clang.exe or with mingw64 or mingw32.
2) Do you work in 32 bit C++ or 64bit C++ ?
3) After installing the nightly, click on mainmenu/plugins/manage plugins.
Is clangd_client listed. See image below.
Is codecompletion disabled? Is clangd_client enabled?
--- End quote ---
1) My default compiler is mingw64
2) I am not really sure what this means(but I use 64 bit version of everything whenever possible, just cuz of the paranoia that things might not work, I also have built for only 64bit systems)
3) Yes it's same as displayed in the image
(about the nightly build, I haven't tried April 1st built yet.)
Pecan:
Something happened and I lost this post.
So I'm reposting.
--- Quote from: kakas on April 09, 2024, 05:28:18 pm ---Hello sir, I tried to install your plugin but the plugin gets disabling upon resart. I am following this https://wiki.codeblocks.org/index.php/CB_Clangd_Client#Windows:_Compiler_Clangd.2FLLVM_Package_Installerguide.
I installed a nightly build of Code blocks, from 16th December 2023.
And downloaded,installed clang.exe with the following command: "pacman -S mingw-w64-clang-x86_64-clang-tools-extra".
And disabled the "code completion" plugin, then enabled "Clangd_Client".
Set my default compiler to clang.exe in code blocks compiler setting.
But after restarting code blocks, clangd_client remains disabled and there is no option of "clangd_client" on the left of editor settings.
I am not sure if following ONLY the "Configuring clangd_client" and "Windows: Compiler Clangd/LLVM Package Installer" section of the guide has led to this error or am I misinterpreting the instruction about setting a compiler before restarting.
--- End quote ---
I've moved this message here from personal msgs so that we all can proffer from the solution.
@ kakas
I'd suggest that you uninstall (or remove) that old nightly 16 December 2023 and install this the April 1, 2024 version instead since it has many additions and fixes over last years version.
https://forums.codeblocks.org/index.php/topic,25755.msg175319.html#msg175319
You don't actually "install" it. You just download and unzip the three zips into a newly made folders.
cbNightly <-- new main nightly folder
codeblocks <-- contains all the codeblocks zips except the compiler zip.
mngw64 <-- contains the compiler contents
Start a command session click the windows key then type "cmd" and enter key.
From with the cmd window "cd cbNightly\codeblocks
Type: codeblocks.exe /d
Question: Does codeblocks show ok?
If so, Check that the compilers tool chain is set to the download mingw64 executables.
Click mainMenu/Settings/Compiler/Toolchain executables
See second image below.
Please excuse me if I insult your intelligents. I just want to get the basics out of the way so we have approximately the same setup to work with.
A few questions so I can get a picture of your system setup.
1) Are you actually compiling with Clang.exe or with mingw64 or mingw32.
2) Do you work in 32 bit C++ or 64bit C++ ?
3) After installing the nightly, click on mainmenu/plugins/manage plugins.
Is clangd_client listed. See image below.
Is codecompletion disabled? Is clangd_client enabled?
Pecan:
--- Quote from: kakas on April 09, 2024, 08:31:19 pm ---
--- Quote from: Pecan on April 09, 2024, 07:48:48 pm ---A few questions so I can get a picture of your system setup.
1) Are you actually compiling with Clang.exe or with mingw64 or mingw32.
2) Do you work in 32 bit C++ or 64bit C++ ?
3) After installing the nightly, click on mainmenu/plugins/manage plugins.
Is clangd_client listed. See image below.
Is codecompletion disabled? Is clangd_client enabled?
--- End quote ---
1) My default compiler is mingw64
2) 64bit C++ (I use 64 bit version of everything whenever possible, just cuz of the paranoia that things might not work)
3) Yes it's same as displayed in the image
(about the nightly build, I haven't tried April 1st built yet.)
--- End quote ---
Good , then we're both on the same page.
So now, remove the old December CodeBlocks and download the April one as noted in my last post.
We'll start from there to straighten thing out.
Oh, BTW be sure to close and restart CB after disabling CodeCompletion and re-enabling Clangd_client.
Else all sorts of weirdness happens.
kakas:
hmm. I haven't actually moved the compiler inside the code blocks folder(the one that I made for nightly build). will it have any effect?
(my compile is in, C:\msys64\mingw64\bin)
I Installed the April 1st build.
I disabled "Code_Completion" and than enabled "Clangd_Client".
closed Code Blocks. restarted it again.
open up plugin manager.
And see "Clangd_Client" is disabled.
Basically no difference
Pecan:
--- Quote from: kakas on April 09, 2024, 09:14:46 pm ---hmm. I haven't actually moved the compiler inside the code blocks folder(the one that I made for nightly build). will it have any effect?
(my compile is in, C:\msys64\mingw64\bin)
I Installed the April 1st build.
I disabled "Code_Completion" and than enabled "Clangd_Client".
closed Code Blocks. restarted it again.
open up plugin manager.
And see "Clangd_Client" is disabled.
Basically no difference
--- End quote ---
Your compiler is just fine where it is.
But for the time being lets use the one in the April 1 nightly so we both are in sync with each other.
You can change it later if you wish.
The Clangd_client is not enabling itself because CB did not find a default compiler. Go to mainMenu/Setting/Compiler/Toolchain executable and set the compiler location as show in the second image below but using your compiler location of course.
Restart CB and you'll see that Clangd_client is now enabled.
Go to mainMenu/Settings/Editor/Clangd_client/C/C++ parser (the second tab) and put the location of your ...\msys64\mingw64\bin\clangd.exe into the "specify clangd executable to use" search slot. Click ok at bottom.
See the first image below.
Close and restart CB.
Important:
You have to use the clangd.exe under the mingw64 folder. Not the clang64 folder.
Using the wrong clangd.exe is what was causing all the diagnostic errors.
Now do us a favor. Open a cmd window and cd to the folder that contains your ...\msys64\mingw64\bin\clangd.exe and type: (without the quotes)
"clangd.exe --version" and tell us what it printed.
Also type: "c++.exe --version" and tell us what it printed.
Regards
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version