介绍:
以下是在RHEL 6.9 32bit
OS上完成的。
我JRE
使用
rpm -Uvh
命令。
然后,我使用oracle JRE提供的rpmbuild
需求构建了一个程序包,libjvm.so
并使用命令对此进行了验证。
rpm -ql jre1.8.0_111-1.8.0_111-fcs.i586
问题:
但是,当我去安装rpm
I构建或使用的命令rpm -q libjvm.so
时,系统提示我libjvm.so
未安装。
我知道我可以将spec
文件放入rpm
AutoReqProv: no
为了解决依赖性问题,这似乎不是一个好习惯,我还重建了rpm数据库,但无济于事。
问题:
因此,我不得不思考并尝试解决jre rpm如何提供它的问题,libjvm.so
而RPM数据库却一直在说libjvm.so
未安装依赖项。有任何想法吗?
编辑
JRE rpm还提供以下内容
jaxp_parser_impl
xml-commons-apis
java
java-1.8.0
java-fonts
jre
jre-1.8.0
jre1.8.0_111 = 1.8.0_111-fcs
libjvm.so
OpenJDK软件包中的要求来自
$ rpm -qp --provides java-1.8.0-openjdk-headless-1.8.0.121-1.b13.el6.x86_64.rpm \
2>/dev/null | grep libjvm
libjvm.so()(64bit)
libjvm.so(SUNWprivate_1.1)(64bit)
相比之下,Oracle RPM没有提供。除了从正在构建的软件包中删除该需求(使用锤子,AutoReqProv
或更复杂的涉及依赖脚本的选项)之外,另一个选择是创建一个垫片软件包,该软件包只提供必要的需求(并且可能Conflict
与OpenJDK一起使用) )。
Name: shim-libjvm
Version: 1
Release: 1%{?dist}
Summary: Shim for libjvm
Group: Development/Languages
License: CC BY-SA 3.0
URL: http://example.org
Provides: libjvm.so
BuildArchitectures: noarch
%description
Shim for libjvm
%install
mkdir -p %{buildroot}/usr/share/doc/shim-libjvm
echo "shim-libjvm is merely a provider for libjvm.so" > %{buildroot}/usr/share/doc/shim-libjvm/README
%files
%doc
/usr/share/doc/shim-libjvm/README
%changelog
* Thu Jun 8 2017 John Doe <[email protected]>
- Release on a mostly unsuspecting world.
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句