Impossibile installare zeroMQ su Mavericks

1

Sto iniziando con zeroMQ ma potrei farlo funzionare. Ho installato zeroMQ da tarball usando i seguenti comandi:

$ ./autogen.sh
$ ./configure --prefix=/usr/local/pkg-config-0.23 --datarootdir=/usr/share
$ make
$ make check
$ sudo make install

Mentre facevo make check ho avuto alcuni fallimenti:

========================================
   zeromq 4.0.4: tests/test-suite.log
========================================

# TOTAL: 43
# PASS:  40
# SKIP:  0
# XFAIL: 1
# FAIL:  2
# XPASS: 0
# ERROR: 0

.. contents:: :depth: 2

FAIL: test_system
=================

W: Only able to create 253 sockets on this box
I: Tune your system to increase maximum allowed file handles
I: On OS/X, run 'ulimit -n 1200' in bash

XFAIL: test_abstract_ipc
========================

Assertion failed: (rc == 0), function main, file test_abstract_ipc.cpp, line 31.

FAIL: test_shutdown_stress
==========================

Assertion failed: (s2), function main, file test_shutdown_stress.cpp, line 64.

Voglio usare zeroMQ con Python su OS X

UPDATE 30 giugno

Quindi, prima di pubblicare che ho provato con brew, sembrava che tutto andasse bene eccetto brew link zmq

Così provato a collegare manualmente il link simbolico

cd / usr / local / opt

ln -s /usr/local/Cellar/zeromq/4.0.3/lib/ zeromq

cd / usr / local / include /

ln -s ../Cellar/zeromq/4.0.3/include/zmq_utils.h zmq_utils.h

ln -s ../Cellar/zeromq/4.0.3/include/zmq.h zmq.h

poi ho provato : sudo ARCHFLAGS="- arch x86_64" gem install zmq - --with-zmq-dir = / usr / local / opt / zeromq

ma ha ricevuto i seguenti errori

controllo per zmq.h ... sì

controllo di zmq_init () in -lzmq ... sì

Fantastico, ho trovato il tuo zmq install ...

creazione di Makefile

make "DESTDIR="

compiling rbzmq.c

rbzmq.c:968:7: error: use of undeclared identifier
'ZMQ_RECOVERY_IVL_MSEC'

        case ZMQ_RECOVERY_IVL_MSEC:

             ^

rbzmq.c:990:10: error: use of undeclared identifier 'ZMQ_HWM'

    case ZMQ_HWM:

         ^

rbzmq.c:991:10: error: use of undeclared identifier 'ZMQ_SWAP'

    case ZMQ_SWAP:

         ^

rbzmq.c:995:10: error: use of undeclared identifier 'ZMQ_MCAST_LOOP'

    case ZMQ_MCAST_LOOP:

         ^

rbzmq.c:1292:10: error: use of undeclared identifier 'ZMQ_HWM'

    case ZMQ_HWM:

         ^

rbzmq.c:1293:10: error: use of undeclared identifier 'ZMQ_SWAP'

    case ZMQ_SWAP:

         ^

rbzmq.c:1297:10: error: use of undeclared identifier 'ZMQ_MCAST_LOOP'

    case ZMQ_MCAST_LOOP:

         ^

rbzmq.c:1315:10: error: use of undeclared identifier
'ZMQ_RECOVERY_IVL_MSEC'

    case ZMQ_RECOVERY_IVL_MSEC:

         ^

rbzmq.c:1443:81: error: too few arguments to function call, expected
4, have 3

    send_args->rc = zmq_send(send_args->socket, send_args->msg, send_args->flags);

                    ~~~~~~~~                                                    ^

/usr/local/include/zmq.h:354:1: note: 'zmq_send' declared here

ZMQ_EXPORT int zmq_send (void *s, const void *buf, size_t len, int
flags);

^

/usr/local/include/zmq.h:67:27: note: expanded from macro 'ZMQ_EXPORT'

##       define ZMQ_EXPORT __attribute__ ((visibility("default")))

                          ^

rbzmq.c:1517:38: error: too few arguments to function call, expected
4, have 3

        rc = zmq_send (s, &msg, flags);

             ~~~~~~~~                ^

/usr/local/include/zmq.h:354:1: note: 'zmq_send' declared here

ZMQ_EXPORT int zmq_send (void *s, const void *buf, size_t len, int
flags);

^

/usr/local/include/zmq.h:67:27: note: expanded from macro 'ZMQ_EXPORT'

##       define ZMQ_EXPORT __attribute__ ((visibility("default")))

                          ^

rbzmq.c:1541:81: error: too few arguments to function call, expected
4, have 3

    recv_args->rc = zmq_recv(recv_args->socket, recv_args->msg, recv_args->flags);

                    ~~~~~~~~                                                    ^

/usr/local/include/zmq.h:356:1: note: 'zmq_recv' declared here

ZMQ_EXPORT int zmq_recv (void *s, void *buf, size_t len, int flags);

^

/usr/local/include/zmq.h:67:27: note: expanded from macro 'ZMQ_EXPORT'

##       define ZMQ_EXPORT __attribute__ ((visibility("default")))

                          ^

rbzmq.c:1602:38: error: too few arguments to function call, expected
4, have 3

        rc = zmq_recv (s, &msg, flags);

             ~~~~~~~~                ^

/usr/local/include/zmq.h:356:1: note: 'zmq_recv' declared here

ZMQ_EXPORT int zmq_recv (void *s, void *buf, size_t len, int flags);

^

/usr/local/include/zmq.h:67:27: note: expanded from macro 'ZMQ_EXPORT'

#       define ZMQ_EXPORT __attribute__ ((visibility("default")))

                          ^

rbzmq.c:1675:50: error: use of undeclared identifier 'ZMQ_HWM'

    rb_define_const (zmq_module, "HWM", INT2NUM (ZMQ_HWM));

                                                 ^

/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/include/ruby-2.0.0/ruby/ruby.h:1167:35:
note: expanded from macro 'INT2NUM'

## define INT2NUM(v) INT2FIX((int)(v))

                                  ^

/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/include/ruby-2.0.0/ruby/ruby.h:241:45:
note: expanded from macro 'INT2FIX'

#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))

                                            ^

rbzmq.c:1676:51: error: use of undeclared identifier 'ZMQ_SWAP'

    rb_define_const (zmq_module, "SWAP", INT2NUM (ZMQ_SWAP));

                                                  ^

/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/include/ruby-2.0.0/ruby/ruby.h:1167:35:
note: expanded from macro 'INT2NUM'

# define INT2NUM(v) INT2FIX((int)(v))

                                  ^

/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/include/ruby-2.0.0/ruby/ruby.h:241:45:
note: expanded from macro 'INT2FIX'

##define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))

                                            ^

rbzmq.c:1683:57: error: use of undeclared identifier 'ZMQ_MCAST_LOOP'

    rb_define_const (zmq_module, "MCAST_LOOP", INT2NUM (ZMQ_MCAST_LOOP));

                                                        ^

/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/include/ruby-2.0.0/ruby/ruby.h:1167:35:
note: expanded from macro 'INT2NUM'

## define INT2NUM(v) INT2FIX((int)(v))

                                  ^

/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/include/ruby-2.0.0/ruby/ruby.h:241:45:
note: expanded from macro 'INT2FIX'

#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))

                                            ^

rbzmq.c:1698:64: error: use of undeclared identifier
'ZMQ_RECOVERY_IVL_MSEC'

    rb_define_const (zmq_module, "RECOVERY_IVL_MSEC", INT2NUM (ZMQ_RECOVERY_IVL_MSEC));

                                                               ^

/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/include/ruby-2.0.0/ruby/ruby.h:1167:35:
note: expanded from macro 'INT2NUM'

# define INT2NUM(v) INT2FIX((int)(v))

                                  ^

/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/include/ruby-2.0.0/ruby/ruby.h:241:45:
note: expanded from macro 'INT2FIX'

#define INT2FIX(i) ((VALUE)(((SIGNED_VALUE)(i))<<1 | FIXNUM_FLAG))

                                            ^

16 errors generated.

make: *** [rbzmq.o] Error 1



Gem files will remain installed in
/Library/Ruby/Gems/2.0.0/gems/zmq-2.1.4 for inspection.

Risultati registrati in /Library/Ruby/Gems/2.0.0/gems/zmq-2.1.4 /./ gem_make.out

    
posta Ciasto piekarz 29.06.2014 - 09:35
fonte

2 risposte

1

Puoi fare riferimento a questo rapporto sui bug:

link

Se vuoi essere in grado di creare con quegli assegni che non hanno esito negativo, fai riferimento a quel rapporto sui bug per vedere quando viene effettuata una patch.

Nel frattempo, devi vivere senza la funzionalità che non riesce o correggere il bug da solo.

    
risposta data 29.06.2014 - 16:13
fonte
2

Installazione di ZeroMQ con brew

Considerando l'installazione di ZeroMQ con il gestore di pacchetti brew . brew dovrebbe occuparsi dei problemi di generazione per te.

Per installare brew, esegui questo comando in Terminal.app :

ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"

Quindi installa ZeroMQ usando:

brew install zeromq

Con ZeroMQ installato, puoi seguire i passi specifici di Python sulla pagina PyZMO .

Installazione dall'origine

In alternativa, prova a seguire l'approccio non basato sulla brew documentato sulla pagina ufficiale di ZeroMQ, Building and Installazione di PyZMQ .

Registra un problema

Poiché questo problema non sembra influenzare gli altri, prendi in considerazione l'accesso diretto a un problema con PyZMO . Lì raggiungerai gli sviluppatori principali e la loro intuizione si spera possa rapidamente produrre una soluzione.

    
risposta data 29.06.2014 - 17:51
fonte

Leggi altre domande sui tag