CLion 配置,LeetCode配置,调试配置
最近因公司考试,需要刷题,因此配了CLion,真香!参考几位大佬的分享完成了配置,所以稍做一下总结。本文主要分为以下几部分:
CLion配置
- 首先,下载安装CLion
去JB公司官网下载CLion,
https://www.jetbrains.com/clion/download/#section=windows
- 下载安装MinGW
下载MinGW压缩包,链接如下:https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/
一直拉到下面的界面,然后就可以下载压缩包了,然后解压。
3.配置MinGW
配置CLion
打开CLion,左上角File-Settings-Build-Toolchains,然后点击 + 号
Environment选择MinGW,然后填入刚刚解压的MinGW64的路径:
CLion会自动填上上面的内容,点击OK,等调试的小虫子变绿就可以了。
配置LeetCode插件
1、配置Clion的代理,设置完可以check connection检测是否配置成功(输入leetcode网站)
Appearance&Behavior->System setting->http proxy
2.配置完成后,到plugin处下载leetcode 插件
3.安装完成后提示重新启动Clion,重启后出现leetcode plugin工具(setting->tools),选择leetcode url,编码方式,指定临时文件地址。输入力扣的LoginName和登陆密码。
其中几个重要选项为:
TempFilePath :设置到项目根目录。
Cutstom Temlate :自定义模板,打开。
CodeFileName :Leetcode文件名称,建议设置为 $
!
q
u
e
s
t
i
o
n
.
f
r
o
n
t
e
n
d
Q
u
e
s
t
i
o
n
I
d
−
!{question.frontendQuestionId}-
!question.frontendQuestionId−{question.titleSlug}
CodeTemplate :重点,关系到生成的文件能否一步运行,引入了项目中的库文件,包括基本的c,c++库,与别人实现的Leetcode链表与树。
而为了本地调试的方便,我的CodeTemplate设为:
${question.content}
\#include "include/headers.h"
using namespace std;
${question.code}
int main()
{
Solution s;
vector<int> data{7, 1, 5, 3, 6, 4};
//vector<int> ans = s.twoSum(data,11);
//cout << ans[0]<<ans[1]<<endl;
cout<<"Hello LeetCode"<<endl;
}
作者:zeaven
链接:https://www.jianshu.com/p/04343d6be97e
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
4.配置完成后,Clion页面最右侧出现leetcode标签。最左侧为登陆按钮,登陆后会同步leetcode刷题记录。右键题目可以进行提交
配置本地调试
安装好了leetcode,设置完插件点击打开其中一个题目后,目录如下所示:
在题目P1TwoSum.c中编写main方法,但是却没有办法运行,原因好像是必须把这个要运行的文件添加到CMakeLists.txt中,但是每个文件都去添加一下也挺麻烦的,好在有插件C/C++ Single File Execution。
安装了这个插件后,在要运行main方法的文件的空白处右击,点击最下面的Add executable for single c/cpp file,在点击前可以看到main方法左面并没有可以运行的那个小绿三角。
点击完成后,还有最后一步,进到之前的那个CMakeLists.txt文件中,可以看到插件已经帮我们把要运行main方法的那个文件添加进去了,我们只需要点击Reload changes重新加载一下就可以。
在加载完后,我们回到P1TwoSum.c文件可以发现,在main方法左面出现了小绿三角,可以运行这个main方法了:
参考博客:
https://blog.csdn.net/qq_37851532/article/details/108172009?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-0&spm=1001.2101.3001.4242
https://www.jianshu.com/p/1aa989808e15
配置远程Linux调试
Clion 远程调试:
CLion上配置 remote debug(右上角 edit configurations),配置好Linux 机器 和 端口即可(端口可随意设定1234)
Linux上yum安装gdbserver
Linux 根目录上配置 .gdbinit文件
跑ut :
Clion 上打断点
Linux 上gdbserver跑ut :gdbserver :1234 ./ut_datamodel --gtest_filter=UtDmSchema.DmSerializeAndDeSerizalizePropertySchema
Clion 上,点击右上角进入debug模式,单步调试。
跑ST (端到端调试):
1、Linux 上起 gmserver (不能 靠st 里本身的起server 功能,否则gdbserver不知道 attach 哪个进程) : gmserver -p /usr/local/file/gmserver.ini
2、linux 上gdbserver attach 到 server 上:gdbserver :1234 --attach `pidof gmserver`
3、Clion 上 在对应的服务端代码上 打断点 (QryExecuteInner)(不能断客户端上代码)
4、Linux 跑 对应的ST
5、Clion 上点击右上角,进入debug 模式