开源程序源代码的获取路径:
官方自建站点:
Apache.org(ASF)
mariadb.org
代码托管站点:
SourceForge
Github.com
code.google.com
工具C/C++:gcc(GNU C Complier)
【A】编译C程序代码:
前提:提供开发工具及开发环境
开发工具:make,gcc等
开发环境:开发库,头文件
glibc:标准库
通过“包组”提供开发组件
CentOS 6:“Development Tools”,“Server Platform Development”
第一步:configure脚本
选项:指定安装位置,指定启用的特性
--help:获取其文件使用的选项
选项分类:
安装路径设定:
--prefix=/PATH/TO/SOMEWHERE:指定默认安装位置:默认为/usr/local/
--sysconfdir=/PATH/TO/SOMEWHERE:配置文件安装位置
System types:系统类型
Optional Features:可选特性
--disable-FEATURE:默认启用的,我们不想启用,可以使用disable选项
--enable-FEATURE[=ARG]:默认没有启用,我们把它启用,那么使用的是enable选项
Optioal Packages:可选包
--with-PACKAGE[=ARG](依赖于某包)
--without-PACKAGE(不依赖于某包)
第二步:make
第三步:make install
【B】安装后的配置:
(1)导出二进制程序目录至PATH环境变量中,修改PATH环境变量,以能够识别此程序的二进制文件路径
编辑文件/etc/profile.d/NAME.sh:
export PATH=/PATH/TO/BIN:$PATH
(2)导出库文件路径:
编辑/etc/ld.so.conf.d/NAME.conf:
添加新的库文件所在目录至此文件中,在默认情况下系统搜索文件的路径/lib、/usr/lib;
想增添额外搜寻路径,在/etc/ld.so.conf.d/中创建以.conf为后缀名的文件,而后把要增添的路径直接写至此文件
让系统重新生成缓存:
ldconfig [-v]
(3)导出头文件,输出给系统:
默认:/usr/include/
基于连接的方式实现:
ln -sv:创建软连接,并且显示创建过程
eg.#ln -s /usr/local/tengine/include/ /usr/include/tengine
(4)导出帮助手册:
编辑/etc/man.config文件,添加一个MANPATH:
#vim /etc/man.config
MANPATH /usr/local/apache2/man
示例:
#yum install createrepo
解释:可以创建出系统所需的repodata的文件
#yum repolist
解释:会自动获取新的yum源
#yum install xen
解释:安装xen���序包
#gcc --version
解释:查询本机的gcc的版本
yum仓库创建实例:
#!mkdir -p /yum/repo
解释:“!”表示在本地创建一个目录/yum/repo
#lcd /yum/repo
解释:进入到本地的yum目录当中
#mget *.rpm
解释:从网络的yum仓库中获取所有以rpm结尾的文件
#createrepo ./
解释:创建当前目录的repodata
#vim centos-local.repo
[xen4centos]
name=Xen 4 CentOS 6
baseurl=file:///yum/repo/
gpgcheck=0
使用yum安装httpd服务:
#yum groupinstall "Server Platform Development" -y
解释:安装包组“erver Platform Development”,并且安装时自动回答为yes
#cd httpd-2.2.29
解释:进入到httpd的目录
#./configure --prefix=/usr/local/apache2 --sysconfdir=/etc/httpd2
解释:程序的安装路径是/usr/local/apache2,配置文件的安装路径是/etc/httpd2
#make
解释:执行编译操作
#make install
解释:执行install复制安装的操作
#cd /usr/local/apache2/
解释:进入到apache2的目录
#ls bin
解释:显示bin目录下的信息
#bin/apachectl start
解释:启动apache服务器
#netstat -tan
解释:查看系统中有哪些监听端口是打开的,其中-t是建立tcp连接,-n表示以数字的方式显示,-a (all)显示所有选项
#apachectl stop
解释:将apache服务器停止
Linux教程:rpm包管理器,yum工具,编译安装从入门(5)
内容版权声明:除非注明,否则皆为本站原创文章。