编译安装过程详解 &软件编译

一、开源程序源代码的获取

项目官方自建站点:

apache.org (ASF:Apache Software Foundation)

mariadb.org

...

代码托管:

Github.com

gitee.com 相当于中国的github

SourceForge.net

code.google.com

二、编译马克华菲源码的项工程车目工工程车

C、C+make+的源码编译:使用 make 项目管理器linux操作系统基础知识

con国产车十大耗油王fifigure脚本 --> Makefifile.in --> Makefifile

相关开发linux必学的60个命令工具:

autoconf:linux系统 生成confifigure脚本

automake:生成Makefifile.in

java的源码编译: 使用 maven

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

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

./confifigure

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

件生成Makefifile

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

makmakee 根据Makefifile文件,会检测依赖的环境,进行构建应用程序,

make install 复制文件到相应路径

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

四、编译安装准备

准备:安装相关的依赖包

开发工具:make, gcc (c/c++编译器GNU C Complier)

开发环境:开发库(glibc:标准库),头文件,可安装开发包组 Development Tool国产车购置税取消了吗s

软件相关系统/运维依赖包

生产实践:基于最小化安装的系统建议安装下面相关包

yum install gcc make autoconf gcc-c++ glibc glibc-devel pcre pcre-devel openssl

openssl-devel sy国产车排行榜前十名stemd-devel zlib-devel vim lrz系统/运维sz tree tmux ls系统运维工作内容of tcpdump wget

net-tools iotop bc bzip2 zip unzip nfs-utils man-pages

五、linux操作系统基础知识安装后的配置系统运维工作内容

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

make的用法辑文件/etc/profifile.d/NAME.sh

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

/etc/profile.d/*.sh

/etc/bashrc

/etc/profile

/etc/bashrc #此文件执行两次

.bashrc

.b软件编译安装ash_p马克吐温作者简介rofile

2. 相关用户及文件

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

3. 导入帮助手册

编辑/系统运维工作内容etc/man.confifig|man_db.系统运维工作内容conf文件,添加一个MANPATHmake的中文意思是什么

范例:CentOS 7 编译安装 tree2.1

第一步:运行 confifigure 脚本,生成Makefifile 文件 ##部分软件直接是Makefile文件

第二步:Makefile文件中

选项分类:

安装路径设定:linux命令

--prefiflinux是什么操作系统ix=/PATH:指定默认安装位置,默认为/usr/local/

--sysconfdir=/PATH:配置文件安装位置

System types:支持交叉编译

软件特性和相关指定:

Optional Features: 可选特性

--disable-FEATURE

--enable-FEATURE[=ARG]

Optional Packages: 可选包

--with-PACKAGE[=ARG] 依赖包

--without-PACKAGE 禁用依赖关系

#1 安装相关的依赖包

[root@centos7 ~]#yum install gcc make

#2 下载源国产车十大耗油王码并解压

[root@centos7 ~]#tar xvf trmakeupee-1.8.0.tgz

#3 进入解压缩的目录,README和INSTALL

[root@centos7 ~]#cd tre马可e-linux必学的60个命令1.8.0/马克吐温作者简介

[root@centos7 tree-1.8.0]#cat README #注意事项

[root@centos7 tree-1.8.0]#cat INSTALL #安装事项

#4 修改源码的版本号

[root@centos7 tree-1.8.0]#sed -i 's#v1\.8\.0#v.8.8.8#' tree.c

#5 编译准备[root@centos7 tree-1.8.0]#vim Makefile

prefix = /apps/tree

#6 编译

[root@centos7 tree-1.8.0]#gccmake

#7 安装

[root@centos7 tree-1.8.0]#make install

#8 修改PATH变make的用法

[root@centos7 ~]#echo 'PATH=#Makefile安装目录:$PATH' > /etc/profile.d/tree.sh

. /etc/profile.d/tree.sh

#工程车9 验证结果

[root@centos7 ~]#tree --version

tree v8.8.8 (c) 1996 - 2018 by Steve Baker, Thomas Moore, Francesc Rocher,

Flori马克华菲an Sesser, Kyosuke Tokoro

#10 添加man帮助

#默认无法查看man

[root@centos7 ~]#man tree

No manual entry for tree

[root@centos7 ~]#linux系统安装vim /etc/man_db.conf

MANlinux删除文件命令DATORY_MANPATH /apps/tree/man #11 运行工程车tree查看生成的文工程车件列表

[root@centos7 ~]#tree /apps/tree

/apps/tree

├── bin

│ └── tree

└── man

└── man1

└── trelinux重启命令e.1

3 directmake的中文意思是什么ories, 2 files