当前位置: 移动技术网 > 科技>操作系统>Linux > 编译安装

编译安装

2018年02月02日  | 移动技术网科技  | 我要评论

编译安装

程序包编译

    程序包编译安装:
        Application-VERSION-release.src.rpm -->  安装后,使用 rpmbuild 命令制作成二进制格式的rpm 包,而后再安装源代码--> 预处理--> 编译--> 汇编--> 链接--> 执行.

    源代码组织格式:
        多文件:    文件中的代码之间,很可能存在跨文件依赖关系
        C 、C++ :    make 项目管理器,configure脚本 --> Makefile.in --> Makefile
        java:   maven

编译安装

    C 语言源代码编译安装三步骤:
        1。./configure
            (1) 通过选项传递参数,指定启用特性、安装路径等;执行时会参考用户的指定,以及makefile.in 文件生成makefile
            (2) 检查依赖到的外部环境,如依赖的软件包
        2。make(项目编辑器):
            根据makefile 文件,构建应用程序
            为了加快编译速度,可以采用这条命令make -j 4 && make install。-j表示可以多进程,多线程的并发编译。
            如果处理器数量为4个,-j最多写4。
        3。make install:
            复制文件到相应路径
    
    开发工具:
        同时开发者也可以自己生成 configure。使用autoconf生成configure脚本,使用automake生成Makefile.in。
        autoconf:生成configure 脚本
        automake:生成Makefile.in
    
    注意:
        安装前查看INSTALL ,README
    
    开源程序源代码的获取:
        官方自建站点:
            apache.org (ASF :Apache Software Foundation)
            mariadb.org
            ...
        代码托管:
            SourceForge.net
            Github.com
            code.google.com
    
    c/c++ 编译器: 
        gcc (GNU C Complier)
    
    编译C源代码:
        准备: 提供开发工具及开发环境
        开发工具:   make(项目编辑器), gcc等
        开发环境:   开发库,头文件
        glibc : 标准库
        实现: 通过“包组”提供开发组件,Development Tools ,Server Platform Development
        
        
    第一步:configure 脚本
        选项:指定安装位置、指定启用的特性
            --help:  获取其支持使用的选项
        选项分类:
            安装路径设定:
                --prefix=/PATH:  指定默认安装位置, 默认为/usr/local/
                --sysconfdir=/PATH :配置文件安装位置
                
        
            System types: 支持交叉编译
    
            Optional Features:  可选特性
                --disable-FEATURE
                --enable-FEATURE[=ARG]
    
            Optional Packages:  可选包
                --with-PACKAGE[=ARG], 依赖包
                --without-PACKAGE, 禁用依赖关系
    
    第二步:make(项目编辑器)
    
    第三步:make install
    
    安装后的配置:
        (1)  二进制程序目录导入至PATH 环境变量中,编辑文件/etc/profile.d/NAME.sh,export PATH=/PATH/TO/BIN:$PATH
        
        (2)  导入库文件路径(不用做)。
            编辑/etc/ld.so.conf.d/NAME.conf,添加新的库文件所在目录至此文件中,让系统重新生成缓存:
            ldconfig [-v]
            
        (3)  导入头文件(不用做)
            基于链接的方式实现:
                ln -sv
        
        (4)  导入帮助手册
            编辑/etc/man.config|man_db.conf 文件
                添加一个MANPATH

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网