这几天一直在搞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. C# XML 去xmlns:xsd和xmlns:xsi属性

    public static XElement WithoutNamespaces(this XElement element) { if (element == null) return null; ...

  2. 生成wsdl代理c#代码

    C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\wsdl.exe /l:CS /out:d:\ws ...

  3. Windows 10开发基础——指针事件和操作事件(一)

    主要内容: 1.指针事件 2.操作事件 1.指针事件 指针事件由各种活动输入源引发,包括触摸.触摸板.笔和鼠标(它们替代传统的鼠标事件).指针事件基于单一输入点(手指.笔尖.鼠标光标),但不支持基于速 ...

  4. Visual Studio 2017报表RDLC设计器与工具箱中Report Viewer问题

    原文:VS2017入门 RDLC入门之01 本系列所有内容为网络收集转载,版权为原作者所有. VS2017初始安装后和VS2015一样,都没有ReportDesigner/ReportViewer R ...

  5. 避免用户重复点击按钮(使用Enable:=False,消息繁忙时会有堵塞的问题,只能改用Sleep)

    // 现象描述://    用户点击按钮后程序开始繁忙工作,这时候用户不知道是否成功,就继续点几次//    采用Enalbe = false ... = true的方式发现还会触发点击,分析原因如下 ...

  6. 完全卸载mysql免安装版

    使用以下命令 reg delete "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\eventlog\Application\MySQL& ...

  7. YxdIocp包含有支持大并发的TCP服务组件、HTTP服务组件、UDP服务组件、WebSocket服务组件

    Delphi Windows IOCP 通讯模型封装,基于DIOCP.YxdIocp包含有支持大并发的TCP服务组件.HTTP服务组件.UDP服务组件.WebSocket服务组件,和TCP.UDP等基 ...

  8. java之jdbc学习——QueryRunner

    jdbc是ORM框架的基础,但将数据库中的表映射到java对象,并进行增删改查,并不是一件简单的事情. 涉及到jdbc.注解和反射的一些基础知识. 以下内容来自网友的分享,并做了一些增减,作为笔记记录 ...

  9. C# 设计模式,工厂方法

    C#工厂方法 using System; using System.Collections.Generic; using System.Linq; using System.Text; using S ...

  10. vue注意项

    1.通过官方vue生命周期图,总结其中的几个钩子函数 var vm = new Vue({ el: '#app', data: { }, beforeCreate() { alert('组件刚刚被创建 ...