美文网首页
程序包的编译安装

程序包的编译安装

作者: 麟之趾a | 来源:发表于2020-05-25 18:21 被阅读0次

程序包的编译安装

testapp-VERSION-release.src.rpm安装后,使用rpmbuid 命令制成二进制的rpm包,然后安装

源代码的组织格式

多文件:多文件中的代码之间,很可能是跨文件依赖关系
我们编译安装时,用户解决这些依赖关系是非常困难的,所以需要项目管理工具
C/C++: make
java: maven

源代码安装

源代码---> 预处理--->编译(gcc)--->汇编--->连接-->执行
make 工具自动帮助我们执行预处理,编译,汇编,连接
make在每个源文件中都有make配置文件(makefile),这个配置文件帮助选择使用哪个执行器,哪个处理器,哪个编译器,哪种汇编,哪个连接器,先编译哪个文件,后编译哪个文件
注:make不是编译工具,它是调用gcc和其他编译完成的。它是项目管理工具

编译安装

./configure

通过选项传递参数,指定启用特性,安装路径。执行时,会参数用户的指定以及Makefile.in 生成makefile(makefile是根据makefile.ini里的函数生成的)
2)要检查指定的特性,所依赖的外部环境(如果外部环境的依赖包没有,则./configure 会报错)

./configure
1 .指明软件的特性和路径
--help 查看帮助
选项分类
安装路径设定
--prefix=/PATH/TO/SOMEWHERE    (默认/usr/local)
指定默认安装路径
--sysconfdir=DIR   配置文件安装路径

optional Features: 可选特性
--disable-FEATURE
--enable-FEATURE[=ARG]
optional packages: 可选程序包
--with-PACKAGE[=ARG] 启用功能依赖包
--without-PACKAGE        

make

根据makefile 文件构建应用程序

make install

安装后配置

1 .导出二进制程序至PATH环境变量中,编辑文件/etc/profile.d/NAME.sh
2 .导出库文件路径 ,编辑 /etc/ld.so.conf.d/NAME.conf
添加新的库文件所在目录在此文件中
让系统重新生成缓存ldconfig [-v]
3 .导出头文件(基于连接方式导入)
ln -sv 头文件所在目录 目标目录
4.导出帮助手册
编辑/etc/man.config文件
添加一个MANPATH
vim /etc/man.config
MANPATH /usr/local/apace2/man

开发工具

autoconf: 生成configure 脚本
automake: 生成makefile.ini 文件
因为每个应用的特性不一样,所以configure的脚本中每个应用也不一样,所以autoconf 需要制定一个配置文件来生成configure脚本,automake同样也需要一个配置文件,来生成makefile.in
建议:安装前查看INSTALL,README

开源程序获取

  • 官方自建
  • 代码托管 sourceForge Github.com code.google.com

编译C源码

前提:提供开发工具及开发环境
开发工具: make,gcc
开发环境: 开发库,头文件

  glibc:标准库

linux: 通过包组 提供开发组件
centos6: "Development Tools" "server platform Development(服务器平台开发组件)"
centos7: 开发工具组

相关文章

  • rpm yum 编译安装

    rpm yum 编译安装 软件运行环境 编译过程 软件包的基础 rpm包管理 yum 实验 程序包编译 编译安装 练习:

  • 程序包编译

    程序包编译安装 Application-VERSION-release.src.rpm --> 安装后,使用rpm...

  • Linux程序包管理之程序包编译

    程序包编译安装: testapp-VERSION-release.src.rpm --> 安装后,使用rpmbui...

  • 【CentOS基础篇】之编译安装httpd

    程序包编译安装 在linux中,程序的安装分为rpm安装、yum安装和编译安装,rpm包和yum包在制作过程中已经...

  • 程序包的编译安装

    程序包的编译安装 testapp-VERSION-release.src.rpm安装后,使用rpmbuid 命令制...

  • CentOS程序包管理

    通过程序包管理器安装软件 Linux上通过使用程序包管理器安装软件 程序包管理器 :将源代码 编译后目标二进制格式...

  • note_15.2_内核功能定制、screen命令

    程序包的编译安装: ./configure, make, make install 前提: 开发环境(开发工具,开...

  • 安装 CosmMC

    <在 linux 系统中安装宇宙学程序包---CosmoMC> 编译器安装(ifort) 本人有2013的激活文件...

  • 未能加载文件或程序集“ICSharpCode.SharpZipL

    解决:重新安装NPOI,点击“管理NuGet程序包”,搜索NPOI,然后安装,重新编译,运行即可。(安装前记得把原...

  • Linux-程序包管理

    Linux上的软件安装有2种形式:源码、二进制文件,源码需要在编译环境下编译安装,二进制可以直接安装。 1.程序包...

网友评论

      本文标题:程序包的编译安装

      本文链接:https://www.haomeiwen.com/subject/ijxuahtx.html