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 > [email protected] > http://lists.zeromq.org/mailman/listinfo/zeromq-dev _______________________________________________ zeromq-dev mailing list [email protected] http://lists.zeromq.org/mailman/listinfo/zeromq-dev
