Ubuntu安装CMake

cmake所做的事其实就是告诉编译器如何去编译链接源代码。你也许想问不是有makefile吗,为什么还要它?这里就牵涉到跨平台问题。而且其语法也简单。

  1. 卸载已经安装的旧版的CMake[非必需]
apt-get autoremove cmake
  1. 文件下载解压:
wget https://cmake.org/files/v3.20/cmake-3.20.0-linux-x86_64.tar.gz
  1. 解压:
tar zxvf cmake-3.20.0-linux-x86_64.tar.gz
  1. 查看解压后目录:
tree -L 2 cmake-3.20.0-linux-x86_64
cmake-3.20.0-linux-x86_64
├── bin
│   ├── ccmake
│   ├── cmake
│   ├── cmake-gui
│   ├── cpack
│   └── ctest
├── doc
│   └── cmake
├── man
│   ├── man1
│   └── man7
└── share
    ├── aclocal
    ├── applications
    ├── bash-completion
    ├── cmake-3.20
    ├── emacs
    ├── icons
    ├── mime
    └── vim

15 directories, 5 files

bin下面有各种cmake家族的产品程序。

  1. 创建软链接

注: 文件路径是可以指定的, 一般选择在/opt 或 /usr 路径下, 这里选择/opt

sudo mv cmake-3.20.0-linux-x86_64 /opt/cmake-3.20.0
sudo ln -sf /opt/cmake-3.20.0/bin/* /usr/bin/
  1. 然后执行命令检查一下:
>>>cmake --version
cmake version 3.20.0

CMake suite maintained and supported by Kitware (kitware.com/cmake).
>>>cmake-gui

OK。现在在Ubuntu 18.04上的cmake本安装成功。编写简单的cmake

  1. 使用cmake首先得有个CMakeList.txt文件,你需要把配置信息写在该文件中,然后通过cmake去处理该文件。将设有下面一个main.cpp文件
    //main.cpp文件
#include
using namespace std;
int main(){
    cout<<"hello world!"<

这时候我们就可以写个如下的CMakeList.txt文件
#cmake最小需要版本

cmake_minimum_required(VERSION 2.8)

#项目名字

project(HELLOWORLD)

#包含原程序,即把给定目录下的源程序复制给变量DIR_SRC

aux_source_directory(DIR_SRC ./)

#生成程序

add_executable(helloworld ${DIR_SRC})

然后执行如下命令

$mkdir build
$cd build
$cmake ..
$make
$./helloworld

这样就编译好程序并运行。

添加静态库或者动态库

而假设我们程序用到了在/usr/lib下的一个静态库libmy.a,那就需要添加如下两个命令
#库所在位置

link_directories(/usr/lib)

#程序编译时候链接库

target_link_libraries(helloworld my)

你可能感兴趣的:(Linux,cmake,ubuntu,ubuntu,linux,运维)