zoukankan      html  css  js  c++  java
  • 手动编译安装源码包

    对编译安装软件包的认识:

    1. 源文件需要先进行编译,生成二进制程序,之后需要链接,生成可执行程序;

    2. 在编译的时候需要指定各种参数,为了简化安装者编译的难度,需要用到make管理工具,使用make命令需要用到makefile文件;

    3. 因为写makefile文件也需要时间,为了减少软件作者的工作量,有了automake,它会自动生成makefile.in文件;

    4. 为了能够实现对软件的定制,所以aotomake需要有一个配置文件来对软件进行定制,这个配置文件是autoconf;

    5. autoconf的执行需要使用 ./configure 命令来执行,目的是让用户选定编译特性,并检查编译环境。

    综上所述,编译安装软件包的步骤为:

    1.    ./configure   :生成makefile.in文件;

    2.    make:编译并生成二进制文件和配置文件;

    3.    make install :复制相应的文件到相应的目录下;

    4.    添加安装的软件的sbin到环境变量path(/etc/profile)下,方面直接使用命令打开程序;

    5.     如果需要导出安装的库文件,则需要在/etc/ld.so.conf.d/中创建以.conf为后缀名的文件,之后把要增添的路径直接写到此文件中(系统默认搜索库文件的路径为/lib,/usr/lib ),然后通知系统重新搜索库文件,命令为:ldconfig -v;

    6.    增添头文件搜寻路径,使用链接来进行(系统默认搜寻路径为:/usr/include)

    7.    添加帮助文件man文件(系统默认搜寻路径为:/usr/share/man,是在/etc/man.config这个文件中配置的)


    下面是对这三个命令的说明(常用的):


    一。./configure 

    --help:获取帮助

    --prefix=/usr/local/file_name:指定软件安装路径

    --sysconfdir=/etc/file_name:指定软件的配置文件的安装路径

    --conf-path=/etc/file_name :指定软件的配置文件的安装路径

    --without-依赖模块:取消指定的模块的依赖关系

    二。make

    三。make install


    例子:

    安装Nginx1.4.2:


    tar xf tengine-1.4.2.tar.gz

    cd tengine-1.4.2.tar.gz

    ./configure --prefix=/usr/local/tengine --conf-path=/etc/tengine/tengine.conf

    make

    make install

    /usr/local/tengine/sbin/nginx(如果添加了环境变量,直接使用nginx即可)


    善后工作:

    1. 导入库文件

    创建/etc/ld.so.conf.d/下以 .conf为后缀的文件,使用 ldconfig -v 通知系统重新搜索库文件

    2. 导入头文件

    ln -s /usr/local/tengine/include/*  /usr/include/

    或者:ln -s /usr/local/tengine/include  /usr/include/tengine

    3. 导入帮助文件

    在/etc/man.conf中添加一条MANPATH


    netstat命令:

    -r:显示路由表

    -n:以数字格式显示

    -t:建立的tcp连接

    -u:建立的udp连接

    -l:显示监听状态的连接

    -p:显示监听指定套接字的进程的进程号及套接字


    起风了,努力生存
  • 相关阅读:
    [转载]项目风险管理七种武器之引言
    [转载]基于TFS实践敏捷-Scrum模式运用
    [转载]基于TFS实践敏捷-工作项跟踪
    [转载]TFS入门指南
    SVN — subclipse操作指引
    Java 中 方法名或类名 变更 同时 更新 所有引用的 类名或方法名 的解决方案
    Java import javax.servlet 出错
    java 中 SVN 设置所有文件及子目录 needs-lock, svn 提交时自动设置 needs-lock, 及版本不一致问题
    vmware 传输(vmdb)错误-32:pipe:read failed 解决方法
    Web.xml配置详解
  • 原文地址:https://www.cnblogs.com/StivenYang/p/8441302.html
Copyright © 2011-2022 走看看