zoukankan      html  css  js  c++  java
  • Linux33_编译源代码,configure和prefix的概念

    传统unix应用程序设计逻辑,autoconf有一个prefix的概念。

    系统的系统库,基础工具和内核是放到一套代码树中的,
    编译这个代码,内核和核心库,工具是一同完成的,这些都被认为是操作系统的一部分。
    这些核心文件,就以根目录作为prefix。所以,/是所有操作系统核心程序的prefix。

    在这个核心之外增加新的程序,构成一个发行版,这个发行版增加的程序就用/usr作为prefix。

    你把发行版安装好了,安装发行版之外应用程序,那些程序通常用/opt, /srv作为prefix。

    但如果你自己从源代码开始编译一个应用程序,这些程序是专门向你这个Site编译的,这种情况下,默认的prefix是/usr/local。

    Filesystem Hierarchy Standard尝试把这个定义为一个标准;

    当然你也可以将自己编译的程序直接放在$HOME/local中。

    所以一般安装的时候要配置一下prefix。

    ./configure --prefix=/usr/local     

    // configure就是一个脚本。./configure是很多程序源代码安装的第一步,主要作用是对即将安装的程序进行配置。检查当前环境是否满足安装所需的依赖关系。对于源码包来说是这样的。如果是二进制包,那么解压后就能使用了。

    'configure'脚本有大量的命令行选项。对不同的软件包来说,这些选项可能会有变化,但是许多基本的选项是不会改变的。

    带上'--help'选项执行'configure'脚本可以看到可用的所有选项。尽管许多选项是很少用到的,但是当你为了特殊的需求而configure一个包时,知道他们的存在是很有益处的。
    ./configure的作用是检测系统配置,生成makefile文件,以便你可以用make和make install来编译和安装程序。
    执行./configure的话要到你解压好的目录中去。


    make  //这条命令是编译


    make install //这条是安装

    然后对应的文件就会被安装到对应的目录中去;

    理解configure脚本:https://www.jianshu.com/p/81916fba741c

    使用configure脚本:https://www.cnblogs.com/lifexy/p/7866453.html

    make 和 make install 的区别:https://www.jianshu.com/p/c70afbbf5172



  • 相关阅读:
    作业2(5)
    作业2(7)
    作业2(4)
    作业2(3)
    作业2(1)
    作业3(5)
    作业3(6)
    实验7综合练习(4)
    实验7综合练习(2)
    计算成绩
  • 原文地址:https://www.cnblogs.com/grooovvve/p/13326630.html
Copyright © 2011-2022 走看看