这几天一直在搞suse下的mplyaer、ffmpeg等源码编译安装,总结出源码软件安装三部曲,网上称为经典三部曲。

这三步分别为:

1. ./configure [options]

2. make

3. make install

具体地说:

1. 先下载源码。这里本人一直偏向于在官网上直接下载源码。因为个人觉得一切源码还是官网比较正规,谁知道其他地方下载的东西有没有被加入什么乱七八糟的东西;

2. 源码一般以bz2或者是gz形式的包。包里一般有readme或者是install文档,这里面有关于本源码该如何编译安装,可以仔细看看。有时候包里没有这两个文档,但是会有一个doc目录,该目录下有针对不同OS平台的安装文档,一样可以细读;

3. 将源码拷到linux上,解压;

4. 第一步就是configure配置。配置项还是很多的,可以通过./configure --help查看有哪些配置项。很多源码的readme文档直接指出,一般使用./configure就可以看了。我个人喜欢将源码安装到指定的位置,使用./configure --prefix=我安装的目录。这样做的好处就是我知道将软件装在哪里了,将来还有他用;

5. 第二步,使用make开始编译。这一步是根据上一步configure的结果来编译的;

6. 第三步,使用make install开始安装,这一步结束后,软件就被安装到我指定的目录下;

注意:有时候使用系统自带的make时,编译会报出一些错误,原因是系统自带的make版本太老了,可以装个新的,官网可以再百度上搜下。

这里再补充几点:

1. 上面make后,可以使用make clean将编译参数清空,接着重新make;

2. 上面configure发现错误,可以使用make distclean,将configure参数全部清空,接着重新./configure-->make;

LINUX安装源码软件经典三部曲的更多相关文章

  1. Linux 安装源码软件

    linux下,源码的安装一般由3个步骤组成:配置(configure).编译(make).安装(make install) 过程中用到configure --prefix  --with:其中--pr ...

  2. linux 安装源码后的操作 ldconfig

    https://blog.csdn.net/cqkxboy168/article/details/8657487 知识点: .如果使用 ldd 命令时没有找到对应的共享库文件和其具体位置,可能是两种情 ...

  3. 【JDK】Linux安装源码包JDK完整步骤

    [JDK]Linux安装源码包JDK完整步骤 1.检查一下系统中的jdk版本 [root@localhost software]# java -version 显示: openjdk version ...

  4. linux安装源码包指定安装目录

    当下载完一个源码包并且解压后 文件夹下会有一个重要的文件configure configure 文件是一个可执行的脚本文件,它将检查目标系统的配置和可用功能,比如一些检查依赖或者启用禁用一些模块,它有 ...

  5. linux安装-----源码安装步骤--zlib软件安装

    该zlib 可以对许多其他软件的编译代码起着优化 压缩作用. 解压压缩包: .tar.gz------------->tar zxvf 压缩包.tar.gz .tar.bz2---------- ...

  6. linux安装源码包报错

    报错代码1如下: [root@xiaoming nginx-]# ./configure --prefix=/soft/nginx- checking for OS + Linux -.el7.x86 ...

  7. linux安装源码jdk

    第一步: 传输jdk到服务器上可以用xhsell,也可以用ftp 第二步:解压文件 tar -xzvf jdk-7u80-linux-x64.tar.gz 第三步:配置环境变量 输入即可 注意:修改J ...

  8. (转载)Linux如何编译安装源码包软件

    一.什么是源码包软件: 顾名思义,源码包就是源代码的可见的软件包,基于Linux和BSD系统的软件最常见:在国内源可见的软件几乎绝迹:大多开源软件都是国外出品:在国内较为出名的开源软件有fcitx;l ...

  9. linux的基本操作(RPM包或者安装源码包)

    RPM包或者安装源码包 在windows下安装一个软件很轻松,只要双击.exe的文件,安装提示连续“下一步”即可,然而linux系统下安装一个软件似乎并不那么轻松了,因为我们不是在图形界面下.所以你要 ...

随机推荐

  1. Gradle编译失败 generating the main dex list

    编译打包的时候出现这个错误,信息很少. * What went wrong: Execution failed for task ':camCard_Asia_Trunk:transformClass ...

  2. socket上http协议应用(使用socket进行http通信的例子,准备好报头以后,简单read/write就可以了)

    前几天看socket本有点晕, 好不容易弄明白了,才发现公司服务器用的是http的. 找了好久也没发现linux下直接用http的api, 不过今日偶然发现了使用socket进行http通信的例子, ...

  3. Qt在Windows上的调试器CDB安装与配置

    如果安装Qt时使用的是Visual Studio的预编译版,那么很有可能就会缺少调试器(Debugger),而使用MSVC的Qt对应的原生调试器是CDB(对应MinGW的Qt使用GDB调试器).本文介 ...

  4. 微信小程序把玩(二十七)audio组件

    原文:微信小程序把玩(二十七)audio组件 音频播放已经封装的很好!只需配合属性设置即可! (method和data配合使用) 主要属性: wxml <audio action="{ ...

  5. Android零基础入门第22节:ImageView的属性和方法大全

    原文:Android零基础入门第22节:ImageView的属性和方法大全 通过前面几期的学习,TextView控件及其子控件基本学习完成,可以在Android屏幕上显示一些文字或者按钮,那么从本期开 ...

  6. Standard C 语言标准函数库速查(彩色的函数列表,十分清楚)

    Standard C 语言标准函数库速查 (Cheat Sheet) wcstombs 函数说明 #include <stdlib.h> size_t mbstowcs(wchar_t * ...

  7. 去除文件属性(使用SetFileAttributes API函数)

    FILE_ATTRIBUTE_ARCHIVE 文件存档(备份或移动时会对文件做标记).FILE_ATTRIBUTE_ENCRYPTED 加密(对文件来说是内容加密,对目录来说是对将来新建的文件默认为加 ...

  8. redis的下载及使用

    1.下载 方式一(通过yum) yum install redis -y 方式二(通过源码编译) (1)下载源码包 wget http://download.redis.io/releases/red ...

  9. MySQL批量更新一个字段的值为随机数

    $arr = []; $str = ''; for ($i=0; $i < 2660; ++$i) { $str .= " WHEN ".$i." THEN &qu ...

  10. CentOS7.5上FTP服务的安装与使用

    1.FTP简介 1.1FTP:File Transfer Protocol 文件传输协议 FTP是用于在网络上进行文件传输的一套标准协议,使用客户/服务器模式.它属于网络传输协议的应用层.文件传送(f ...