CLion如何在同个工程下运行多个cpp/c文件

CLion如何在同个工程下运行多个cpp/c文件

最近常用的lightly在线编辑的那个IDE一直在维修,然后自己本身又很喜欢JetBrains家的产品,就从VS code和CLion中选了CLion,但是它不能在同个工程下运行多个含有main()函数的文件,就去找了些方法,希望对你们有帮助。

1. 手动修改CmakeList.txt文件

这个主要是手动去CmakeList.txt文件下添加你新创建的c/c++文件,比如说新建了一个test.c的文件,就在CmakeList.txt下添加一条新的add_executable()语句

//这是新建工程时自动创建的
add_executable(ProjectName main.c) 
//这是新创建的text.c文件的可执行语句
add_executable(text text.c)

2. 在CmakeList.txt文件下编写自动生成程序

需要在CmakeList.txt文件下添加以下代码,文件下的前三行代码不用修改。然后需要注意的是新建的c或者c++文件的文件名不能含有中文,也不能含有‘/’,每次新建文件后都需要去右键CmakeList.txt文件然后reload Cmake Project一下

c++文件

#递归遍历所有的cpp文件
file (GLOB_RECURSE files *.cpp)
#将所有的cpp文件单独生成可执行文件
foreach (file ${files})
    string(REGEX REPLACE ".+/(.+)\\..*" "\\1" exe ${file})
    add_executable (${exe} ${file})
    message (\ \ \ \ --\ src/${exe}.cpp\ will\ be\ compiled\ to\ bin/${exe})
endforeach ()

c文件

#递归遍历所有的c文件
file (GLOB_RECURSE files *.c)
#将所有的cpp文件单独生成可执行文件
foreach (file ${files})
    string(REGEX REPLACE ".+/(.+)\\..*" "\\1" exe ${file})
    add_executable (${exe} ${file})
    message (\ \ \ \ --\ src/${exe}.c\ will\ be\ compiled\ to\ bin/${exe})
endforeach ()
### 配置与操作步骤 #### CLion 中配置并运行已下载的 C++ 文件 为了在 CLion 中成功编译和执行现有的 C++ 项目或单个源文件,需遵循特定设置流程。CLion 是一款由 JetBrains 开发的强大集成开发环境 (IDE),专为 C 和 C++ 编程设计。 #### 安装必要的工具链 确保安装了兼容版本的 GCC 或 Clang 编译器以及 CMake 构建系统。这些组件可以通过包管理器获取,在 Linux 上可能是 `apt` 或者 `yum`;对于 macOS 用户来说,则可以借助 Homebrew 来完成安装[^2]。 #### 导入现有代码到 CLion 当打开一个包含 `.cpp` 文件的新项目时,CLion 可能会自动检测项目的构建系统。如果未被识别,可以选择手动创建一个新的 CMakeLists.txt 文件来定义目标可执行程序及其依赖关系: ```cmake # CMakeLists.txt cmake_minimum_required(VERSION 3.10) project(MyCppProject) set(CMAKE_CXX_STANDARD 17) add_executable(${PROJECT_NAME} main.cpp other_file.cpp ...) ``` 上述脚本指定了最低支持的 CMake 版本、工程名称,并设定了使用的 C++ 标准(这里选择了 C++17)。最后通过 `add_executable()` 函数声明了一个名为 `${PROJECT_NAME}` 的可执行文件,它包含了多个源码文件作为输入[^3]。 #### 运行调试配置 一旦完成了基本的项目结构搭建之后,就可以利用 CLion 提供的功能来进行断点调试或是直接点击绿色三角形按钮启动应用程序。在此之前建议先检查一次 Run/Debug Configurations 设置项中的参数是否正确无误,比如工作目录路径等细节之处都应仔细核对以保证顺利执行[^4]。 关于 UnrealBuildTool 明确指出显式构造 RuntimeDependency 对象的方式已被弃用,现在可以直接将字符串形式的路径加入到运行时依赖列表之中[^1]。不过这条信息主要适用于使用 UBT 工具进行打包发布的游戏引擎内部模块间交互场景下,并不直接影响普通 C++ 应用于 CLion 下面的操作方式。
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值