- 论坛徽章:
- 0
|
回复 4# rdcwayx
以上问题都已经解决,可是又有新的问题 在%install部分 最后报错:
ERROR 0002: file '/opt/zenoss/lib/python2.7/lib-dynload/array.so' contains an invalid rpath '/opt/zenoss/lib' in [/opt/zenoss/lib]
ERROR 0002: file '/opt/zenoss/lib/python2.7/lib-dynload/_curses_panel.so' contains an invalid rpath '/opt/zenoss/lib' in [/opt/zenoss/lib]
ERROR 0002: file '/opt/zenoss/lib/python2.7/lib-dynload/zlib.so' contains an invalid rpath '/opt/zenoss/lib' in [/opt/zenoss/lib]
ERROR 0002: file '/opt/zenoss/lib/python2.7/lib-dynload/grp.so' contains an invalid rpath '/opt/zenoss/lib' in [/opt/zenoss/lib]
ERROR 0002: file '/opt/zenoss/lib/python2.7/lib-dynload/_ctypes.so' contains an invalid rpath '/opt/zenoss/lib' in [/opt/zenoss/lib]
ERROR 0002: file '/opt/zenoss/lib/python2.7/lib-dynload/_codecs_cn.so' contains an invalid rpath '/opt/zenoss/lib' in [/opt/zenoss/lib]
ERROR 0002: file '/opt/zenoss/lib/python2.7/lib-dynload/time.so' contains an invalid rpath '/opt/zenoss/lib' in [/opt/zenoss/lib]
ERROR 0002: file '/opt/zenoss/lib/python2.7/lib-dynload/future_builtins.so' contains an invalid rpath '/opt/zenoss/lib' in [/opt/zenoss/lib]
ERROR 0002: file '/opt/zenoss/lib/python2.7/lib-dynload/operator.so' contains an invalid rpath '/opt/zenoss/lib' in [/opt/zenoss/lib]
ERROR 0002: file '/opt/zenoss/lib/python2.7/lib-dynload/unicodedata.so' contains an invalid rpath '/opt/zenoss/lib' in [/opt/zenoss/lib]
ERROR 0002: file '/opt/zenoss/lib/python2.7/lib-dynload/pyexpat.so' contains an invalid rpath '/opt/zenoss/lib' in [/opt/zenoss/lib]
ERROR 0002: file '/opt/zenoss/lib/python2.7/lib-dynload/_multibytecodec.so' contains an invalid rpath '/opt/zenoss/lib' in [/opt/zenoss/lib]
ERROR 0002: file '/opt/zenoss/lib/python2.7/lib-dynload/_codecs_tw.so' contains an invalid rpath '/opt/zenoss/lib' in [/opt/zenoss/lib]
ERROR 0002: file '/opt/zenoss/lib/python2.7/lib-dynload/_multiprocessing.so' contains an invalid rpath '/opt/zenoss/lib' in [/opt/zenoss/lib]
ERROR 0002: file '/opt/zenoss/lib/python2.7/lib-dynload/_codecs_kr.so' contains an invalid rpath '/opt/zenoss/lib' in [/opt/zenoss/lib]
ERROR 0002: file '/opt/zenoss/lib/python2.7/lib-dynload/_heapq.so' contains an invalid rpath '/opt/zenoss/lib' in [/opt/zenoss/lib]
ERROR 0002: file '/opt/zenoss/lib/python2.7/lib-dynload/linuxaudiodev.so' contains an invalid rpath '/opt/zenoss/lib' in [/opt/zenoss/lib]
ERROR 0002: file '/opt/zenoss/lib/python2.7/lib-dynload/_ssl.so' contains an invalid rpath '/opt/zenoss/lib' in [/opt/zenoss/lib]
ERROR 0002: file '/opt/zenoss/lib/python2.7/lib-dynload/select.so' contains an invalid rpath '/opt/zenoss/lib' in [/opt/zenoss/lib]
ERROR 0002: file '/opt/zenoss/lib/python2.7/lib-dynload/readline.so' contains an invalid rpath '/opt/zenoss/lib' in [/opt/zenoss/lib]
ERROR 0002: file '/opt/zenoss/lib/python2.7/site-packages/icmpecho/_network.so' contains an invalid rpath '/opt/zenoss/lib' in [/opt/zenoss/lib]
*******************************************************************************
*
* WARNING: 'check-rpaths' detected a broken RPATH and will cause 'rpmbuild'
* to fail. To ignore these errors, you can set the '$QA_RPATHS'
* environment variable which is a bitmask allowing the values
* below. The current value of QA_RPATHS is 0x0000.
*
* 0x0001 ... standard RPATHs (e.g. /usr/lib); such RPATHs are a minor
* issue but are introducing redundant searchpaths without
* providing a benefit. They can also cause errors in multilib
* environments.
* 0x0002 ... invalid RPATHs; these are RPATHs which are neither absolute
* nor relative filenames and can therefore be a SECURITY risk
* 0x0004 ... insecure RPATHs; these are relative RPATHs which are a
* SECURITY risk
* 0x0008 ... the special '$ORIGIN' RPATHs are appearing after other
* RPATHs; this is just a minor issue but usually unwanted
* 0x0010 ... the RPATH is empty; there is no reason for such RPATHs
* and they cause unneeded work while loading libraries
* 0x0020 ... an RPATH references '..' of an absolute path; this will break
* the functionality when the path before '..' is a symlink
* Examples:
* - to ignore standard and empty RPATHs, execute 'rpmbuild' like
* $ QA_RPATHS=$[ 0x0001|0x0010 ] rpmbuild my-package.src.rpm
* - to check existing files, set $RPM_BUILD_ROOT and execute check-rpaths like
* $ RPM_BUILD_ROOT=<top-dir> /usr/lib/rpm/check-rpaths
*
经过查找, 发现应该是我的Build Root设置的问题,查了写资料,了解了下该选项的设置,但是还是没找到原因。
我的spec文件部分设置:
Name: zenoss
Summary: Zenoss Core
URL: http://www.zenoss.org
Version: 4.2.4
Release: 1897.el6
License: Copyright (c) 2005-2013 Zenoss, Inc. All rights reserved. Use is subject to terms as shown in the License.zenoss file.
Vendor: Zenoss, Inc.
Packager: RPM Builder <dev.zenoss.com>
Group: Applications/System
Source0: zenoss_core-4.2.4-1897.el6.x86_64.tar.bz2
#BuildRoot: /home/buildslave/zenoss_core-4.2.4/obj/redhat/pkg_root/zenoss_core-4.2.4
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
Provides: zenoss = %{version}-%{release}
Provides: zenoss_core = %{version}-%{release}
对于BuildRoot两种方式都试过 还是报错。
查看了/usr/lib/rpm/redhat/macros
%__spec_install_pre %{___build_pre}\
[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "${RPM_BUILD_ROOT}"\
mkdir -p `dirname "$RPM_BUILD_ROOT"`\
mkdir "$RPM_BUILD_ROOT"\
%{nil}
发现在%insall开始的时候 会清理一次虚拟的根目录。
可是需要打包的文件不是都是安装在这个目录里面么。这点很费解。希望得到答案。谢谢 |
|