Intellisense disabled in new C++ extension

I installed the new in-house c++ extension. I am running in a dev container running linux on an arm64 Mac. It looks like maybe some of the executables are not present for this platform:

From the c/c++ output log:

Warning: Expected file /root/.cursor-server/extensions/anysphere.cpptools-2.0.0-linux-arm64/bin/cpptools is missing.

Warning: Expected file /root/.cursor-server/extensions/anysphere.cpptools-2.0.0-linux-arm64/bin/cpptools-srv is missing.

Warning: Expected file /root/.cursor-server/extensions/anysphere.cpptools-2.0.0-linux-arm64/bin/cpptools-wordexp is missing.

intelliSenseEngine is disabled

In that directory I see:

-rw-r–r-- 1 root root 582 May 29 18:33 common.json
-rw-r–r-- 1 root root 299 May 29 18:33 linux.clang.arm.json
-rw-r–r-- 1 root root 308 May 29 18:33 linux.clang.arm64.json
-rw-r–r-- 1 root root 298 May 29 18:33 linux.clang.x64.json
-rw-r–r-- 1 root root 289 May 29 18:33 linux.clang.x86.json
-rw-r–r-- 1 root root 266 May 29 18:33 linux.gcc.arm.json
-rw-r–r-- 1 root root 275 May 29 18:33 linux.gcc.arm64.json
-rw-r–r-- 1 root root 267 May 29 18:33 linux.gcc.x64.json
-rw-r–r-- 1 root root 256 May 29 18:33 linux.gcc.x86.json
-rw-r–r-- 1 root root 282 May 29 18:33 macos.clang.arm.json
-rw-r–r-- 1 root root 291 May 29 18:33 macos.clang.arm64.json
-rw-r–r-- 1 root root 281 May 29 18:33 macos.clang.x64.json
-rw-r–r-- 1 root root 272 May 29 18:33 macos.clang.x86.json
-rw-r–r-- 1 root root 249 May 29 18:33 macos.gcc.arm.json
-rw-r–r-- 1 root root 258 May 29 18:33 macos.gcc.arm64.json
-rw-r–r-- 1 root root 248 May 29 18:33 macos.gcc.x64.json
-rw-r–r-- 1 root root 239 May 29 18:33 macos.gcc.x86.json
drwxr-xr-x 15 root root 4096 May 29 18:33 messages
-rw-r–r-- 1 root root 87 May 29 18:33 windows.clang.arm.json
-rw-r–r-- 1 root root 87 May 29 18:33 windows.clang.arm64.json
-rw-r–r-- 1 root root 87 May 29 18:33 windows.clang.x64.json
-rw-r–r-- 1 root root 87 May 29 18:33 windows.clang.x86.json
-rw-r–r-- 1 root root 53 May 29 18:33 windows.gcc.arm.json
-rw-r–r-- 1 root root 55 May 29 18:33 windows.gcc.arm64.json
-rw-r–r-- 1 root root 53 May 29 18:33 windows.gcc.x64.json
-rw-r–r-- 1 root root 53 May 29 18:33 windows.gcc.x86.json
-rw-r–r-- 1 root root 266 May 29 18:33 windows.msvc.arm.json
-rw-r–r-- 1 root root 291 May 29 18:33 windows.msvc.arm64.json
-rw-r–r-- 1 root root 314 May 29 18:33 windows.msvc.x64.json
-rw-r–r-- 1 root root 292 May 29 18:33 windows.msvc.x86.json

During the install I got popups about installing clangd, which is now in the container and appears to be functioning.

Ah, I see from yesterday this may relate to getting clangd setup, trying to work that one out, our project compilation is somewhat involved.

Hi! These logs are expected, we use clangd to provide lsp support. Intellisense for c++ is not supported within Cursor.

Got it all working, bit of a research exercise to get clangd doing its thing though. One colleague had it offer to download clangd and I had to do it manually, not sure why.

Can you share what you had to do to get clangd working please? It’s detecting my compile_commands.json, but not linking my ADTs correctly.

1 Like

Our dev containers are Ubuntu 22, the version of clangd there is old, putting this in the docker file for the container got us to a recent version:

RUN curl -fsSL https://apt.llvm.org/llvm-snapshot.gpg.key |
gpg --dearmor | sudo tee /usr/share/keyrings/llvm-archive-keyring.gpg > /dev/null
&& echo “deb [signed-by=/usr/share/keyrings/llvm-archive-keyring.gpg] Index of /jammy/ llvm-toolchain-jammy-19 main” |
sudo tee /etc/apt/sources.list.d/llvm.list > /dev/null
&& apt-get update
&& apt-get install -y clangd-19 clang-format-19
&& apt-get clean
&& update-alternatives --install /usr/bin/clangd clangd /usr/bin/clangd-19 100
&& update-alternatives --set clangd /usr/bin/clangd-19
&& update-alternatives --install /usr/bin/clang-format clang-format /usr/bin/clang-format-19 100
&& update-alternatives --set clang-format /usr/bin/clang-format-19

I would have to guess what an ADT is, abstract data type? That would sound like a clangd is not finding all the definitions in your project, which could relate to the -I directives in the json output.

Steve

Ah, ok. This sounds more like a clangd problem then than a Cursor devcontainer problem. It’s finding my library files fine, it’s not linking to classes I’ve defined myself locally however. Thanks for that, will keep digging.

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.