zookeeper 打包rpm和tar.gz
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zookeeper 打包rpm和tar.gz相关的知识,希望对你有一定的参考价值。
参考技术A zookeeper 3.4.6 使用的是ant,后边儿改用maven了
所以需要先安装ant:参见 https://blog.csdn.net/m0_37039484/article/details/80798139
build参考链接: https://cwiki.apache.org/confluence/display/ZOOKEEPER/HowToContribute
我们要执行的命令:
这个test会执行大量junit test,需要时间挺久的
去掉test,tar包很快就会生成,大概二十多秒的样子吧
详细ant 打包方式参见build.xml中target,特别丰富
http://repo2.maven.org/maven2 替换成 https://repo.hortonworks.com/content/groups/public
build.xml
Ivysettings.xml
报错信息:error: possibly undefined macro: AM_PATH_CPPUNIT
查到是因为缺少cppunit包,所以安装即可
Centos:
yum install cppunit cppunit-devel
Debian/ubuntu
sudo apt-get install libcppunit-dev
解决办法:
当我们直接使用 ant rpm 命令打包rpm的时候,会报错如下:
解决办法:
修改相应文件
http://zookeeper-user.578899.n2.nabble.com/Cannot-build-zookeeper-3-4-5-RPM-on-CentOS-6-3-td7578336.html
build.xml
src/contrib/zkpython/src/packages/rpm/spec/zkpython.spec
src/contrib/zkpython/build.xml
src/packages/rpm/spec/zookeeper.spec
我们重新打包rpm:
ant -Djavac.args="-Xlint -Xmaxwarns 1000" clean rpm
很快在build目录下生成rpm
Linux下安装软件的一般步骤
目录
一、解析Linux应用软件安装包
二、了解包里的内容
三、搞定使用tar打包的应用软件
四、搞定使用rpm打包的应用软件
五、搞定使用deb打包的应用程序
一、解析Linux应用软件安装包(回目录)
通常Linux应用软件的安装包有三种:
- tar包,如software-1.2.3-1.tar.gz。它是使用UNIX系统的打包工具tar打包的。
- rpm包,如software-1.2.3-1.i386.rpm。它是Redhat Linux提供的一种包封装格式。
- dpkg包,如software-1.2.3-1.deb。它是Debain Linux提供的一种包封装格式。
大多数Linux应用软件包的命名也有一定的规律,它遵循:
名称-版本-修正版-类型
例如:
- software-1.2.3-1.tar.gz 意味着:
- 软件名称:software
- 版本号:1.2.3
- 修正版本:1
- 类型:tar.gz,说明是一个tar包。
- sfotware-1.2.3-1.i386.rpm
- 软件名称:software
- 版本号:1.2.3
- 修正版本:1
- 可用平台:i386,适用于Intel 80x86平台。
- 类型:rpm,说明是一个rpm包。
- 对于software-1.2.3-1.deb就请大家自己练习一下。
二、了解包里的内容(回目录)
一个Linux应用程序的软件包中可以包含两种不同的内容:
- 一种就是可执行文件,也就是解开包后就可以直接运行的。在Windows中所 有的软件包都是这种类型。安装完这个程序后,你就可以使用,但你看不到源程序。而且下载时要注意这个软件是否是你所使用的平台,否则将无法正常安装。
- 另一种则是源程序,也就解开包后,你还需要使用编译器将其编译成为可执行文件。这在Windows系统中是几乎没有的,因为Windows的思想是不开放源程序的。
通常,用tar打包的,都是源程序;而用rpm、dpkg打包的则常是可执行程序。一般来说,自己动手编译源程序能够更具灵活性,但也容易遇到各种问题和困难。而相对来说,下载那些可执行程序包,反而是更容易完成软件的安装,当然那样灵活性就差多了。所以一般一个软件总会提供多种打包格式的安装程序的。你可以根据自己的情况来选择。
三、搞定使用tar打包的应用软件(回目录)
-
安装
整个安装过程可以分为以下几步:
- 取得应用软件:通过下载、购买光盘的方法获得;
- 解压缩文件:一般tar包,都会再做一次压缩,如gzip、bz2等,所以你需要先解压。如果是最常见的gz格式,则可以执行:“tar –xvzf 软件包名”,就可以一步完成解压与解包工作。如果不是,则先用解压软件,再执行“tar –xvf 解压后的tar包”进行解包;
- 阅读附带的INSTALL文件、README文件;
- 执行“./configure”命令为编译做好准备;
- 执行“make”命令进行软件编译;
- 执行“make install”完成安装;
- 执行“make clean”删除安装时产生的临时文件。
好了,到此大功告成。我们就可以运行应用程序了。但这时,有的读者就会问,我怎么执行呢?这也是一个Linux特色的问题。其实,一般来说,Linux的应用软件的可执行文件会存放在/usr/local/bin目录下!不过这并不是“放四海皆准”的真理,最可靠的还是看这个软件的INSTALL和README文件,一般都会有说明。
-
卸载
通常软件的开发者很少考虑到如何卸载自己的软件,而tar又仅是完成打包的工作,所以并没有提供良好的卸载方法。
那么是不是说就不能够卸载呢!其实也不是,有两个软件能够解决这个问题,那就是Kinstall和Kife,它们是tar包安装、卸载的黄金搭档。它们的使用方法,笔者会另行文介绍。在此就不加赘述了。
四、搞定使用rpm打包的应用软件(回目录)
rpm可谓是Redhat公司的一大贡献,它使Linux的软件安装工作变得更加简单容易。
-
安装
执行:
rpm –ivh rpm软件包名更高级的,请见下表:
rpm参数 参数说明 -i 安装软件 -t 测试安装,不是真的安装 -p 显示安装进度 -f 忽略任何错误 -U 升级安装 -v 检测套件是否正确安装 这些参数可以同时采用。更多的内容可以参考RPM的命令帮助。
-
卸载
我同样只需简单的一句话,就可以说完。执行:
rpm –e 软件名不过要注意的是,后面使用的是软件名,而不是软件包名。例如,要安装software-1.2.3-1.i386.rpm这个包时,应执行:
rpm –ivh software-1.2.3-1.i386.rpm而当卸载时,则应执行:
rpm –e software。另外,在Linux中还提供了象GnoRPM、kpackage等图形化的RPM工具,使得整个过程会更加简单。这些软件的具体应用,笔者会另行文介绍。
五、搞定使用deb打包的应用程序(回目录)
这是Debian Linux提供的一个包管理器,它与RPM十分类似。但由于RPM出现得更早,所以在各种版本的Linux都常见到。而debian的包管理器dpkg则只出现在Debina Linux中,其它Linux版本一般都没有。我们在此就简单地说明一下:
-
安装
dpkg –i deb软件包名如:
dpkg –i software-1.2.3-1.deb -
卸载
dpkg –e 软件名如:
dpkg –e software
以上是关于zookeeper 打包rpm和tar.gz的主要内容,如果未能解决你的问题,请参考以下文章