VS Code调教笔记 on Mac OS
Python-OpenCV
- 在终端使用homebrew 安装
python3
和opencv3
。
1 | ➜ ~ brew install python3 |
- 查看python和opencv的版本。(由于OS X系统自带python2,所以后面会出问题)
1 | ➜ ~ python3 --version |
在VS Code的扩展中安装
Python
和Code Runner
。Code Runner
是一个方便编译运行的一个插件。使用
Code Runner
右键RunCode,发现输出存在问题。原因是Code Runner
不是使用的python3,而是使用 系统自带的python2。1
[Running] python -u "/Users/yi/Documents/Python-opencv/blur.py"
解决方法:VS Code ➜ 首选项 ➜ 设置 ➜ 用户区 / 工作区(按照自己的情况选择) ➜ 扩展 ➜ Run Code configuration ➜ 找到Executor Map ➜ 在settings.json中编辑。详见Code Runner的说明文档关于configuration描述
1
2
3"code-runner.executorMap": {
"python": "/usr/local/bin/python3"
}修改之后运行得到:
1
[Running] /usr/local/bin/python3 "/Users/yi/Documents/Python-opencv/blur.py"
在.py文件中使用cv2的函数:imread, imshow等,会报错。这是由于VS Code中python的语法检查工具pylint无法识别cv2的函数。
1
2Module 'cv2' has no 'imread' member pylint(no-member)
Module 'cv2' has no 'imshow' member pylint(no-member)解决方法:VS Code ➜ 首选项 ➜ 设置 ➜ 用户区 / 工作区(按照自己的情况选择) ➜ 扩展 ➜ Python ➜ Python › Linting: Pylint Args ➜ 在settings.json中加入:
1
"python.linting.pylintArgs": ["--generate-members"]
C/C++
OS X已经安装XCode
在VS Code的扩展中安装
C/C++
和C/C++ Clang Command Adapter
。按F5进行调试,需要选择gcc/clang++/…,我使用的是clang++。如果调试没用问题,会在终端显示:
1
终端将被任务重用,按任意键关闭。
使用
Code Runner
在输出窗口中可以输出C/C++的结果,但是无法进行输入。所以需要进行设置修改:VS Code ➜ 首选项 ➜ 设置 ➜ 用户区 / 工作区(按照自己的情况选择) ➜ 扩展 ➜ Run Code configuration ➜ 找到Run In Terminal 并勾选。再使用
Code Runner
会在终端运行,可以进行输入。遇到的问题:
1
2
3找不到任务“clang++ build active file”
preLaunchTask“clang++ build active file”已终止,退出代码为 1。
运行 preLaunchTask“clang++ build active file”后存在错误。最开始以为是没有配置好环境,查了半天,后来发现是程序写的有问题,没有编译通过,只不过以前用vs没见过这种方式的错误提示。
程序写的没问题的话,再次调试就会显示:终端将被任务重用,按任意键关闭。配置clang支持C++ 11(2020.3 update)
1
2列表初始化vector报错:
error: non-aggregate type 'vector<string>' cannot be initialized with an initializer list.1
2
3
4
5
6
7#终端
vim ~/.zshrc
最末行添加: alias g++='g++ -std=c++11'
source ~/.zshrc
#vscode:Code->Preferences->Settings, Clang: Cflags、Clang: Cxxflags增加C++11 的配置
- Clang: Cflags: "-std=c11"
- Clang: Cxxflags: "-std=c++11"