Armin Steinhoff
|
Re: Port of ZeroMQ to QNX 6.4
|
Armin Steinhoff
03/06/2010 11:01 AM
post48963
|
Re: Port of ZeroMQ to QNX 6.4
Hi,
when I recompile the version 1.0.1 of ZeroMQ I have the following problem:
source='c_local_lat.c' object='c_local_lat-c_local_lat.o' libtool=no \
DEPDIR=.deps depmode=gcc /bin/sh ../../../config/depcomp \
qcc -DHAVE_CONFIG_H -I. -I. -I../../../libzmq/zmq -I../../../libzmq/zmq -I../../.. -I../../../libzmq -I../../..
-I../../../libzmq -D_THREAD_SAFE -Wall -pedantic -Werror -I../../../libczmq -g -O2 -c -o c_local_lat-c_local_lat.o `
test -f 'c_local_lat.c' || echo './'`c_local_lat.c
/bin/sh ../../../libtool --tag=CC --mode=link qcc -g -O2 -o c_local_lat c_local_lat-c_local_lat.o ../../../libczmq/
libczmq.la ../../../libzmq/libzmq.la -lstdc++ -lm -lsocket
qcc -g -O2 -o .libs/c_local_lat c_local_lat-c_local_lat.o ../../../libczmq/.libs/libczmq.so /opt/zmq-1.0.1/libzmq/.libs
/libzmq.so ../../../libzmq/.libs/libzmq.so -lstdc++ -lm -lsocket -Wl,--rpath -Wl,/usr/local/lib
/usr/qnx640/host/qnx6/x86/usr/bin/ntox86-ld: .libs/c_local_lat: hidden symbol `_mcount' in /usr/qnx640/target/qnx6/x86/
lib/libc.a(mcount.o) is referenced by DSO
/usr/qnx640/host/qnx6/x86/usr/bin/ntox86-ld: final link failed: Nonrepresentable section on output
cc: /usr/qnx640/host/qnx6/x86/usr/bin/ntox86-ld error 1
make[3]: *** [c_local_lat] Error 1
make[3]: Leaving directory `/opt/zmq-1.0.1/perf/tests/zmq'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/opt/zmq-1.0.1/perf/tests'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/opt/zmq-1.0.1/perf'
make: *** [all-recursive] Error 1
#
> Hello all,
>
> I have tried to recompile ZeroMQ for QNX 6.4 and need some help.
>
> Here are my steps:
>
> - configure command: "CC=qcc CXX=QCC configure --with-c --with-perf"
> - because of rpl_malloc isn't available I have added "#define rpl_malloc
> malloc" to platform.hpp
> - modified the LIBS specification of the Makefile located in perf to "LIBS = -
> lcpp -lcxa -lstdc++ -lssl -lsocket -lecpp"
>
> With this modification the recompilation works well.
>
> Starting "local_lat" with the command "local_lat tcp://192.168.178.129:5555
> 10 1000" shows the following abort:
>
> # local_lat tcp://192.168.178.129:5555 10 10
> Assertion failed: !(it->revents & POLLNVAL) (poll.cpp:170)
> Abort (core dumped)
>
> There must also be some basic problems ... the termination of the command "
> local_lat" aborts within the libcpp.so.4 calling the destructor of io_base.
>
> Are there any tips to solve these problems?
>
> The code of ZeroMQ works well with Linux and other OSes ...
>
> Best Regards
>
> --Armin
>
> PS: ZeroMQ is available for Windows, Linux and other OSes at: http://www.
> zeromq.org
|
|
|
Armin Steinhoff
|
Re: Port of ZeroMQ to QNX 6.4
|
Armin Steinhoff
03/06/2010 11:49 AM
post48964
|
Re: Port of ZeroMQ to QNX 6.4
What is the reason of this un-gracefully termination?
Breakpoint 1, main (argc=1, argv=0x8047b14) at local_lat.c:26
26 {
(gdb) c
Continuing.
usage: local_lat <bind-to> <message-size> <roundtrip-count>
Program received signal SIGSEGV, Segmentation fault.
0xb826042f in std::ios_base::~ios_base () from /usr/qnx640/target/qnx6/x86/lib/libcpp.so.4
(gdb) backtrace
#0 0xb826042f in std::ios_base::~ios_base () from /usr/qnx640/target/qnx6/x86/lib/libcpp.so.4
#1 0xb84051e6 in __tcf_3 () from /usr/qnx640/target/qnx6/x86/lib/libecpp.so.4
#2 0xb0329445 in __cxa_finalize () from /usr/qnx640/target/qnx6/x86/lib/libc.so.3
#3 0xb83fb624 in _btext () from /usr/qnx640/target/qnx6/x86/lib/libecpp.so.4
#4 0xb840c149 in _fini () from /usr/qnx640/target/qnx6/x86/lib/libecpp.so.4
#5 0xb033dae6 in fini () from /usr/qnx640/target/qnx6/x86/lib/libc.so.3
#6 0xb033dc48 in _do_exit_fini () from /usr/qnx640/target/qnx6/x86/lib/libc.so.3
#7 0xb03294e1 in _cleanup () from /usr/qnx640/target/qnx6/x86/lib/libc.so.3
#8 0xb0329bd7 in exit () from /usr/qnx640/target/qnx6/x86/lib/libc.so.3
#9 0x08048830 in _start ()
(gdb)
> Hello all,
>
> I have tried to recompile ZeroMQ for QNX 6.4 and need some help.
>
> Here are my steps:
>
> - configure command: "CC=qcc CXX=QCC configure --with-c --with-perf"
> - because of rpl_malloc isn't available I have added "#define rpl_malloc
> malloc" to platform.hpp
> - modified the LIBS specification of the Makefile located in perf to "LIBS = -
> lcpp -lcxa -lstdc++ -lssl -lsocket -lecpp"
>
> With this modification the recompilation works well.
>
> Starting "local_lat" with the command "local_lat tcp://192.168.178.129:5555
> 10 1000" shows the following abort:
>
> # local_lat tcp://192.168.178.129:5555 10 10
> Assertion failed: !(it->revents & POLLNVAL) (poll.cpp:170)
> Abort (core dumped)
>
> There must also be some basic problems ... the termination of the command "
> local_lat" aborts within the libcpp.so.4 calling the destructor of io_base.
>
> Are there any tips to solve these problems?
>
> The code of ZeroMQ works well with Linux and other OSes ...
>
> Best Regards
>
> --Armin
>
> PS: ZeroMQ is available for Windows, Linux and other OSes at: http://www.
> zeromq.org
|
|
|