methodmissing / rbczmq

Ruby extension that wraps the official high level ZeroMQ C API ( http://czmq.zeromq.org/ )
http://github.com/methodmissing/rbczmq
MIT License
125 stars 32 forks source link

libsodium dependency #45

Open aleyan opened 9 years ago

aleyan commented 9 years ago

According to the README this is a fat gem that has all the libs baked in with no installation of system libs necessary.

However, when I tried to build it, it complains about sodium.h being missing. It looks like it is one of the dependencies for zeromq. I am not very knowledgeable about these things because I live in a ruby world, but my guess is that you already had it in your path and it wasn't clear that it was being pulled in.

On OSX Yosemite does not come with libsodium. I got it via macport and then set the path to it via C_INCLUDE_PATH and CPLUS_INCLUDE_PATH because pkg-config wasn't used.

Do we want to include libsodium as another submodule or do something else? I can help out if needed.

"make && make install"
Making all in src
/Applications/Xcode.app/Contents/Developer/usr/bin/make  all-am
  CXX      libzmq_la-address.lo
  CXX      libzmq_la-clock.lo
  CXX      libzmq_la-ctx.lo
  CXX      libzmq_la-curve_client.lo
curve_client.cpp:24:10: fatal error: 'sodium.h' file not found
#include <sodium.h>
         ^
1 error generated.
make[2]: *** [libzmq_la-curve_client.lo] Error 1
make[1]: *** [all] Error 2
make: *** [all-recursive] Error 1
ZeroMQ compile error!
*** ../../../../ext/rbczmq/extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers.  Check the mkmf.log file for more details.  You may
need configuration options.

Provided configuration options:
    --with-opt-dir
    --without-opt-dir
    --with-opt-include
    --without-opt-include=${opt-dir}/include
    --with-opt-lib
    --without-opt-lib=${opt-dir}/lib
    --with-make-prog