I've only found one other question asking exactly this with no answer, so I'm asking here.
I am running Ubuntu 18.04, VSCode latest version.
I have installed OpenCV 3.4.9 from source to /usr/local
When I import cv2 and then try to type "cv2.", VSCode is unable to autocomplete. The only suggestions it makes are "bootstrap" and "os". I have no problem with autocomplete with any other module like numpy or rospy, or even when OpenCV is installed from pip. It seems the issue is only when OpenCV is installed from source.
I have tried both the language server as well as Jedi. I have also tried various linters.
Any help is appreciated.
Why is VS Code suggestions not working? If you're coding in JavaScript or TypeScript and finds that VSCode IntelliSense does work but does not behave properly, it's likely that you've selected the wrong language mode. TypeScript and JavaScript share the same language service, so you need to select the right language.
You can trigger IntelliSense in any editor window by typing Ctrl+Space or by typing a trigger character (such as the dot character (.)
I have encountered the same problem. Hope this helps
Its because the package is not installed in the usual location but in a custom location. This problem could be resolved by some configuration changes. Configure the settings.json to include the custom location for autocompletion to work. Add path to python.autoComplete.extraPaths
STEP 1:Identify the location of the custom library/module.
STEP 2: Make the necessary changes in the User Settings or Workspace Settings file.
Here’s a sample entry in the User Settings (Mention the exact location of the module)
"C:/Program Files (x86)/---/---",
"C:/Program Files (x86)/---/---/lib" ]
In case of Ubuntu 20.04 and manual installation of OpenCV4, the python library path to be added to extraPaths is "/usr/local/lib/python3.8/dist-packages/cv2/python-3.8". Assuming -D CMAKE_INSTALL_PREFIX=/usr/local
was used during cmake
Ex: "settings.json" (VScode)
{
"python.analysis.memory.keepLibraryAst": true,
"python.defaultInterpreterPath": "/usr/bin/python3",
"python.autoComplete.extraPaths": [
"/usr/local/lib/python3.8/dist-packages/cv2/python-3.8"
]}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With