Ubuntu下Cmake编译C++程序Helloworld

1、首选新建工程目录

1
mkdir helloworld

2、新建文件目录

1
2
3
4
5
6
7
cd helloworld
mkdir bin
mkdir lib
mkdir src
mkdir include
mkdir build
touch CMakeLists.txt

各文件夹的作用:

执行命令之后的工程目录:

3、进入Src目录,新建源文件

1
2
3
cd src
touch main.cpp
touch helloworld.cpp

4、返回上级目录,进入include目录,新建头文件

1
2
cd ../include/
touch helloworld.h

5、对源文件和头文件进行编写并保存

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
//  main.cpp
#include <helloworld.h>
int main()
{
    helloworld obt;
    obt.outputWord();
    return 0;
}
 
//  helloworld.cpp
#include "helloworld.h"
void helloworld::outputWord()
{
    std::cout << "hello world!" << std::endl;
}
 
//  helloworld.h
#ifndef HELLOWORLD_H_
#define HELLOWORLD_H_
#include <iostream>
class helloworld
{
public:
    void outputWord();
};
#endif

结果如下图:

6、编写CMakeLists.txt文件

①cmake最低版本以及工程名称

1
2
cmake_minimum_required(VERSION 2.8)
project(helloworld)

②设置编译方式(“debug”与“Release“)

1
SET(CMAKE_BUILD_TYPE Release)

③设置可执行文件与链接库保存的路径

1
2
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)
set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib)

④设置头文件目录使得系统可以找到对应的头文件

1
2
3
include_directories(
${PROJECT_SOURCE_DIR}/include
)

⑤选择需要编译的源文件,凡是要编译的源文件都需要列举出来

1
add_executable(helloworld src/helloworld.cpp src/main.cpp)

结果如下图:

7、编译程序

1
2
3
cd build
cmake ..
make

8、查看编译结果

9、运行程序

1
./../bin/helloworld

运行结果如下图:

感谢博主

作者:HaijianYang
欢迎任何形式的转载,但请务必注明出处。
限于本人水平,如果文章和代码有表述不当之处,还请不吝赐教。

posted @   HaijianYang  阅读(2639)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示