Linux下c++运行总结
本文最后更新于:2024年5月29日 下午
1. Linux下C++编程实践总结
1.1 C++程序编译
- 编写一个文本文件:helloSLAM.cpp
1 |
|
- 将文本文件编译成可执行程序(g++)
1 |
|
- 运行编译完成后的程序
1 |
|
g++基本语法:
1g++ [选项] 准备编译的文件 [选项] [目标文件]
1
$ g++ helloSLAM.cpp -o helloSLAM # 将 helloSLAM 编译成名为 helloSLAM 的可执行文件
1.2 cmake
由于g++一次只能编译一个程序,当在面对一个大型工程项目时,此种编译方法无疑会带来一个巨大的工作量,cmake会更加高效。在一个cmake工程中,会使用cmake命令生成一个makefile文件,然后用make命令根据makefile文件的内容编译整个工程。
1 |
|
cmake将会按照 CMakeLists.txt 文件生成一个makefile文件,使用make命令编译工程
1 |
|
cmake过程中会生成一些中间文件,当发布代码时,我们不希望中间文件一同发布出去,一个个删除太麻烦。更好的做法是将这些中间文件放在一个中间目录中,编译成功后把中间目录删除即可。更常见的做法是:
1 |
|
1.3 库文件
C++工程中,并不是所有的代码都会编译成可执行文件。只有main函数的文件才会生成可执行程序。另一部分代码,我们将其打包成一个东西,供其他程序调用。这个东西称为库(Library)。
1 |
|
在 CMakeLists.txt 里添加如下内容:
1 |
|
Linux中库文件分为静态库和动态库,静态库以 .a 作为后缀,共享库以 .so 结尾。
生成共享库:
1 |
|
在使用库文件之前,需要定义头文件。下面编写 libhello 的库文件:
1 |
|
调用库:
1 |
|
在 CMakeLists.txt 里添加如下内容:
1 |
|
2. ubuntu创建桌面图标
首先,进入 applications 目录下,并创建一个 clion.desktop 文件,使用 gedit 进行编辑:
1 |
|
在文件中添加如下代码:
1 |
|
Linux下c++运行总结
https://northfourta.github.io/2021/03/13/Linux%E7%BC%96%E7%A8%8B%E5%AE%9E%E8%B7%B5%E6%80%BB%E7%BB%93/