I am trying to build an RPM on Centos 7. I am making a wildfly application into RPM using below SPEC file.
Name: wildfly
Version: 16.0.0.Final
Release: 1%{?dist}
Summary: WildFly Application Server
Group: System Environment/Daemons
License: LGPL 2.1
Source0: %{name}-%{version}.tar.gz
Requires(pre): shadow-utils
Requires: java >= 1.7.0
#Requires: /etc/init.d/functions
Provides: wildfly
%undefine _missing_build_ids_terminate_build
%define __arch_install_post QA_SKIP_RPATHS=2 %{__arch_install_post}
%define __jar_repack 0
%description
WildFly Application Server packaged from the binary distribution.
%prep
%setup -q -n wildfly-%{version}
%install
mkdir -p %{buildroot}/opt/wildfly
cp -R . %{buildroot}/opt/wildfly
mkdir -p %{buildroot}/var/log/wildfly
mkdir -p %{buildroot}/var/run/wildfly
#%post
#alternatives --install /etc/alternatives/wildfly wildfly /opt/wildfly 100
#%postun
#alternatives --remove wildfly /opt/wildfly
%files
%defattr(-,root,root,0755)
%files
%defattr(-,root,root,0755)
%dir /opt/wildfly
/opt/wildfly/appclient
/opt/wildfly/bin
/opt/wildfly/domain
/opt/wildfly/jboss-modules.jar
/opt/wildfly/modules
%attr(-,wildfly,wildfly) /opt/wildfly/standalone
/opt/wildfly/welcome-content
%dir /var/log/wildfly
%dir /var/run/wildfly
%doc /opt/wildfly/copyright.txt
%doc /opt/wildfly/LICENSE.txt
%doc /opt/wildfly/README.txt
%doc /opt/wildfly/docs
%changelog
* Wed Nov 24 2021
- First version being packaged
On building, i noticed that it is taking certain dependencies which i didn't defined in SPEC file.
Requires: /bin/bash /bin/sh libaio.so.1 libaio.so.1()(64bit) libaio.so.1(LIBAIO_0.1) libaio.so.1(LIBAIO_0.1)(64bit) libaio.so.1(LIBAIO_0.4) libaio.so.1(LIBAIO_0.4)(64bit) libc.so.1()(64bit) libc.so.1(SUNW_0.7)(64bit) libc.so.1(SUNW_0.9)(64bit) libc.so.6 libc.so.6()(64bit) libc.so.6(GLIBC_2.0) libc.so.6(GLIBC_2.1.3) libc.so.6(GLIBC_2.10) libc.so.6(GLIBC_2.10)(64bit) libc.so.6(GLIBC_2.2) libc.so.6(GLIBC_2.2.5)(64bit) libdl.so.1()(64bit) libdl.so.1(SUNW_0.7)(64bit) libdl.so.2 libdl.so.2()(64bit) libdl.so.2(GLIBC_2.0) libdl.so.2(GLIBC_2.1) libdl.so.2(GLIBC_2.2.5)(64bit) libgcc_s.so.1()(64bit) rtld(GNU_HASH)
So when I try to install this RPM on Centos 7 machine, it throws the following error.
sudo rpm -ivh wildfly-16.0.0.Final-1.el7.x86_64.rpm
error: Failed dependencies:
libaio.so.1 is needed by wildfly-16.0.0.Final-1.el7.x86_64
libaio.so.1()(64bit) is needed by wildfly-16.0.0.Final-1.el7.x86_64
libaio.so.1(LIBAIO_0.1) is needed by wildfly-16.0.0.Final-1.el7.x86_64
libaio.so.1(LIBAIO_0.1)(64bit) is needed by wildfly-16.0.0.Final-1.el7.x86_64
libaio.so.1(LIBAIO_0.4) is needed by wildfly-16.0.0.Final-1.el7.x86_64
libaio.so.1(LIBAIO_0.4)(64bit) is needed by wildfly-16.0.0.Final-1.el7.x86_64
libc.so.1()(64bit) is needed by wildfly-16.0.0.Final-1.el7.x86_64
libc.so.1(SUNW_0.7)(64bit) is needed by wildfly-16.0.0.Final-1.el7.x86_64
libc.so.1(SUNW_0.9)(64bit) is needed by wildfly-16.0.0.Final-1.el7.x86_64
libc.so.6 is needed by wildfly-16.0.0.Final-1.el7.x86_64
libc.so.6(GLIBC_2.0) is needed by wildfly-16.0.0.Final-1.el7.x86_64
libc.so.6(GLIBC_2.1.3) is needed by wildfly-16.0.0.Final-1.el7.x86_64
libc.so.6(GLIBC_2.10) is needed by wildfly-16.0.0.Final-1.el7.x86_64
libc.so.6(GLIBC_2.2) is needed by wildfly-16.0.0.Final-1.el7.x86_64
libdl.so.1()(64bit) is needed by wildfly-16.0.0.Final-1.el7.x86_64
libdl.so.1(SUNW_0.7)(64bit) is needed by wildfly-16.0.0.Final-1.el7.x86_64
libdl.so.2 is needed by wildfly-16.0.0.Final-1.el7.x86_64
libdl.so.2(GLIBC_2.0) is needed by wildfly-16.0.0.Final-1.el7.x86_64
libdl.so.2(GLIBC_2.1) is needed by wildfly-16.0.0.Final-1.el7.x86_64
How can I solve the above dependencies issue. I already installed
sudo yum install libaio -y
Still dependencies issues are coming. Please help.