zeromq / clrzmq4

ZeroMQ C# namespace (.NET and mono, Windows, Linux and MacOSX, x86 and amd64)
GNU Lesser General Public License v3.0
237 stars 112 forks source link

Problem: manual hack in README for libzmq.so #181

Closed bluca closed 5 years ago

bluca commented 5 years ago

Solution: just install libzmq3-dev instead which already provides libzmq.so as well as the library

metadings commented 5 years ago

No. I do not want you to install this really, really old version.

bluca commented 5 years ago

That's not an old version. The version in the -dev packages in Debian and Ubuntu package names is NOT the upstream version, but the last time the API compatibility was broken.

https://packages.ubuntu.com/bionic/libzmq3-dev

Package: libzmq3-dev (4.2.5-1ubuntu0.1 and others) 
bluca commented 5 years ago

In other words, libzmq5 and libzmq3-dev are the exact same version - the former installs the shared library with the ABI revision in the filename, while the latter installs the unversioned symlink (libzmq.so), the headers, and other development files. libzmq3-dev depends on libzmq5, so both are installed.

metadings commented 5 years ago

I'm sorry, I didn't know. By uninstalling libzmq5, I also had to uninstall ffmpeg, libavdevice57, libavfilter6, gstreamer1.0-libav and mint-meta-codecs. They have somehow a dependency on libzmq5... I'm using Linux Mint 19.1 Cinnamon.

bluca commented 5 years ago

but libzmq5 doesn't have to be uninstalled - libzmq3-dev is an additional package that contains the .so symlink, pkg-config, headers, and so on

bluca commented 5 years ago

In other words, both are installed on a system where builds are done, either of bindings or applications - a user on the other hand will only install libzmq5, as that's where the actual shared object library lives