ubuntu下如何安装cmake?cmake简单使用详解

前言

最近突然想将开发环境转移到Linux上,同时也准备阅读些github上的开源代码,发现现在开源项目一般都是用cmake管理的。所以就在自己的虚拟机上捣鼓。一开始我也不知道cmake是啥,后来通过折腾也大概知道其作用,它所做的事其实就是告诉编译器如何去编译链接源代码。你也许想问不是有makefile吗,为什么还要它?这里就牵涉到跨平台问题。在windows平台下是通过project文件去管理这些的,如果不用cmake,那我们为window和linux系统就要写对应的project文件和makefile文件,这无疑是一件繁琐的事,而我们只要编写一次cmake,就可以用在各个平台,而且其语法也简单。这就是所谓的“write once,use everywhere”。

安装过程

1.首先去官网(https://cmake.org/download/)下载安装包,选择“XX.tar.gz”源码安装包

2.输入如下命令

$tar -zxvf xx.tar.gz

$./bootstrap

$make

$make install

输入以上命令后就已经可以在ubuntu上安装好cmake。

编写简单的cmake

使用cmake首先得有个CMakeList.txt文件,你需要把配置信息写在该文件中,然后通过cmake去处理该文件。

将设有下面一个main.cpp文件

//main.cpp文件

#include<iostream>

using namespace std;

int main(){

cout<<"hello world!"<<endl;

return 0;

}

这时候我们就可以写个如下的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)

(0)

相关推荐

  • Torch7在Ubuntu下的安装与配置教程详解(torch入门使用)

    Torch7的本系列教程的主要目的是介绍Torch的入门使用.今天首先分享一下Torch7的安装.(在Ubuntu14.04安装torch7) 为什么选择Torch Torch的目标是在建立科学算法的 ...

  • 【光盘安装WIN7系统】步骤详解

    [光盘安装WIN7系统]步骤详解 操作方法 01 目前win7重装系统的方法主要包括:光盘安装WIN7系统.虚拟光驱安装WIN7系统.U盘安装WIN7系统.软件重装系统,在硬盘上直接安装WIN7系统等 ...

  • DOS下windows系统查看wifi密码图文详解

    DOS下windows系统查看wifi密码的方法步骤如下所示: 首先,按win+R键,win键如下 弹出框中输入cmd 在弹出界面输入 netsh wlan show profiles 你可以看到你链 ...

  • Linux下的多线程编程和fork()函数详解

     一.fork()函数 在操作系统的基本概念中进程是程序的一次执行,且是拥有资源的最小单位和调度单位(在引入线程的操作系统中,线程是最小的调度单位).在Linux系统中 创建进程有两种方式:一是由操作 ...

  • word下划线怎么打 word下划线打出来方法步骤图文详解

    word下划线怎么打出来呢?打下划线其实分成几种情况,每种方法的需求各不一样,你需要打很短的下划线还是一行下划线,还是一个下划线呢?今天小编给大家分别演示几种用word打下划线的方法.  word下划 ...

  • ubuntu下如何安装cmake

    最近突然想将开发环境转移到Linux上,同时也准备阅读些github上的开源代码,发现现在开源项目一般都是用cmake管理的.所以就在自己的虚拟机上捣鼓.一开始我也不知道cmake是啥,后来通过折腾也 ...

  • 如何在Ubuntu下搭建tftp服务器(最简单的安装配置)

    今天开始调试arm的板子,要通过tftp下载到板子上,所以又要配置tftp服务器,真的烦死了… (本人酷爱装系统,所以经常都要搞配置) 因为之前已经在Ubuntu下搭建过很多次tftp服务器了,但是一 ...

  • CentOS系统下软件包的制作方法和过程详解

    总的情况下Linux下软件安装主要有三种方式: 一种是源码安装,需要用户自己手动编译 另一种是RPM包(RedHat Linux Packet Manager),通过RPM命令就可以实现安装 还有一种 ...

  • WebStorm安装破解及汉化详解

    WebStorm是JetBrains 推出的一款强大的HTML5编辑工具,拥有丰富的代码快速编辑,可以智能的补全代码.代码格式化.html提示以及代码检查和快速修复等,支持不同浏览器的提示,同时也是一 ...