如何在OSX上为ZeroMQ编译jzmq?

Jos*_*hua 10 macos pkg-config zeromq jzmq

尝试按照以下说明进行操作:http://github.com/zeromq/jzmq

我使用Homebrew安装了pkg-config,然后运行以下命令:./ autogen.sh ./configure

配置失败:

checking how to hardcode library paths into programs... immediate
./configure: line 15263: syntax error near unexpected token `newline'
./configure: line 15263: `    PKG_CHECK_MODULES('

小智 18

更好的解决方案是:

eval `brew --config | grep HOMEBREW_PREFIX | sed 's/: /=/'`
sudo bash -c 'echo '$HOMEBREW_PREFIX/share/aclocal' >> `aclocal --print-ac-dir`/dirlist'
Run Code Online (Sandbox Code Playgroud)

这将允许aclocal会的版本附带的OSX找到任何通过自制软件的软件包安装宏.

  • 也为我工作:)谢谢@Beekhof! (2认同)

小智 2

我制作了一个关于 MacOS 的 jzmq 构建的简单列表。

  1. 安装酿造

    https://brew.sh

  2. 安装jzmq构建工具

    brew install autoconf
    
    brew install automake
    
    brew install libtool
    
    brew install pkg-config
    
    brew install zeromq@3.2
    
    Run Code Online (Sandbox Code Playgroud)
  3. 下载jzmq源码

    https://github.com/zeromq/jzmq源码下载到~/somewhere/jzmq

  4. 添加符号链接到/usr/local/include

    cd /usr/local/include
    
    ln -s /usr/local/Cellar/zeromq\@3.2/3.2.5/include/zmq.h
    
    ln -s /usr/local/Cellar/zeromq\@3.2/3.2.5/include/zmq_utils.h 
    
    Run Code Online (Sandbox Code Playgroud)
  5. 将符号链接添加到 /usr/local/lib

    cd /usr/local/lib
    
    ln -s /usr/local/Cellar/zeromq\@3.2/3.2.5/lib/libzmq.3.dylib
    
    ln -s /usr/local/Cellar/zeromq\@3.2/3.2.5/lib/libzmq.a
    
    ln -s /usr/local/Cellar/zeromq\@3.2/3.2.5/lib/libmq.dylib
    
    ln -s /usr/local/Cellar/zeromq\@3.2/3.2.5/lib/pkgconfig/
    
    Run Code Online (Sandbox Code Playgroud)
  6. 构建 jzmq-jni

    cd ~/somewhere/jzmq
    
    cd jzmq-jni
    
    
    ./autogen.sh
    
    ./configure
    
    make
    
    make install
    
    Run Code Online (Sandbox Code Playgroud)
  7. 将选项添加到 VM 选项

虚拟机选项-Djava.library.path=/usr/local/lib