I am with an ISV trying to get our LSB compliant application working on SLES 12.
# rpm -i RPMS/noarch/mytestrpm-1.0-0.noarch.rpm
error: Failed dependencies:
lsb-core-noarch is needed by mytestrpm-1.0-0.noarch
I don’t think this should be possible based on the documentation I’ve read.
[CODE]# lsb_release
LSB Version: n/a
lsb_release -a
LSB Version: n/a
Distributor ID: SUSE LINUX
Description: SUSE Linux Enterprise Server 12
Release: 12
Codename: 12
[/CODE]
I don’t believe that “n/a” is what should be showing up as lsb version. I can’t find anything in the repositories to satisfy the lsb-core-* dependencies or provide /etc/lsb-release. Am I missing something obvious?
First, this looks like your own RPM, meaning you probably have the spec
file defining the requirement. Assuming the RPM you built on this system
has a program within that actually runs, meaning all dependencies are
actually satisfied regardless of the package’s defined requirements (from
your spec file), your package is incorrect (since it is complaining about
a missing dependency that is actually there).
Second, the version should not matter as the error does not mention a
required version, just a dependent package by name. If you look for that
package using rpm or zypper you should see it, presumably, since (see
previous paragraph/point) your application presumably runs on this box:
rpm -qf `which lsb_release`
Use the returned package’s name in your spec file as the dependency
instead of lsb-core-noarch and maybe that will help.
Finally, I would try using ‘zypper’ to install anything as it will pull
in dependencies if it can find them where ‘rpm’ will not unless all
dependencies are specified on the command line. Using zypper will not
help you if the package dependencies call for incorrect packages, but most
of the time that is not the case.
–
Good luck.
If you find this post helpful and are logged into the web interface,
show your appreciation and click on the star below…
–
Cheers Malcolm °¿° LFCS, SUSE Knowledge Partner (Linux Counter #276890)
SUSE Linux Enterprise Desktop 12 GNOME 3.10.1 Kernel 3.12.32-33-default
If you find this post helpful and are logged into the web interface,
please show your appreciation and click on the star below… Thanks!
Yes. I am with an ISV trying to produce a single RPM which works on all LSB compliant Linux distributions. RHEL 5, RHEL 6, SLES 10, SLES 11, as well as CentOS and Oracle variants. We have been successfully implementing this for years, until SLES 12.
I believe I am correctly implementing my package dependencies according to the LSB standard. There should be installable packages or some other mechanism for providing those lsb-core-* dependencies. (Or I am doing it wrong.)
The example output of the lsb_release command is given in the standard. SuSE 12 returns “n/a” which strongly indicates to me that something is missing from my install. I need to know where to get the missing bits.
We only ever use zypper for package installation.
We perplexed as to why the LSB mechanisms are missing in SLES 12. Or we have somehow failed to install them.
–
Cheers Malcolm °¿° LFCS, SUSE Knowledge Partner (Linux Counter #276890)
SUSE Linux Enterprise Desktop 12 GNOME 3.10.1 Kernel 3.12.32-33-default
If you find this post helpful and are logged into the web interface,
please show your appreciation and click on the star below… Thanks!