赞
踩
Visual Studio Code下载安装:Ubuntu20.04在vsCode配置opencv_ubuntu vscode配置opencv-CSDN博客
出现的错误(版本不对):dpkg: 依赖关系问题使得 code 的配置工作不能继续
在ubuntu16上用dkpg安装vscode 出现错误_dpkg: 依赖关系问题使得 code 的配置工作不能继续: code 依赖于 libc6 (>= -CSDN博客
学习资料:
Visual Studio Code快速编译运行:安装扩展Code Runner,(设置里面输入run in terminal,勾选),在程序界面会出现“三角形符号”,直接点击运行即可。
关闭生成的tempCodeRunnerFile.cpp文件,设置里面搜索Code-runner:Ignore Selection勾选
C++编译运行头文件与源文件之间的关联(多个源文件之间的关联,编写头文件的注意点):我终于把C++多文件编程理解透彻了_c++ 文件多好还是合并好-CSDN博客
C++调用opencv正确的编译方式(新人小白只会用,学到哪里就去翻知识,救了老命):Linux下编写C++代码引用opencv头文件,编译报错 undefined reference to `cv::imread的解决办法_使用opencvc++库就报错找不到cv::imread和cv::imwrite函数-CSDN博客
CMakeLists.txt编写参考:【CMake】CMakeLists.txt的超傻瓜手把手教程(附实例源码)_【cmake】cmakelists.txt的超傻瓜手把手教程(附实例源码)-CSDN博客
配置参考:
参考官网:Get Started with C++ on Linux in Visual Studio Code
重新安装的visual studio code需要配置C++程序需要的库路径,在./vscode/c_cpp_properties.json:Ubuntu20.04在vsCode配置opencv_ubuntu vscode配置opencv-CSDN博客
单个文件编译
ctrl+shift+P:C/C++编辑配置(UI);
编辑器路径:(下载的MinGW中的gcc.exe路径);
IntelliSense模式(选择gcc-X64(legacy));
生成.vscode文件夹(.vscode\c_cpp_properties.json)
终端——》配置任务——》选择C/C++:gcc.exe生成活动文件——》生成tasks.json文件
C++程序文件点击终端——》运行生成任务——》生成文件名.exe文件
ctrl+` (esc按键下)打开终端,显示该程序文件的路径信息,在该终端下输入.\文件名.exe完成编译
在创建多个文件夹时,可共享.vscode文件夹,无需再进行相应的配置
多个文件编译
当文件夹中包含多个.cpp文件,想同时编译,修改tasks.json文件里面的${file},${fileDirname}\\${fileBasenameNoExtension}.exe
${file}修改为:
${workspaceFolder}\\*.cpp构建当前工作区中的所有C文件
${fileDirname}\\${fileBasenameNoExtension}.exe修改为:
${workspaceFolder}\\${workspaceRootFolderName}.exe
终端——》运行生成任务——》ctrl+`——》终端输入文件名.\文件名.exe文件
编译错误
一、In function"int main() “XXXX”was not declared in this scope
解决办法:没有在main函数之前声明XXXX函数,void XXXX()。(也可以写入头文件中,在源文件把头文件包含进去)具体原因可参考:我终于把C++多文件编程理解透彻了_c++ 文件多好还是合并好-CSDN博客
二、undefined reference to `cv::imread(cv::String const&, int)'
error: undefined reference to `cv::imread(cv::String const&, int)' 解决方法-CSDN博客俄
自己留作学习使用(《视觉SLAM十四讲》)
一、程序编译生成可执行程序文件:
1.g++编译
指定输出文件名:g++ -o (输出的指定文件名) 程序名cpp。
例:g++ -o helloslam helloSLAM.cpp(《视觉slam十四讲》中的例子)
2.cmake编译程序(cmake处理工程文件之间的关系,make调用g++编译程序)
编写CMakeLists.txt文件—>切换到当前目录下,cmake . —>make—>运行可执行文件
新增一个可执行文件,只需要在CMakeLists.txt中添加add_executable命令即可。
更常见的编译cmake工程的做法(切换到当前的工作目录下):(cmake产生的中间文件生成在build文件夹中,与源码分开)
mkdir build
cd build
cmake ..
make
二、库文件
带有main函数的源文件编译成可执行程序,其他的编译成库文件。
一些代码打包成一个东西供其他程序调用,这个东西叫做库。
用cmake生成库,并使用库中的函数:
1)书写一个库函数.cpp(没有main函数)
2)CMakeLists.txt加入add_library(可执行文件名 源程序名)
3)cmake编译整个工程,build文件夹生成.a文件—>库(3,4可选)
Linux中库文件分为静态库和共享库。静态库.a,共享库.so。所有库都是一些函数打包后的集合,差别在于静态库每次被调用都会生成一个副本,共享库只有一个副本。
4)add_library(可执行文件名 SHARED 源程序名),编译成共享库。
调用库:头文件.h+库文件.cpp
头文件:声明函数,其他文件需要调用该函数,只需包含该头文件即可。
5)编写头文件.h
6)编写.cpp文件调用函数
7)CMakeLists.txt添加可执行文件的生成命令,链接到我们使用的库上
add_executable()生成调用函数.cpp的可执行文件
target_link_libraries()可执行程序链接到库文件。
错误1:未将程序链接到库文件上
程序代码由头文件和源文件组成库由头文件和库文件组成
一、visual studio code 终端显示很奇怪(例如p p p p ):
解决办法:设置->用户->文本编辑器->字体,只保留monospace(设置如上图所示)
二、在visual studio code运行python程序,终端报错找不到命令‘python3':(python3没有链接到)
解决办法(我用的是方法二):解决报错:找不到命令 “python”,您的意思是 “python3” 命令来自 Debian 软件包 python3 的几种方式_找不到命令 “python”,您的意思是: “python3” 命令来自 debian 软件包 py-CSDN博客
三、VSCode打开程序之后报错:加载web视图时出错:Erroe:Could not register service workers:InvalidStateErroe:Failed to register a ServiceWorker:The document is in a valid state
解决办法:Ubuntu终端输入 killall code (有可能是有其他进程导致了问题)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。