ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

Linux编译安装-软件

2022-04-23 10:34:29  阅读:150  来源: 互联网

标签:-- make Makefile PATH 编译 Linux 软件 安装


编译源码的项目工具

  • C、C++的源码编译:使用make项目管理器

    configure脚本 --> Makefile.in --> Makefile

    相关开发工具:

    autoconf: 生成configure脚本

    automake:生成Makefile.in

  • java的源码编译:使用maven

C语言源代码编译安装过程

利用编译工具,通常只需三个大的步骤

  • ./configure

  (1) 通过选项传递参数,指定安装路径、启用特性等;执行时会参考用户的指定以及Makefile.in文 件生成Makefile

  (2) 检查依赖到的外部环境,如依赖的软件包

  • make 根据Makefile文件,会检测依赖的环境,进行构建应用程序
  • make install 复制文件到相应路径

注意:安装前可以通过查看README,INSTALL获取帮助

编译安装准备

准备:安装相关的依赖包

  • 开发工具:make,gcc(c/c++编译器CNU C Complier)
  • 开发环境:开发库(glibc:标准库),头文件,可安装开发包组 Development Tools
  • 软件相关依赖包

基于最小化安装的系统安装以下相关包

yum install  gcc make autoconf gcc-c++ glibc glibc-devel pcre pcre-devel openssl openssl-devel systemd-devel zlib-devel  vim lrzsz tree tmux lsof tcpdump wget net-tools iotop bc bzip2 zip unzip nfs-utils man-pages

编译安装

第一步:运行configure脚本,生成Makefile文件

其选项主要功能:

  • 可以指定安装位置
  • 指定启用的特性

获取其支持使用的选项

./configure --help

选项分类

安装路径设定
    --prefix=/PATH:指定默认安装位置,默认为/usr/local/
    --sysconfdir=/PATH:配置文件安装位置
    System types:支持交叉编译
软件特性和相关指定:
    Optional Features: 可选特性
     --disable-FEATURE
     --enable-FEATURE[=ARG]
    Optional Packages: 可选包
     --with-PACKAGE[=ARG] 依赖包
     --without-PACKAGE 禁用依赖关系
注意:通常被编译操作依赖的程序包,需要安装此程序包的"开发"组件,其包名一般类似于namedevel-VERSION

第二步:make
第三步:make install

安装后的配置

1、二进制程序目录导入至PATH环境变量中

  编辑文件/etc/profile.d/NAME.sh

export PATH=/PATH/TO/BIN:$PATH

2、相关用户即文件

有些开源软件编译完成后,还需要创建相关的用户及文件

3、导入帮助手册

编辑/etc/man.config|man_db.conf文件,添加一个MANPATH

 

标签:--,make,Makefile,PATH,编译,Linux,软件,安装
来源: https://www.cnblogs.com/lyj1023/p/16181603.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有