[oi-dev] zeromq versions

Alexander Pyhalov alp at rsu.ru
Wed Mar 30 18:35:58 UTC 2016

Jim Klimov писал 30.03.2016 20:04:
> 30 марта 2016 г. 16:37:00 CEST, Alexander Pyhalov <alp at rsu.ru> пишет:
>> In such case I'd delivered different libzmq versions in different
>> directories, for example, in /usr/lib/libzmq-n and linked software to
>> the library which it's going to work with (don't forget about RPATH).
>> Just deliver /usr/lib/libzmq-N/libzmq.so and link software with it.
>> Also
>> I don't like providing library without providing consumer. For 
>> example,
>> Debian and Ubuntu provide only 2.2.0 and 4.0.5 versions. Both their
>> packages provide /usr/lib/libzmq.so symlink, but I don't think it's
>> good
>> when these libraries are not ABI/API-compatible. With such approach
>> it's
>> hard to say "I want this software to link with this zeromq version".
>> Perhaps, we can do something like we do for libpq.so - all software we
>> deliver set -L flags (and perhaps -R) explicitly to use correct
>> compilation symlink and /usr/lib/libzmq.so is provided only for user
>> software. As long as SONAME is changed after ABI-incompatible changes,
>> we'll be on safe side. But we should ensure that our software isn't
>> linked to "generic" libzmq.so.
> For older third-party projects that have not yet converted ans must
> consume older stable versions of libzmq (and which IMHO do not
> necessarily have to magically instantly appear as part of our gate) -
> we can provide the latest in each named release-branch (3.2.* 4.0.*
> 4.1.* so far) to facilitate convenient use of OI as the platform for
> such projects. Again, the PRed structure suffices for that, almost.
> If I get your point correctly, you'd rather not deliver the non-newest
> shared libs into /usr/lib/$(MACH) and keep them under
> /usr/share/zeromqN/lib ? Is that the only big difference?

Under /usr/lib/zeromqN, or /usr/zeromqN, it doesn't belong to 
Also ensure that after your change pyzeromq can be built without issues.
Also, please, ensure that other software dependent on zeromq explicitly
states where it's going to look for it.

More information about the oi-dev mailing list