CentOS packages


#1

Hello everyone,

I am experiencing the problems with the pre-compiled rpm packages for the CentOS 7. The installation of the execution package runs smoothly, but if I am trying to use the server package I have the error that libical.so.0()(64bit) is required even though I have libical-devel installed. Build from the SRPM and then installation the generated server package solves the issue. Did anyone experience such problem?


#2

Hi @jendker

What version of the libical rpm do you have installed. The binary was created on a base version of CentOS7, and if you did a yum update, libical was probably upgraded and thus do not match the rpm dependency check any more.

If this is indeed your case, then you would need to build from sources. You can download either the srpm file and follow instructions from here to build the srpm

or you could download the sources from https://github.com/PBSPro/pbspro and follow the instructions in the INSTALL file therein.

Thanks and Regards,
Subhasis


#3

I guess this is the case here :slight_smile: My libical-devel version is 1.0.1.
I’ve built from the srpm the installation was performed without any problems.


#4

Thanks for letting us know.

Regards,
Subhasis


#5

libical-devel is the headers. THe library itself is usually either “libical” or “libical1” (because libical2 is a beta release of the next major release – which you can also use if you slightly patch the PBSPro source code, since it currently breaks the original API).


#6

Just for completeness ,this issue was also as part of
CentOS7 install issues

Regarding the precompiled packages (14.1.0-13.1), they presently fail to install on our system due to
A. the packages require sendmail - but we use postfix.
B. the packages require libical.so.0 but we have libical.so.1

A search for “libical” will turn up both threads.

/Bjarne


#7

Yes the version of the build available is for Centos 7, so it does not work on CentOS 7.1 etc where libraries like libical is upgraded. The best thing to do in that situation is to compile from sources on newer versions of CentOS.

That way, you can also change from using sendmail to postfix.

Regards,
Subhasis


#8

I have filed https://pbspro.atlassian.net/browse/PP-399 to address the sendmail issue. The issue exists for the server package only. It should allow sendmail or postfix to satisfy the MTA requirment.


#9

As far as B. is concerned, in my experience you can actually softlink the newer libical to the library name that the compiled PBSPro expects and it should work – it’s only libical2 that (very slightly) breaks the ABI/API.

[By the way, if you want to specify reservations with timezones that use daylight saving time it’s worth recompiling with the beta libical2 library after some trivial tweaks – there are some small bugs with DST switching in libical1 that can make your standing reservations start an hour early/late for a week or so when the DST changes. Of course if you value your sanity you’d actually use standing reservations that use a timezone that doesn’t jump around, e.g. UTC.]

I consider that missing .0 DSO a CentOS bug, BTW, since 7.1 is supposed to be backward compatible with binaries compiled for CentOS 7.

Normally when you change only the minor release number in a distribution you keep the older DSOs around for your packages when a new version comes out, to retain backward compatibility (that’s the whole point of naming the new library .1, so it can coexist with its older sibling). Of course on some distros that sometimes requires you to install some “compat” RPMs, and perhaps no one bothered to build one for this package.