• Dennis Klein's avatar
    Install relocatable dylibs (MacOS) · 0dda6366
    Dennis Klein authored
    Problem: When building libzmq with CMake, the installed libzmq.dylib
      has a relative install name (otool -D libzmq.dylib) on MacOS. This
      is a regression against building via autotools which sets an
      absolute install name. Effectively, the CMake built libzmq.dylib
      is rendered useless if installed in non-system directories and
      used in environments without explicit DYLD_LIBRARY_PATH mgmt. For
      example running any of the installed executables currently fails:
      $ /some_install_prefix/bin/inproc_lat
      dyld: Library not loaded: libzmq.5.dylib
        Referenced from: /some_install_prefix/bin/inproc_lat
        Reason: image not found
      Trace/BPT trap: 5
    
    Solution: Best practice is to install relocatable dylibs.
      On MacOS this means setting an install name with a special prefix,
      e.g. @rpath/libzmq.dylib, and adding the relevant search paths
      to the embedded rpath list. In this patch the necessary CMake options
      are added to generate the desired relocatable dylibs. Find more
      information on: https://cmake.org/Wiki/CMake_RPATH_handling.
    0dda6366
Name
Last commit
Last update
.github Loading commit data...
RELICENSE Loading commit data...
builds Loading commit data...
doc Loading commit data...
external/unity Loading commit data...
include Loading commit data...
m4 Loading commit data...
packaging Loading commit data...
perf Loading commit data...
src Loading commit data...
tests Loading commit data...
tools Loading commit data...
unittests Loading commit data...
.clang-format Loading commit data...
.gitignore Loading commit data...
.hgeol Loading commit data...
.mailmap Loading commit data...
.travis.yml Loading commit data...
AUTHORS Loading commit data...
CMakeLists.txt Loading commit data...
COPYING Loading commit data...
COPYING.LESSER Loading commit data...
Dockerfile Loading commit data...
Doxygen.cfg Loading commit data...
INSTALL Loading commit data...
Jenkinsfile Loading commit data...
Makefile.am Loading commit data...
NEWS Loading commit data...
README.cygwin.md Loading commit data...
README.doxygen.md Loading commit data...
README.md Loading commit data...
acinclude.m4 Loading commit data...
appveyor.yml Loading commit data...
autogen.sh Loading commit data...
branding.bmp Loading commit data...
ci_build.sh Loading commit data...
ci_deploy.sh Loading commit data...
configure.ac Loading commit data...
installer.ico Loading commit data...
version.sh Loading commit data...