1. 基本使用方法
最基础的方法是打开main文件,点击左边栏第4个,选择编译器(比如clang++)进行编译运行,在下方的调试控制台可以看到输出。
1.1 编译选项
task.json包含编译参数:
- 如果需要是c语言也就是gcc将task.json的command项由g++/clang改为gcc
- 如果是多文件编译,需要将task.json中args列表中的"file"项修改为"{file}"项修改为"file"项修改为"{fileDirname}/*.cpp"
- 如果网上下载的代码出现一些莫名的错误,如下图,则可能是c++版本问题,这里需要在args列表中指定c++版本:
注意要在CMakeLists.txt中设置set(CMAKE_BUILD_TYPE "Debug")
后,这样调试时才能在断点处停下;正式发布时把这一行删掉即可。
1.2 运行选项
从网上下载EAX文件夹,参考https://github.com/nagata-yuichi/GA-EAX。给出的编译命令如下:
g++ -o jikken -O3 main.cpp env.cpp cross.cpp evaluator.cpp indi.cpp rand.cpp kopt.cpp sort.cpp -lm
我们首先用vscode打开下载的GA-EAX-MAIN,在左边栏第4个运行和调试中,点击创建task.json,自动添加一个c++配置,并从左边改成右边:
由于需要自定义输入,所以再创建一个launch.json文件,添加一个lldb启动配置,将启动参数添加进来:
再点击运行即可进入调试模式。
2. 需要make和CMake的程序
如果看到软件安装过程为:mkdir build && cd build && cmake … && make && sudo make install,则需要用cmake,会自动提示安装工具(自己的电脑上要先安装cmake,比如在Mac上使用brew install命令安装)。
2.1 编译选项
首先添加Cmake tools插件
然后按如图添加task.json,这个是用来配置编译选项的:
将内容改为,args里面的内容可以自行修改。注意label,在后面有用:
{
"version": "2.0.0",
"tasks": [
{
"type": "shell",
"label": "CMake: 生成",
"command": "/usr/bin/clang++",
"args": [
"-g",
"${file}",
"-o",
"${fileDirname}/${fileBasenameNoExtension}"
],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
2.2 运行选项
同上,launch.json是用来配置运行过程的文件,下面是简单例子,使用preLaunchTask调用带有label的任务,可以在每次运行时预先执行一下编译:
{
"version": "0.2.0",
"configurations": [
{
"name": "C/C++ Runner: Debug Session",
"type": "lldb",
"request": "launch",
"args": [],
"cwd": "${fileDirname}",
"program": "${fileDirname}/${fileBasenameNoExtension}",
"preLaunchTask": "CMake: 生成"
}
]
}
然后点击左边栏第四各的图标,再点击绿色箭头,就开始运行launch.json的配置,开始编译和debug程序了。
在intel电脑上可以使用cppdbg插件,LKH算法包进行调试的示例如下,args里面可以填写需要调试的测试案例: