On 3/28/2014 8:20 AM, Michael Shuler wrote:
# rpm -iv cassandra12-1.2.15-1.noarch.rpm
error: Failed dependencies:
java >= 1.6.0 is needed by cassandra12-1.2.15-1.noarch
This properly indicates the missing dependency, which is not installed,
nor provided by a package in your 'rpm -i ...' command. This is a
*binary* dependency: the binary 'java' is installed by a package that is
in the rpm database. (rpm knows nothing about your tar install..)
I don't think so. I believe this is saying that the 'java' package
is missing, not the 'java' binary.
One way of proving this is what I see when I run
# yum install jdk
which is
Package 2000:jdk-1.7.0_51-fcs.x86_64 already installed and latest version
Is this from some yum repo? I guess this is your custom oracle jdk
package from some custom location?
This is the Oracle JDK rpm.
That's what we want the Cassandra rpm to see. So, I'm going to try
repacking the Cassandra rpm to depend on jdk. If all goes well, this
will work, or at least let the installation get farther.
No, C* does not depend on a JDK - it does depend on a JRE, which
provides a /usr/bin/java binary.
I respectfully disagree.
So, yes.. Oracle has screwed up making use of their
once-freely-redistributable JRE and distirbutions have no choice but to
only provide OpenJDK packages. This is not really a huge issue, as C*
*does* run fine on OpenJDK.
I'm not doubting what you say, but why would the DataStax
website say to use Oracle Java?
I don't know yum/rpm as well as apt/dpkg, but this is a solvable
problem, most times, by setting up your own yum/apt repository, if you
want to provide your system with custom, non-distribution-provided
packages.
True, but this is a good idea for reasons having nothing to do
with the Cassandra issue.
I could be convinced that I'm wrong and there could be improvements made
for yum/rpm to work better, but a binary dependency of 'java >=
$somever' is about a simple as it gets - how that is met for yum is the
problem to solve, and oracle made that a "figure it out yourself"
problem for sysadmins.
I think I've solved this problem. I'm going to post another message
in which I describe what I've done.
Jon Forrest
The information transmitted in this email is intended only for the person or
entity to which it is addressed, and may contain material confidential to Xoom
Corporation, and/or its subsidiary, buyindiaonline.com Inc. Any review,
retransmission, dissemination or other use of, or taking of any action in
reliance upon, this information by persons or entities other than the intended
recipient(s) is prohibited. If you received this email in error, please contact
the sender and delete the material from your files.