ZeroMQ não identifica libsodium

Espero conseguir que a funcionalidade CurveCP funcione no ZeroMQ ØMQ. Estou usando o CentOS como sistema operacional subjacente.

Depois de baixar e executar o ZeroMQ, fiz o habitual./configure, make esudo make install. Então correndomake check retornou muitas passagens de teste, mas afirmou:

 libsodium not installed, skipping CURVE test

assimsudo yum install libsodium esudo ldconfig, entãomake cleane os comandos acima. Mas da próxima vez eu corri omake check, o teste CURVE é ignorado, novamente relatando ausência de libsodium.

Olhando para os testes, eu vejotest_security_curve.cpp tem#ifndef HAVE_LIBSODIUM e essa definição de pré-processador parece estar gerando o salto 'no libsodium'.

./configure --with-libsodium conformeesta página relatórioslibsodium is not installed

./configure --with-libsodium=/home/eng/work/libsodium-master --with-libsodium-include-dir=/home/eng/work/libsodium-master/src/libsodium/include --with-libsodium-lib-dir=/usr/lib64 relatórioslibsodium is not installed.

Solução

Para que isso funcione, a instalação da libsodium via YUM não forneceu uma versão viável da libsodium para uma compilação do zeromq. Ele precisava de uma compilação real de libsodium, que por sua vez exigia uma cópia recente do autoconf.

curl -OL http://ftpmirror.gnu.org/autoconf/autoconf-2.69.tar.gz
tar xzf autoconf-2.6,9.tar.gz
cd autoconf-2.69
./configure --prefix=/usr/local
make
sudo make install
sudo ldconfig  
cd ../libsodium-master
./autogen.sh
./configure
make 
sudo make install
cd ../libzmq-master
sudo ./configure --with-libsodium=/home/eng/work/libsodium-master  --with-libsodium-include-dir=/home/eng/work/libsodium-master/src/libsodium/include --with-libsodium-lib-dir=/usr/lib64
sudo make
make check  
sudo make install

questionAnswers(0)

yourAnswerToTheQuestion