一、Linux基本命令:
*注:像我一样的新手推荐使用Ubuntu系统,可选择18.04或20.04版本。 *
(1)cd:用于切换路径,打开目录或文件夹
mkdir:创建文件夹
e.g.
cd #用来切换\创建目录、文件夹
#e.g.
cd DeskTop
mkdir file1 #在桌面上创建file1文件夹
cd .. #返回上一级目录,即返回桌面
cd . #当前目录
(2)touch 创建文件、vim或者gedit编辑文件
cd Desktop
cd file1
touch main.cpp #在file1目录下建立main.cpp文件
vim main.cpp #编辑完后,esc键,:wq保存并退出;:q不保存并退出
(3)编译c++文件
gcc main.cpp -o hello
./hello
(4)ls #查看当前目录下的文件
e.g.
cd Desktop
ls
二、cmake指令
cmake 是工程上被广泛使用的一种c++工程管理工具,一个工程文件往往会包含许多源文件和头文件,编译指令将非常繁琐,cmake较好的解决了这一问题。
1. 编辑 main.cpp
cd Desktop
cd hello
gedit main.cpp
#include <stdio.h>
#include <stdlib.h>
int main()
{
printf("******hello linux******\n");
return 0;
}
2. 编辑 库函数 hello.cpp
#include <iostream>
using namespace std;
void printHello()
{
cout<<"Hello SLAM"<<endl;
}
3. 编辑库函数的头文件
#ifndef LIBHELLOSLAM_H_
#define LIBHELLOSLAM_H_
void printHello();
#endif
4. 编辑调用程序 UseHello.cpp
#include "hello.h"
// 使用 libHelloSLAM.h 中的 printHello() 函数
int main( int argc, char** argv )
{
printHello();
return 0;
}
**5. 编辑 CMakeLists.txt
这个文件是告诉cmake要对这个文件夹(本例为hello文件夹,cmake . 代表当前文件夹)做什么。
#make 最低版本
cmake_minimum_required( VERSION 2.8 )
声明一个 cmake 工程
project( HelloSLAM )
设置编译模式
set( CMAKE_BUILD_TYPE "Debug" ) //这表示是调试模式
添加一个可执行程序
语法:add_executable( 程序名 源代码文件 )
add_executable(helloslam main.cpp)
#add_library 添加库
add_library(hi hello.cpp)
add_executable( UseHello UseHello.cpp )
将库文件链接到可执行程序上
target_link_libraries( UseHello hi )
6. 建立次文件夹,放置编译产生的一堆文件
如果直接在hello文件夹下编译,则hello文件夹会产生大量文件,而在他的子目录下编译,可以解决这一问题,并方便删除。
mkdir build
cmake ..
make
./UseHello
./helloslam
此时输出:
Hello SLAM
******hello linux******
本文内容来自于本人的bilibili专栏,点击此处跳转