[zeromq-dev] Seg fault in
Martin Townsend
martin.townsend at xsilon.com
Thu Jun 26 22:20:04 CEST 2014
This was down to a compiler issue. Anyone else wishing to build the
library for Microblaze should use GCC version >= 4.9
Regards,
Martin.
On 13/06/14 16:46, Martin Townsend wrote:
> Hi,
>
> I've cross compiled the 4.0.4 sources of zeromq for Microblaze using
> both --with-poller=select and leaving the default setting (which is
> epoll) and in both libraries I get a seg fault when tyring to bind to an
> IPC socket. The linux version is 3.14.
> Here is the code I'm trying to run:
> context = zmq_ctx_new ();
> publisher = zmq_socket (context, ZMQ_PUB);
> rc = zmq_bind (publisher, "ipc://xpwrd.ipc");
> assert (rc == 0);
>
> Here's the stack for the select version
> Thread [3] (Suspended: Signal 'SIGSEGV' received. Description:
> Segmentation fault.)
> 6 <symbol is not available> 0x90078eb0
> 5 zmq::select_t::loop() select.cpp:197 0x48053a58
> 4 zmq::select_t::worker_routine() select.cpp:211 0x48053bc0
> 3 thread_routine() thread.cpp:81 0x480660cc
> 2 start_thread() pthread_create.c:314 0x48095180
> 1 clone() clone.S:65 0x483784ec
>
> The offending line is
> void zmq::select_t::loop ()
> ....
> if (FD_ISSET (fds [i].fd, &readfds))
> fds [i].events->in_event ();
> }
> I've tried stepping and it looks like in_event is not a function and it
> jumps to an out of range address.
>
> Any help is greatly appreciated.
>
> -Martin.
> _______________________________________________
> zeromq-dev mailing list
> zeromq-dev at lists.zeromq.org
> http://lists.zeromq.org/mailman/listinfo/zeromq-dev
More information about the zeromq-dev
mailing list