在Linux上没有root权限的ZeroMQ(0MQ)的Java绑定配置

时间:2013-06-03 13:36:18

标签: jzmq

我是zeroMQ的新手,我在运行CentOS版本5.9的服务器上坚持使用java绑定ØMQ。

不幸的是,我在服务器上拥有超级用户/ root 权限,我正在尝试以具有受限权限的普通用户身份安装ØMQ。我按照http://www.zeromq.org/area:download

上的说明安装了ØMQ
Make sure that libtool, autoconf, automake are installed.
Check whether uuid-dev package, uuid/e2fsprogs RPM or equivalent on your system is installed.
Unpack the .tar.gz source archive.
Run ./configure, followed by make.

显然无法运行以下内容

To install ØMQ system-wide run sudo make install.
On Linux, run sudo ldconfig after installing ØMQ.

然后我尝试安装jzmq。

  1. 克隆[git clone https://github.com/zeromq/jzmq.git]
  2. Ran autogen.sh
  3. Ran configure
  4. 此时我收到以下错误

    checking for ZeroMQ... no
    checking zmq.h usability... no
    checking zmq.h presence... no
    checking for zmq.h... no
    configure: error: cannot find zmq.h
    

    由于上述错误,我无法运行java测试并获得错误“java.library.path中没有jzmq”。

    当你没有root权限安装时,有人可以帮助/指导我如何为zeromq工作获取java绑定吗?很难让IT部门在服务器上安装新软件。

    感谢您的帮助。

    注意:我没有对/ usr目录的写权限

    由于 GBP

5 个答案:

答案 0 :(得分:2)

可以通过添加--with-zeromq = / home / user / zeromq(zeromq的安装目录)来解决这个问题

./configure --with-zeromq=/home/user/zeromq

其他步骤包括 export LD_LIBRARY_PATH = / home / user / zeromq / lib

答案 1 :(得分:2)

您还可以使用JeroMQ(https://github.com/zeromq/jeromq),它是ZeroMQ的纯Java实现

答案 2 :(得分:0)

我通过在OEL 6上运行autogen.sh然后在CentOS 5.9上运行configure / compiling / installation来实现这一点。我简要地研究了为什么autogen.sh失败了,问题是工具链太旧了。由于我有一个更新的系统,现有的工具链可以在CentOS 5以外的地方运行autogen.sh,这对我来说是最简单的方法。我确信它可以与其他现代Linux变种一起使用,我的指尖上有OEL 6。

我也无法访问安装的标准目录。为了实现这一点,我将zmq.jar添加到我的类路径中,运行时链接程序需要能够找到zeromq和jzmq运行时库。

答案 3 :(得分:0)

我在CentOS 6.5上遇到了同样的问题,发现你需要安装“gcc-c ++”来实现这个目的。

我使用以下内容来安装依赖项:

yum -y install jdk zeromq-devel unzip libtool gcc autoconf automake gcc-c ++ python

请注意,“jdk”来自我们的私有存储库,它与从java.com下载的内容相同

以下公共存储库安装在服务器上:

原子

答案 4 :(得分:0)

实际上,我最终遇到了同样的问题,以下脚本对我有用,我在那里安装了zeromq~(所以我有〜/ lib包含libzmq.a libzmq.la libzmq.so libzmq.so.3 libzmq.so.3.1.0 pkgconfig)

./autogen.sh ./configure --prefix=$HOME \   #because you don't have root privileges

   --with-zeromq=$HOME --includedir=$HOME/include/ --libdir=$HOME/lib/ 
./make 
./make -n install

#检查它是否将其安装到正确的位置

make install