最近在用CLion在本地环境联系使用libmemcached的API,在主工程中新建了一个文件,该文件的主要功能就是生成辅助数据集。为了方便,想让它在同一个工程中编译生成单独的可执行文件。
CLion使用的自动化编译工具是CMake。为了生成多个可执行文件,就是修改CMakelists.txt文件,很简单,直接上图吧。
步骤
- 工程内新建一个cpp文件。
- 打开CMakelists.txt文件并修改文件。
- 修改build的配置,该配置指定每次build是编译生成所有可执行文件,还是只生成一个。
新建文件前,CMakelists.txt文件如下:
打开菜单Run->Edit configurations
当前我的工程可以生成两个可执行文件。
新建a.cpp文件,编写Hello World程序
IDE会将新增的文件链接到某一个可执行文件中,上图中表示a.cpp文件会和make_data.cpp一起编译生成op_make_data可执行文件。当然这里会报错,因为有两个main函数。
将a.cpp单独写一行,生成aaaa可执行文件
再次打开菜单Run->Edit configurations
这里多出一个aaaa的选项。
很重要的一点,我被这里浪费了很多时间
被红色框起来的下拉框用来指定编译生成哪个可执行文件。当前我的工程可以生成三个可执行文件(aaaa, op_make_data, op_memcached),假设选中aaaa,则点击编译按钮时,只会编译生成aaaa文件。选在Build All,则说明生成所有可执行文件。