这也是“为了这点醋,包的这顿饺子”系列---之 lftp 打包的故事。
起因:
以前折腾的一个监控摄像头,支持ftp上传突发视频,很长时间没管,前2天发现ftp根目录下有数万视频,看着太不直观了,于是写了一个简单(丑陋)的脚本,按月移动一下文件。
折腾:
测试脚本的时候,一行行执行ok,整段执行的时候,出现匹配*号的问题,看到了一个新参数mmv,支持*通配符(2017年上线),centos 7上的 lftp 停留在2013年的4.4.8版。
找到一个LFTP-4.8.4 RPM Spec for CentOS 7,于是改了版本4.9.2 ,用rpmbuild打了一个rpm包,戳这里可以直接用。lftp-rpm/lftp-4.9.2-3.el7.x86_64.rpm
写这篇的时候,发现另一个 lftp.spec 已经直接是 4.9.2 了,还备注了中韩波兰等国家语言,下次有空再折腾吧。
排障:
最后说一下rpmbuild过程中的几个报错如何解决的。
报错代码
报错checking for style of include used by make... GNUchecking for x86_64-redhat-linux-gnu-gcc... nochecking for gcc... nochecking for x86_64-redhat-linux-gnu-cc... nochecking for cc... nochecking for x86_64-redhat-linux-gnu-cl.exe... nochecking for cl.exe... nochecking for x86_64-redhat-linux-gnu-clang... nochecking for clang... noconfigure: error: in/root/rpmbuild/BUILD/lftp-4.9.2':
configure: error: no acceptable C compiler found in $PATHSee config.log' for more details错误:/var/tmp/rpm-tmp.guxOAd (%build) 退出状态不好或者checking for MD5 in -lcrypto... noconfigure: error: openssl development library not found for MD5错误:/var/tmp/rpm-tmp.lzo9L8 (%build) 退出状态不好
原因
解决
yum install gcc rpm-build rpm-devel rpmlint make python bash coreutils diffutils
sudo yum groupinstall 'Development Tools'
yum install openssl-devel
最后执行rpmbuild -ba lftp.spec ,打包成功,测试ftp站点,成功,问题解决。
参考了这里
https://developer.ibm.com/zh/technologies/linux/articles/l-lo-rpm-build-package/
文章评论