• 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



  • 相关阅读:
    多线程之线程同步中的锁定lock、Monitor(转)
    信号同步
    窗体间传值的最佳方式
    Semaphore的理解
    推荐算法相关
    基于Spark的GBDT + LR模型实现
    基于Spark和Tensorflow构建DCN模型进行CTR预测
    神经网络(未完)
    互联网金融借款违约预测
    Python3基础复习
  • 原文地址:https://www.cnblogs.com/grooovvve/p/13326630.html
Copyright © 2020-2023  润新知