Linux使用源代码安装软件

使用源代码安装软件

相关命令

configure 
cmake
make
make install

步骤:

1,下载源代码,解压

2,创建build目录,存放cmake,make编译的文件

3,sudo make install

4,make clean 删除临时文件

config

一个shell脚本,位于源文件的根目录中。

作用:检查系统中是否有编译这个程序依赖的其它库之类的东西

参数:prefix 参数——指定目标安装路径,必须指定,否则不知道默认安装到哪里,不方便以后的管理

$:sudo ./configure --prefix=/usr/local/xxx_software

cmake

CMake是一种跨平台编译工具,比make更为高级,使用起来要方便得多

CMake主要是编写CMakeLists.txt文件,然后用cmake命令将CMakeLists.txt文件转化为make所需要的makefile文件,最后用make命令编译源码生成可执行程序或共享库(so(shared object))。

因此CMake的编译基本就两个步骤:

$:cmake
$:make
新建build目录

cmake 指向CMakeLists.txt所在的目录,例如cmake … 表示CMakeLists.txt在当前目录的上一级目录。cmake后会生成很多编译的中间文件以及makefile文件,所以一般建议新建一个新的目录,专门用来编译。

$:mkdir build  #创建build目录
$:cd build    #进入build目录
$:cmake ..   # CMakeList.txt所在目录
$:make   # 生成的一边文件以及makefile文件在build目录

文件目录结构如下:

.
├── build
├── CMakeLists.txt
├── include
│   └── b.h
└── src
    ├── b.c
    └── main.c
为什么要用cmake

cmake就可以更加简单的生成makefile文件给make用。cmake还有其他功能,可以跨平台生成对应平台能用的makefile,不用再自己去修改了。

什么时候用cmake

cmake根据CMakeList.txt生成makefile,所以源目录里有CMakeList.txt的时候,先用cmake命令

make

make工具可以看成是一个智能的批处理工具,它本身并没有编译和链接的功能,而是用类似于批处理的方式—通过调用makefile文件中用户指定的命令来进行编译和链接的。

make install

将程序安装至系统中。如果原始码编译无误,且执行结果正确,便可以把程序安装至系统预设的可执行文件存放路径。如果用bin_PROGRAMS宏的话,程序会被安装至/usr/local/bin这个目录。

这个过程应该会很快。

你可能感兴趣的:(ubuntu)