Clion是一种专门为开发C以及C++所设计的跨平台IDE,能够帮助开发人员在Linux、OS X和Windows上来开发C/C++,同时它还使用智能编辑器来提高代码质量、自动代码重构并且深度整合CMake编译系统,从而提高开发人员的工作效率。
CLion不为您的代码提供其自己的项目模型,但支持以下格式:
CMake
Gradle(仅新的 Gradle C / C ++项目)
JSON编译数据库
此外,还有一个适用于CLion的第三方Bazel插件。您也可以在CLion中创建,打开和编辑非项目文件或文件夹。
您也可以在CLion中创建,打开和编辑非项目文件或文件夹
此外,您可以设置自定义构建目标,这些目标调用外部工具来执行构建和清理,并为此类目标创建自定义运行/调试配置。由于自定义目标独立于任何特定的构建系统,因此它们可以例如为编译数据库项目提供构建和运行的功能。
要在CLion中使用Makefile项目,请结合使用编译数据库和文件监视程序来监视Makefile中的更改。您可以使用自定义构建目标和自定义运行/调试配置来扩展此类项目。
下表显示了每种项目格式如何支持项目级,远程和动态分析功能(为简便起见,将编译数据库称为CompDB)。该表不包含远程GDB / gdbserver,因为它在CLion中的实现完全独立于任何项目模型。( * -适用于自定义构建目标、 ** -可用于自定义运行/调试配置)
*
**
从“欢迎”屏幕或“ 文件”菜单中 单击“ 新建项目”。
选择"C++ Executable”,表示要创建一个可执行项目,“Location”为项目存放路径;“Language standard”表示使用C++14进行开发 “Create”将会创建项目并生成相应的CMakeLists.txt文件:
要打开项目,您可以将CLion指向顶级CMakeLists.txt并选择Open as Project。
1、在“项目”树中,右键单击要向其中添加文件的文件夹,然后从上下文菜单中选择“ 新建 ”。选择所需的文件类型: 2、指定新文件的名称,类型和其他选项。对于C ++ Class,C / C ++ Source和C / C ++ Header文件模板,CLion将提示您将新文件添加到一个或多个现有CMake目标中: 如果在上一步中选择了目标,则新条目将自动添加到 CMakeLists.txt:
操作一:对于单个项目
在CMakeLists.txt文件中进行更改时,CLion会提示您重新加载项目。 重新加载项目有两种选择:
建议选择 Enable Auto-Reload
Enable Auto-Reload
操作二:对于全部项目
当然,我们可以将 Enable Auto-Reload 设置为针对所有项目的
1、转到Setting —》 Build,Execution、Depolyment —》 CMake。
在CLion中,可以使用GCC和Clang编译器。
在Windows上,提供的环境(Cygwin,MinGW或Microsoft Visual C ++)包括编译器以及其他工具。
在工具链设置或CMake配置文件设置中,有两种更改CMake项目编译器的方法。这两个选项之间的区别在于它们的范围:
1、转到Setting —》 Build,Execution、Depolyment —》 Toolchains。 2、在“ C ++编译器”或“ C编译器”字段中,指定所需安装的路径,例如:
1、转到Setting —》 Build,Execution、Depolyment —》 Cmake。 2、在CMake options字段中,通过设置CMAKE_LANG_COMPILER变量来指定编译器 :
-D CMAKE__COMPILER=[fully qualified compiler name] 该LANG部分指定了语言(C表示C,C ++表示CXX),并且您需要提供编译器的完整路径,例如: 单文件编译 为了加快开发过程,有时您可能希望编译一个文件而不构建整个项目。为此,CLion提供了“重新编译(Recompile)”操作。 (1)对于单个文件,可通过两种方式访问“重新编译”操作: 对于当前打开的文件,选择Build | 从主菜单重新编译(或按Ctrl+Shift+F9): 对于项目树中的文件,请使用右键单击菜单中的“重新编译”选项(或使用相同的Ctrl+Shift+F9快捷方式): (2)对于多个文件:在项目树中选择它们,然后使用右键菜单中的Recompile selected files选项Ctrl+Shift+F9: 请注意,当用于多个文件时,重新编译会在第一次编译失败时停止。 与常规构建一样,您可以在“ 消息工具”窗口中检查单个文件编译的结果: 如果编译失败,您将收到一条信号弹出消息: CMake安装 如果你的工作流程包括项目安装,则可以使用cmake install命令: install(TARGETS targets... [EXPORT export-name] [[ARCHIVE|LIBRARY|RUNTIME|OBJECTS|FRAMEWORK|BUNDLE|PRIVATE_HEADER|PUBLIC_HEADER|RESOURCE] [DESTINATION dir] [PERMISSIONS permissions...] [CONFIGURATIONS [Debug|Release|...]] [COMPONENT component] [OPTIONAL] [EXCLUDE_FROM_ALL] [NAMELINK_ONLY|NAMELINK_SKIP] ] [...] [INCLUDES DESTINATION [dir ...]]) 1、将安装命令放入CMakeLists.txt文件。 2、通过install命令的[DESTINATION dir]字段设置安装路径 clion2020.3开始,可以以root权限运行和调试 原文链接:https://www.evget.com/serializedetail/792 适用于项目的IntelliJ插件 这是我们针对IntelliJ,Android Studio和CLion的Bazel插件的抢先版本。 该存储库通常处于与JetBrains插件存储库中最新上传的插件匹配的状态。 有关更多信息,请参见标签。 请参阅跨JetBrains公司的产品,语言和操作系统的各种插件的支持水平。 您可以通过转到Settings -> Browse Repositories ,然后搜索Bazel在Jetbrains插件存储库中找到我们的插件。 要导入现有的Bazel项目,请选择Import Bazel Project ,然后按照项目导入向导中的说明进行操作。 详细文档可。 安装Bazel,然后为所需产品构建目标*:*_bazel_zip : bazel build //ijwb:ijwb_bazel_zip --define=ij_produ Bazel的简介 Bazel:Build and test software of any size, quickly and reliably任意大小、快速、可靠的测试软件。Bazel是google推出的一款工程编... Arduino-CLion Arduino CLion是一种基本配置,能够以简单的方式使用 CLion 对 Arduino 进行编程。 它基于项目,在 CMakeList.txt 中进行了一些调整以使其正常工作。 我们将只需要配置我们项目的几个选项,这将是包含代码的文件夹的名称,在本example ,稍后更改(如果不是单独执行)CMakeLists.txt 的第 13 行新名字。 在example/CMakeLists.txt我们还必须配置项目名称、Arduino 模型和端口。 没有必要添加我们项目的所有文件,只需包含主要的. 没有任何效果 Arduino-cmake仅适用于Arduino版本1.0.x ,请确保您使用的是此分支的版本。 如果您安装了多个版本,您可以编辑文件cmake/ArduinoToolchain.cmake以便它只需要您想要的一个。 记得之后做一 解决Bazel Sync报错 ERROR: bazel does not currently work properly from paths containing spaces ①首先在项目文件里找到CMakeLists.txt文件 ②点开以后在将add_executable( )函数改成add_executable(项目名称 要编译的文件名称)的形式 ③最后重新加载项目后就能编译并运行啦 1. 下载clion,注意女装的时候,目录不能有任何中文字体。只能英文+数字 2.破解,License Server,输入:http://xidea.online 3.激活完后,打开软件 4.安装Mingw 64位的 4.file-文件->settings设置-->build ,Execution,Deployment-->打开安装Mingw的目录 5.新建一个main.c ,内容如下 我喜欢一个文件夹下存放多个项目,所以删掉生成的CMakeList.txt、main.c和cmake-build-debug文件。新建一个List目录,并在该目录下新建CMakeList.txt 创建一个C文件进行测试 5、创建好后,提示 在List文件夹下的CMakeList.txt添加: include_directories(.) add_executable(List-List01 List01.c) //List是文件夹名称,List01.c是具体文件名称 从主菜单中选择 "文件"|"打开",打开源文件。 设置断点,并确保它们在你附加到进程后会被击中。 启动该进程。你可以在IDE之外或使用内置的终端(视图|工具窗口|终端或Alt+F12)来做。 在CLion中,从主菜单中调用运行|附 选好之后点击ok,然后open as project: 如果已经有打开的项目了,选择this window将会关闭当前打开的项目,然后将新的这个项目覆盖在该窗口。如果选择new window,则将会新开一个clion窗口。 之后会弹出项目配置页面,可以设置模式,build的路径等。 #pic_center 在界面下方cmake窗口内,可以查看是否cmake成功: 2 设置命令行 前一段时间,一直在忙框架方面的工作,偶尔也会帮业务同学去优化优化使用TensorFlow的代码,也加上之前看了dmlc/relay,nnvm的代码,觉得蛮有意思,也想分别看下TensorFlow的Graph IR、PaddlePaddle的Graph IR,上周五,看代码看的正津津有味的时候,看到某个数据竞赛群里面讨论东西,不记得具体内容,大概说的是框架的代码实现, 有几位算法大佬说看底层源码比较...
-D CMAKE__COMPILER=[fully qualified compiler name] 该LANG部分指定了语言(C表示C,C ++表示CXX),并且您需要提供编译器的完整路径,例如:
该LANG部分指定了语言(C表示C,C ++表示CXX),并且您需要提供编译器的完整路径,例如:
单文件编译 为了加快开发过程,有时您可能希望编译一个文件而不构建整个项目。为此,CLion提供了“重新编译(Recompile)”操作。 (1)对于单个文件,可通过两种方式访问“重新编译”操作: 对于当前打开的文件,选择Build | 从主菜单重新编译(或按Ctrl+Shift+F9): 对于项目树中的文件,请使用右键单击菜单中的“重新编译”选项(或使用相同的Ctrl+Shift+F9快捷方式): (2)对于多个文件:在项目树中选择它们,然后使用右键菜单中的Recompile selected files选项Ctrl+Shift+F9: 请注意,当用于多个文件时,重新编译会在第一次编译失败时停止。 与常规构建一样,您可以在“ 消息工具”窗口中检查单个文件编译的结果: 如果编译失败,您将收到一条信号弹出消息: CMake安装 如果你的工作流程包括项目安装,则可以使用cmake install命令: install(TARGETS targets... [EXPORT export-name] [[ARCHIVE|LIBRARY|RUNTIME|OBJECTS|FRAMEWORK|BUNDLE|PRIVATE_HEADER|PUBLIC_HEADER|RESOURCE] [DESTINATION dir] [PERMISSIONS permissions...] [CONFIGURATIONS [Debug|Release|...]] [COMPONENT component] [OPTIONAL] [EXCLUDE_FROM_ALL] [NAMELINK_ONLY|NAMELINK_SKIP] ] [...] [INCLUDES DESTINATION [dir ...]]) 1、将安装命令放入CMakeLists.txt文件。 2、通过install命令的[DESTINATION dir]字段设置安装路径 clion2020.3开始,可以以root权限运行和调试 原文链接:https://www.evget.com/serializedetail/792 适用于项目的IntelliJ插件 这是我们针对IntelliJ,Android Studio和CLion的Bazel插件的抢先版本。 该存储库通常处于与JetBrains插件存储库中最新上传的插件匹配的状态。 有关更多信息,请参见标签。 请参阅跨JetBrains公司的产品,语言和操作系统的各种插件的支持水平。 您可以通过转到Settings -> Browse Repositories ,然后搜索Bazel在Jetbrains插件存储库中找到我们的插件。 要导入现有的Bazel项目,请选择Import Bazel Project ,然后按照项目导入向导中的说明进行操作。 详细文档可。 安装Bazel,然后为所需产品构建目标*:*_bazel_zip : bazel build //ijwb:ijwb_bazel_zip --define=ij_produ Bazel的简介 Bazel:Build and test software of any size, quickly and reliably任意大小、快速、可靠的测试软件。Bazel是google推出的一款工程编... Arduino-CLion Arduino CLion是一种基本配置,能够以简单的方式使用 CLion 对 Arduino 进行编程。 它基于项目,在 CMakeList.txt 中进行了一些调整以使其正常工作。 我们将只需要配置我们项目的几个选项,这将是包含代码的文件夹的名称,在本example ,稍后更改(如果不是单独执行)CMakeLists.txt 的第 13 行新名字。 在example/CMakeLists.txt我们还必须配置项目名称、Arduino 模型和端口。 没有必要添加我们项目的所有文件,只需包含主要的. 没有任何效果 Arduino-cmake仅适用于Arduino版本1.0.x ,请确保您使用的是此分支的版本。 如果您安装了多个版本,您可以编辑文件cmake/ArduinoToolchain.cmake以便它只需要您想要的一个。 记得之后做一 解决Bazel Sync报错 ERROR: bazel does not currently work properly from paths containing spaces ①首先在项目文件里找到CMakeLists.txt文件 ②点开以后在将add_executable( )函数改成add_executable(项目名称 要编译的文件名称)的形式 ③最后重新加载项目后就能编译并运行啦 1. 下载clion,注意女装的时候,目录不能有任何中文字体。只能英文+数字 2.破解,License Server,输入:http://xidea.online 3.激活完后,打开软件 4.安装Mingw 64位的 4.file-文件->settings设置-->build ,Execution,Deployment-->打开安装Mingw的目录 5.新建一个main.c ,内容如下 我喜欢一个文件夹下存放多个项目,所以删掉生成的CMakeList.txt、main.c和cmake-build-debug文件。新建一个List目录,并在该目录下新建CMakeList.txt 创建一个C文件进行测试 5、创建好后,提示 在List文件夹下的CMakeList.txt添加: include_directories(.) add_executable(List-List01 List01.c) //List是文件夹名称,List01.c是具体文件名称 从主菜单中选择 "文件"|"打开",打开源文件。 设置断点,并确保它们在你附加到进程后会被击中。 启动该进程。你可以在IDE之外或使用内置的终端(视图|工具窗口|终端或Alt+F12)来做。 在CLion中,从主菜单中调用运行|附 选好之后点击ok,然后open as project: 如果已经有打开的项目了,选择this window将会关闭当前打开的项目,然后将新的这个项目覆盖在该窗口。如果选择new window,则将会新开一个clion窗口。 之后会弹出项目配置页面,可以设置模式,build的路径等。 #pic_center 在界面下方cmake窗口内,可以查看是否cmake成功: 2 设置命令行 前一段时间,一直在忙框架方面的工作,偶尔也会帮业务同学去优化优化使用TensorFlow的代码,也加上之前看了dmlc/relay,nnvm的代码,觉得蛮有意思,也想分别看下TensorFlow的Graph IR、PaddlePaddle的Graph IR,上周五,看代码看的正津津有味的时候,看到某个数据竞赛群里面讨论东西,不记得具体内容,大概说的是框架的代码实现, 有几位算法大佬说看底层源码比较...
为了加快开发过程,有时您可能希望编译一个文件而不构建整个项目。为此,CLion提供了“重新编译(Recompile)”操作。
(1)对于单个文件,可通过两种方式访问“重新编译”操作:
(2)对于多个文件:在项目树中选择它们,然后使用右键菜单中的Recompile selected files选项Ctrl+Shift+F9:
请注意,当用于多个文件时,重新编译会在第一次编译失败时停止。
与常规构建一样,您可以在“ 消息工具”窗口中检查单个文件编译的结果: 如果编译失败,您将收到一条信号弹出消息:
如果你的工作流程包括项目安装,则可以使用cmake install命令:
install(TARGETS targets... [EXPORT export-name] [[ARCHIVE|LIBRARY|RUNTIME|OBJECTS|FRAMEWORK|BUNDLE|PRIVATE_HEADER|PUBLIC_HEADER|RESOURCE] [DESTINATION dir] [PERMISSIONS permissions...] [CONFIGURATIONS [Debug|Release|...]] [COMPONENT component] [OPTIONAL] [EXCLUDE_FROM_ALL] [NAMELINK_ONLY|NAMELINK_SKIP] ] [...] [INCLUDES DESTINATION [dir ...]]) 1、将安装命令放入CMakeLists.txt文件。 2、通过install命令的[DESTINATION dir]字段设置安装路径 clion2020.3开始,可以以root权限运行和调试 原文链接:https://www.evget.com/serializedetail/792 适用于项目的IntelliJ插件 这是我们针对IntelliJ,Android Studio和CLion的Bazel插件的抢先版本。 该存储库通常处于与JetBrains插件存储库中最新上传的插件匹配的状态。 有关更多信息,请参见标签。 请参阅跨JetBrains公司的产品,语言和操作系统的各种插件的支持水平。 您可以通过转到Settings -> Browse Repositories ,然后搜索Bazel在Jetbrains插件存储库中找到我们的插件。 要导入现有的Bazel项目,请选择Import Bazel Project ,然后按照项目导入向导中的说明进行操作。 详细文档可。 安装Bazel,然后为所需产品构建目标*:*_bazel_zip : bazel build //ijwb:ijwb_bazel_zip --define=ij_produ Bazel的简介 Bazel:Build and test software of any size, quickly and reliably任意大小、快速、可靠的测试软件。Bazel是google推出的一款工程编... Arduino-CLion Arduino CLion是一种基本配置,能够以简单的方式使用 CLion 对 Arduino 进行编程。 它基于项目,在 CMakeList.txt 中进行了一些调整以使其正常工作。 我们将只需要配置我们项目的几个选项,这将是包含代码的文件夹的名称,在本example ,稍后更改(如果不是单独执行)CMakeLists.txt 的第 13 行新名字。 在example/CMakeLists.txt我们还必须配置项目名称、Arduino 模型和端口。 没有必要添加我们项目的所有文件,只需包含主要的. 没有任何效果 Arduino-cmake仅适用于Arduino版本1.0.x ,请确保您使用的是此分支的版本。 如果您安装了多个版本,您可以编辑文件cmake/ArduinoToolchain.cmake以便它只需要您想要的一个。 记得之后做一 解决Bazel Sync报错 ERROR: bazel does not currently work properly from paths containing spaces ①首先在项目文件里找到CMakeLists.txt文件 ②点开以后在将add_executable( )函数改成add_executable(项目名称 要编译的文件名称)的形式 ③最后重新加载项目后就能编译并运行啦 1. 下载clion,注意女装的时候,目录不能有任何中文字体。只能英文+数字 2.破解,License Server,输入:http://xidea.online 3.激活完后,打开软件 4.安装Mingw 64位的 4.file-文件->settings设置-->build ,Execution,Deployment-->打开安装Mingw的目录 5.新建一个main.c ,内容如下 我喜欢一个文件夹下存放多个项目,所以删掉生成的CMakeList.txt、main.c和cmake-build-debug文件。新建一个List目录,并在该目录下新建CMakeList.txt 创建一个C文件进行测试 5、创建好后,提示 在List文件夹下的CMakeList.txt添加: include_directories(.) add_executable(List-List01 List01.c) //List是文件夹名称,List01.c是具体文件名称 从主菜单中选择 "文件"|"打开",打开源文件。 设置断点,并确保它们在你附加到进程后会被击中。 启动该进程。你可以在IDE之外或使用内置的终端(视图|工具窗口|终端或Alt+F12)来做。 在CLion中,从主菜单中调用运行|附 选好之后点击ok,然后open as project: 如果已经有打开的项目了,选择this window将会关闭当前打开的项目,然后将新的这个项目覆盖在该窗口。如果选择new window,则将会新开一个clion窗口。 之后会弹出项目配置页面,可以设置模式,build的路径等。 #pic_center 在界面下方cmake窗口内,可以查看是否cmake成功: 2 设置命令行 前一段时间,一直在忙框架方面的工作,偶尔也会帮业务同学去优化优化使用TensorFlow的代码,也加上之前看了dmlc/relay,nnvm的代码,觉得蛮有意思,也想分别看下TensorFlow的Graph IR、PaddlePaddle的Graph IR,上周五,看代码看的正津津有味的时候,看到某个数据竞赛群里面讨论东西,不记得具体内容,大概说的是框架的代码实现, 有几位算法大佬说看底层源码比较...
install(TARGETS targets... [EXPORT export-name] [[ARCHIVE|LIBRARY|RUNTIME|OBJECTS|FRAMEWORK|BUNDLE|PRIVATE_HEADER|PUBLIC_HEADER|RESOURCE] [DESTINATION dir] [PERMISSIONS permissions...] [CONFIGURATIONS [Debug|Release|...]] [COMPONENT component] [OPTIONAL] [EXCLUDE_FROM_ALL] [NAMELINK_ONLY|NAMELINK_SKIP] ] [...] [INCLUDES DESTINATION [dir ...]]) 1、将安装命令放入CMakeLists.txt文件。 2、通过install命令的[DESTINATION dir]字段设置安装路径
1、将安装命令放入CMakeLists.txt文件。 2、通过install命令的[DESTINATION dir]字段设置安装路径
clion2020.3开始,可以以root权限运行和调试 原文链接:https://www.evget.com/serializedetail/792 适用于项目的IntelliJ插件 这是我们针对IntelliJ,Android Studio和CLion的Bazel插件的抢先版本。 该存储库通常处于与JetBrains插件存储库中最新上传的插件匹配的状态。 有关更多信息,请参见标签。 请参阅跨JetBrains公司的产品,语言和操作系统的各种插件的支持水平。 您可以通过转到Settings -> Browse Repositories ,然后搜索Bazel在Jetbrains插件存储库中找到我们的插件。 要导入现有的Bazel项目,请选择Import Bazel Project ,然后按照项目导入向导中的说明进行操作。 详细文档可。 安装Bazel,然后为所需产品构建目标*:*_bazel_zip : bazel build //ijwb:ijwb_bazel_zip --define=ij_produ Bazel的简介 Bazel:Build and test software of any size, quickly and reliably任意大小、快速、可靠的测试软件。Bazel是google推出的一款工程编... Arduino-CLion Arduino CLion是一种基本配置,能够以简单的方式使用 CLion 对 Arduino 进行编程。 它基于项目,在 CMakeList.txt 中进行了一些调整以使其正常工作。 我们将只需要配置我们项目的几个选项,这将是包含代码的文件夹的名称,在本example ,稍后更改(如果不是单独执行)CMakeLists.txt 的第 13 行新名字。 在example/CMakeLists.txt我们还必须配置项目名称、Arduino 模型和端口。 没有必要添加我们项目的所有文件,只需包含主要的. 没有任何效果 Arduino-cmake仅适用于Arduino版本1.0.x ,请确保您使用的是此分支的版本。 如果您安装了多个版本,您可以编辑文件cmake/ArduinoToolchain.cmake以便它只需要您想要的一个。 记得之后做一 解决Bazel Sync报错 ERROR: bazel does not currently work properly from paths containing spaces ①首先在项目文件里找到CMakeLists.txt文件 ②点开以后在将add_executable( )函数改成add_executable(项目名称 要编译的文件名称)的形式 ③最后重新加载项目后就能编译并运行啦 1. 下载clion,注意女装的时候,目录不能有任何中文字体。只能英文+数字 2.破解,License Server,输入:http://xidea.online 3.激活完后,打开软件 4.安装Mingw 64位的 4.file-文件->settings设置-->build ,Execution,Deployment-->打开安装Mingw的目录 5.新建一个main.c ,内容如下 我喜欢一个文件夹下存放多个项目,所以删掉生成的CMakeList.txt、main.c和cmake-build-debug文件。新建一个List目录,并在该目录下新建CMakeList.txt 创建一个C文件进行测试 5、创建好后,提示 在List文件夹下的CMakeList.txt添加: include_directories(.) add_executable(List-List01 List01.c) //List是文件夹名称,List01.c是具体文件名称 从主菜单中选择 "文件"|"打开",打开源文件。 设置断点,并确保它们在你附加到进程后会被击中。 启动该进程。你可以在IDE之外或使用内置的终端(视图|工具窗口|终端或Alt+F12)来做。 在CLion中,从主菜单中调用运行|附 选好之后点击ok,然后open as project: 如果已经有打开的项目了,选择this window将会关闭当前打开的项目,然后将新的这个项目覆盖在该窗口。如果选择new window,则将会新开一个clion窗口。 之后会弹出项目配置页面,可以设置模式,build的路径等。 #pic_center 在界面下方cmake窗口内,可以查看是否cmake成功: 2 设置命令行 前一段时间,一直在忙框架方面的工作,偶尔也会帮业务同学去优化优化使用TensorFlow的代码,也加上之前看了dmlc/relay,nnvm的代码,觉得蛮有意思,也想分别看下TensorFlow的Graph IR、PaddlePaddle的Graph IR,上周五,看代码看的正津津有味的时候,看到某个数据竞赛群里面讨论东西,不记得具体内容,大概说的是框架的代码实现, 有几位算法大佬说看底层源码比较...