ubuntu
c++ launch.json
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
// preLaunchTask value is tasks.json label
// program value Binary file path and tasks.json -o binary Path consistency
// args value is a parameter passed to the main function
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) Launch",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/bin/${fileBasenameNoExtension}",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"preLaunchTask": "build",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
}
]
}
c++ tasks.json
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"label": "build",
"type": "shell",
"command": "g++",
"args": ["-g", "${file}", "-std=c++11", "-o", "bin/${fileBasenameNoExtension}",
"-I", "/usr/local/opencv420cuda102/include",
"-I", "/usr/local/opencv420cuda102/include/opencv4",
"-I", "/usr/local/opencv420cuda102/include/opencv4/opencv2",
"-L", "/usr/local/opencv420cuda102/lib",
"-l", "opencv_core",
"-l", "opencv_imgproc",
"-l", "opencv_imgcodecs",
"-l", "opencv_video",
"-l", "opencv_ml",
"-l", "opencv_highgui",
"-l", "opencv_objdetect",
"-l", "opencv_flann",
"-l", "opencv_imgcodecs",
"-l", "opencv_photo",
"-l", "opencv_videoio"
]
}
]
}
c_cpp_properties.json
{
"configurations": [
{
"name": "Linux",
"includePath": [
"${workspaceFolder}/**",
"/usr/local/opencv420cuda102/include",
"/usr/local/opencv420cuda102/include/opencv4",
"/usr/local/opencv420cuda102/include/opencv4/opencv2",
"/usr/include"
],
"defines": [],
"compilerPath": "/usr/bin/g++",
"cStandard": "gnu11",
"cppStandard": "gnu++14",
"intelliSenseMode": "clang-x64"
}
],
"version": 4
}
windows下vscode配置opencv
launch.json
{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "g++.exe - 生成和调试活动文件",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"miDebuggerPath": "C:\\mingw64\\bin\\gdb.exe",
"setupCommands": [
{
"description": "为 gdb 启用整齐打印",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "C/C++: g++.exe build active file"
}
]
}
tasks.json
{
"version": "2.0.0",
"tasks": [
{
"type": "shell",
"label": "C/C++: g++.exe build active file",
"command": "g++",
"args": [
"-g",
"${file}",
"-std=c++11",
"-fexec-charset=GBK",
"-finput-charset=UTF-8",
"-I",
"C:/SDK/opencv/include/",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe",
"-L",
"C:/SDK/opencv/bin/",
"-llibopencv_calib3d349d",
"-llibopencv_core349d",
"-llibopencv_dnn349d",
"-llibopencv_features2d349d",
"-llibopencv_flann349d",
"-llibopencv_highgui349d",
"-llibopencv_imgcodecs349d",
"-llibopencv_imgproc349d",
"-llibopencv_ml349d",
"-llibopencv_photo349d",
"-llibopencv_shape349d",
"-llibopencv_superres349d",
"-llibopencv_video349d",
"-llibopencv_videoio349d",
],
"options": {
"cwd": "${workspaceFolder}"
},
"problemMatcher": [
"$gcc"
],
"group": "build"
}
]
}
windows下需要到setting.json里更新头文件或者在C/C++.json去添加
opencv报错
opencv lib*.so* not fond
解决方法
sudo vim /etc/ld.so.conf.d/opencv.conf
在opencv.conf里添加lib路径,然后
sudo ldconfig -v | grep opencv
cudnn软连接报错
/sbin/ldconfig.real: /usr/local/cuda/targets/x86_64-linux/lib/libcudnn_cnn_infer.so.8 不是符号链接
/sbin/ldconfig.real: /usr/local/cuda/targets/x86_64-linux/lib/libcudnn_cnn_train.so.8 不是符号链接
/sbin/ldconfig.real: /usr/local/cuda/targets/x86_64-linux/lib/libcudnn_ops_train.so.8 不是符号链接
/sbin/ldconfig.real: /usr/local/cuda/targets/x86_64-linux/lib/libcudnn_adv_train.so.8 不是符号链接
/sbin/ldconfig.real: /usr/local/cuda/targets/x86_64-linux/lib/libcudnn_adv_infer.so.8 不是符号链接
/sbin/ldconfig.real: /usr/local/cuda/targets/x86_64-linux/lib/libcudnn.so.8 不是符号链接
/sbin/ldconfig.real: /usr/local/cuda/targets/x86_64-linux/lib/libcudnn_ops_infer.so.8 不是符号链接
解决方法
sudo ln -sf /usr/local/cuda/targets/x86_64-linux/lib/libcudnn_adv_infer.so.8.8.0 /usr/local/cuda/targets/x86_64-linux/lib/libcudnn_adv_infer.so.8
sudo ln -sf /usr/local/cuda/targets/x86_64-linux/lib/libcudnn_cnn_infer.so.8.8.0 /usr/local/cuda/targets/x86_64-linux/lib/libcudnn_cnn_infer.so.8
sudo ln -sf /usr/local/cuda/targets/x86_64-linux/lib/libcudnn_cnn_train.so.8.8.0 /usr/local/cuda/targets/x86_64-linux/lib/libcudnn_cnn_train.so.8
sudo ln -sf /usr/local/cuda/targets/x86_64-linux/lib/libcudnn_ops_train.so.8.8.0 /usr/local/cuda/targets/x86_64-linux/lib/libcudnn_ops_train.so.8
sudo ln -sf /usr/local/cuda/targets/x86_64-linux/lib/libcudnn_adv_train.so.8.8.0 /usr/local/cuda/targets/x86_64-linux/lib/libcudnn_adv_train.so.8
sudo ln -sf /usr/local/cuda/targets/x86_64-linux/lib/libcudnn.so.8.8.0 /usr/local/cuda/targets/x86_64-linux/lib/libcudnn.so.8
sudo ln -sf /usr/local/cuda/targets/x86_64-linux/lib/libcudnn_ops_infer.so.8.8.0 /usr/local/cuda/targets/x86_64-linux/lib/libcudnn_ops_infer.so.8
8.8.0为你的cudnn的版本
具体查看版本
ls /usr/local/cuda/targets/x86_64-linux/lib/libcudnn_adv_train.so.8*
显示
/usr/local/cuda/targets/x86_64-linux/lib/libcudnn_adv_train.so.8 /usr/local/cuda/targets/x86_64-linux/lib/libcudnn_adv_train.so.8.8.0