0

I am trying to install nxLog on centOs5.

When running "rpm -ivh nxlog-ce-2.8.1248-1.x86_64.rpm" I get the following error:

error: Failed dependencies:
    libcap.so.2()(64bit) is needed by nxlog-ce-2.8.1248-1.x86_64
    libcrypto.so.10()(64bit) is needed by nxlog-ce-2.8.1248-1.x86_64
    libcrypto.so.10(libcrypto.so.10)(64bit) is needed by nxlog-ce-2.8.1248-1.x86_64
    libdbi >= 0.8.1 is needed by nxlog-ce-2.8.1248-1.x86_64
    libdbi.so.0()(64bit) is needed by nxlog-ce-2.8.1248-1.x86_64
    libexpat.so.1()(64bit) is needed by nxlog-ce-2.8.1248-1.x86_64
    libssl.so.10()(64bit) is needed by nxlog-ce-2.8.1248-1.x86_64
    libssl.so.10(libssl.so.10)(64bit) is needed by nxlog-ce-2.8.1248-1.x86_64

I have been looking up these dependencies (yum can't resolve them), and I can find many of them in packages such as this one:

http://rpm.pbone.net/index.php3/stat/4/idpl/20908084/dir/centos_other/com/openssl10-libs-1.0.1e-1.ius.centos6.x86_64.rpm.html

These are all labeled for centOs 6+, however. The nxlog documentation states it supports centOs 5. Is there a clean way to resolve these dependencies? Or do I have to mix and match these packages (and once I do have them all on my machine hope RPM will resolve them?) until I can get nxlog running?

Thanks

Dax Durax
  • 1,607
  • 5
  • 23
  • 31

1 Answers1

2

There are at least two ways to approach a problem like this:

  1. find and use an alternate/supplementary repository which provides the package
  2. recompile selected packages so that they work on the older system.

CentOS 5 is rather old (CentOS 7 was released last year, CentOS 5 gets only fixes). Still, focusing on a single desired package, an afternoon's work would be enough to either succeed or discover that there are numerous dependencies which also have to be rebuilt. If there is no suitable existing repository, and the program really does build/work with the older system, then rebuilding is not that painful.

Looking at the current sources, there is an RPM spec-file (looking at nxlog.spec.RHEL5) in the packaging/redhat subdirectory. That lists what the developer thought were the minimum requirements for building the package:

BuildRequires:  BuildRequires: apr-devel pcre-devel openssl-devel libdbi-devel libcap-devel expat-devel openssl-devel gcc libtool glibc-devel libgcc perl  
Prereq(post,preun):     /sbin/install-info  
Requires(pre):  shadow-utils, apr >= 1.2, libdbi >= 0.8.1, openssl, pcre, expat, zlib 

The bulk of those seem to be no problem.

  • You should verify if your system has at least the minimum cited for the versions.
  • If you can satisfy those, then (adding rpmbuild) installing the packages listed is the next step.
  • setup to use rpmbuild by putting the tar file (which is listed in the spec-file's Source line) in ~/rpmbuild/SOURCES
  • run rpmbuild -ba nxlog.spec (giving as needed the full pathname of that file -- renaming to use ".spec" suffix since rpmbuild seems to care about file-suffixes).

If all goes well, you will have an rpm file under ~/rpmbuild/RPMS

Thomas Dickey
  • 51,086
  • 7
  • 70
  • 105