这篇文章主要在下面这篇文章的基础上,先是实现了一键编译和一键运行两个单个功能,最后又进一步使用Clion自带的Custom Build Application实现编译且运行一键实现。

https://blog.csdn.net/he_yang_/article/details/96644480

Clion采用cmake来构建项目并运行,对于单个cpp文件的编译并不支持。网上的一些方法都是通过修改CmakeLists.txt文件来实现的, 每创建一个文件就得修改一次文件, 很麻烦。下面介绍的方法,可以最终实现一键编译且运行。

1.配置External Tools

首先从setting里找到External Tools,点红圈的+号,如果你之前没有添加过快捷键,这里应该是空的,我已经添加好了。

      

Program里面是你自己mingw中bin文件夹下g++程序的路径,找到自己的就好(如我的是C:\mingw17\MinGW\bin\g++.exe)

其他地方完全按照图里的填写。

 2 配置快捷键

3.测试

创建一个工程,添加一个c++源文件,命名为a.cpp,写一点打印a!的代码。

先按Alt+Z(编译)

再按Alt+X(运行)

出现上面的结果就是成功了。这样已经很方便了,但是还是不完美,下面的方法可以达到一键编译且运行的效果。(上面的内容基本上是copy上面提到的博文的,下面的是我的原创)

1配置

点击右上方绿色三角左边的方框,下拉的Edit Configurations

点击左上角的+号

首先是Target, 点击Configure Custom Build Targets

点击+号,右边第一个选MinGW,第二个下拉选择我们之前配置的C++编译,Clean可以不用管

完了点击Ok

然后是Excutable, 下拉点击Select other

选择工程目录下,刚刚用上面方法生成的a.exe文件

最后点击Ok,完成。

2测试

首先选中我们刚才配置的 “编译运行 自定义”, 然后点击绿色三角形运行

成功。

换一个文件,b.cpp,点击运行

成功!

如何使用Jetbrains Clion 在一个工程里 编译单个C++源文件 (实现一键编译且运行)的更多相关文章

  1. C语言学习_C如何在一个文件里调用另一个源文件中的函数

    问题 C如何在一个文件里调用另一个源文件中的函数,如题. 解决办法 当程序大了代码多了之后,想模块化开发,不同文件中存一点,是很好的解决办法,那我们如何做才能让各个文件中的代码协同工作呢?我们知道,m ...

  2. Altium Designer同一个工程里不同原理图导入到不同的PCB

    问题: 在用Altium Designer进行PCB工程设计时,有时一个工程里可能不止一块PCB,比如,一个设备里有主板和扩展板或者按键板等等,这时就需要在一个工程里添加多个PCB文件.如图: 我们知 ...

  3. C# 使用命令行编译单个CS文件

    编译单个CS文件. 1.编译   File.cs   以产生   File.exe:       csc   File.cs     2.编译   File.cs   以产生   File.dll:  ...

  4. VC工程里,如何编译汇编语言的文件

    最近老是有朋友问,VC工程里,如何编译汇编语言的文件,接下来就说一下步骤: 1.将汇编语言文件,加入到工程里: 2.在Solution Explorer窗口中右键单击Visual C++项目,选择Bu ...

  5. 向STM32 CUBE MX 生成的工程里移植stemwin

    我参考这个文章做的: http://bbs.armfly.com/read.php?tid=1678 这次添加的是没有os的版本 另外跟用不用hal库没关系 1. keil自带了emwin 2. 用c ...

  6. VS工程里的文件都是啥?如何打包? 2015-03-04

    打完补充:以下内容全部是我一家之言,只是愿意分享,内容如有不妥还请见谅. ====================================================== 刚才接收了一份代 ...

  7. ios 向工程里添加Fonts

    ios 向工程里添加Fonts 1.网上搜索字体文件(后缀名为.ttf,或.odf),假如你加入的字体为微软雅黑 2.把字体库导入到工程的resouce中 3.然后在你的工程的Info.plist文件 ...

  8. 在 C++Builder 工程里调用 DLL 函数

    调用 Visual C++ DLL 给 C++Builder 程序员提出了一些独特的挑战.在我们试图解决 Visual C++ 生成的 DLL 之前,回顾一下如何调用一个 C++Builder 创建的 ...

  9. 在 C++Builder 工程里使用 Visual C++ DLL(3个工具) good

    译者序: 第一次读这篇文章是在 2001 年 10 月,帮我解决了一点小问题.本来不好意思翻译,因为英语水平实在太差.最近发现不少网友在问在 C++Builder 的工程里调用 Visual C++  ...

随机推荐

  1. concat()用法

       SELECT school_code,`name`,phone from student WHERE login_name REGEXP 'ning$'LIMIT 10; concat() SE ...

  2. css 超出部分显示省略号 汇总

    单行: 加宽度 overflow: hidden; text-overflow:ellipsis; white-space: nowrap; 多行: display: -webkit-box; -we ...

  3. 使用html2canvas实现屏幕截图

    相关文件(vue3.0) <script src="https://cdn.jsdelivr.net/bluebird/latest/bluebird.js">< ...

  4. openlayers之框选放缩DragZoom(vue项目)

    环境vue3.0项目 最初是以npm i ol -s方式安装的ol,import方式导入引用,但是实际使用的时候一直报ol is not defined,最后选择在HTML以script标签引入ol, ...

  5. urlencode编/解码

    from urllib.parse import urlencode, quote, unquote # urlencode方法参数是字典 body = { "content": ...

  6. uboot dcc

    arch\arm\lib crt0.S 1.设置sp为CONFIG_SYS_INIT_SP_ADDR include/configs/xxx.h #define CONFIG_SYS_INIT_SP_ ...

  7. IDEA部署Spring-boot到Docker容器

    一.准备工作 idea安装Docker插件 centos7系统安装docker 二.打开docker远程端口 1. 编辑docker.service文件 vim /usr/lib/systemd/sy ...

  8. 移动端布局基础viewport

    划重点 手机屏幕相对着桌面浏览器小,传统网页的设计在手机上体验糟糕 Apple 在移动版 Safari 中定义了 viewport meta 标签(如果没记错最早提出的话),用于创建一个虚拟窗口(la ...

  9. 【NOIP2016提高A组模拟10.15】最大化

    题目 分析 枚举两个纵坐标i.j,接着表示枚举区域的上下边界, 设对于每个横坐标区域的前缀和和为\(s_l\),枚举k, 显然当\(s_k>s_l\)时,以(i,k)为左上角,(j,k)为右下角 ...

  10. BZOJ 4597: [Shoi2016]随机序列 线段树 + 思维

    Description 你的面前有N个数排成一行.分别为A1, A2, … , An.你打算在每相邻的两个 Ai和 Ai+1 间都插入一个加号或者 减号或者乘号.那么一共有 3^(n-1) 种可能的表 ...