Hi Mikko, Am able to get the zeromq src to compile and link such that the libzmq.a and libzmq.la files are created in the hidden .lib directory.
Start seeing link failures when I try to link to to the existing libzmq.la / libzmq.a files. I've attached the console output from the failures I'm seeing when I try to compile and link the performance package. The link errors of interest I'm seeing in this example are: undefined reference to `std::char_traits<unsigned char>::copy(unsigned char*, unsigned char const*, unsigned)' undefined reference to `epoll_create' undefined reference to `epoll_ctl' undefined reference to `epoll_wait' All these calls appear to link to libstdc++.so.6, and gcc-3.3.1 is only compatible with libstdc++.so.5. Any support is greatly appreciated! Thanks, Alex On Mon, Aug 29, 2011 at 3:53 PM, Mikko Koppanen <mikko.koppa...@gmail.com>wrote: > On Mon, Aug 29, 2011 at 9:02 PM, Alex Ramirez <alex.r.rami...@gmail.com> > wrote: > > Hi, > > > > Have been attempting to cross compile libzmq.a for a PowerPC-405 > > processor which uses the following tool set versions: > > > > gcc 3.3.1 > > glibc 2.3.2 > > > > As expected, have received multiple linking errors relating to > > features not available with libstdc++.so.5 (gcc 3.3.1). The > > PopwerPC-405 is prepackaged with a custom linux installation that is > > provided by a third party vendor. I've contacted them about support > > for upgrading to newer versions of gcc and glibc, tough it's likely > > this will not be an option. > > > > Has any had any experience/success cross compiling zeromq libraries > > with these older toolsets? > > > > Hi Alex, > > which features specifically are not available? > > -- > Mikko Koppanen > _______________________________________________ > zeromq-dev mailing list > zeromq-dev@lists.zeromq.org > http://lists.zeromq.org/mailman/listinfo/zeromq-dev > -- “Yesterday is history. Tomorrow is a mystery. Today is a gift. That's why it is called the present.”
/home/omni/omni-linux-src/build-tools/gdb/build_gdb/bfd/libtool --tag=CXX --mode=link /home/omni/omni-linux-sdk/tools/bin/powerpc-405-linux-gnu-g++ -L/home/omni/omni-linux-sdk/tools/powerpc-405-linux-gnu/lib -I/home/omni/Desktop/zeromqppc/luuid/include -I/home/omni/omni-linux-sdk/tools/include -I/home/omni/omni-linux-sdk/tools/powerpc-405-linux-gnu/sys-include -L/home/omni/Desktop/zeromqppc/luuid/lib -o local_lat local_lat.o ../src/libzmq.la -luuid -lrt -lpthread -lstdc++ libtool: ignoring unknown tag CXX libtool: link: warning: library `/home/omni/omni-linux-sdk/tools/powerpc-405-linux-gnu/lib/libstdc++.la' was moved. libtool: link: warning: library `/home/omni/omni-linux-sdk/tools/powerpc-405-linux-gnu/lib/libstdc++.la' was moved. /home/omni/omni-linux-sdk/tools/bin/powerpc-405-linux-gnu-g++ -I/home/omni/Desktop/zeromqppc/luuid/include -I/home/omni/omni-linux-sdk/tools/include -I/home/omni/omni-linux-sdk/tools/powerpc-405-linux-gnu/sys-include -o local_lat local_lat.o -L/home/omni/omni-linux-sdk/tools/powerpc-405-linux-gnu/lib -L/home/omni/Desktop/zeromqppc/luuid/lib ../src/.libs/libzmq.a -L/home/omni/omni-linux-src/build-tools/crosstool-0.25/build/powerpc-405-linux-gnu/gcc-3.3.1-glibc-2.3.2/build-gcc/powerpc-405-linux-gnu/libstdc++-v3/src -L/home/omni/omni-linux-src/build-tools/crosstool-0.25/build/powerpc-405-linux-gnu/gcc-3.3.1-glibc-2.3.2/build-gcc/powerpc-405-linux-gnu/libstdc++-v3/src/.libs -lm -lm -lm -L/home/omni/omni-linux-src/build-tools/crosstool-0.25/build/powerpc-405-linux-gnu/gcc-3.3.1-glibc-2.3.2/build-gcc/gcc -L/home/omni/omni-linux-src/build-tools/crosstool-0.25/result/powerpc-405-linux-gnu/gcc-3.3.1-glibc-2.3.2/powerpc-405-linux-gnu/bin -L/home/omni/omni-linux-src/build-tools/crosstool-0.25/result/powerpc-405-linux-gnu/gcc-3.3.1-glibc-2.3.2/powerpc-405-linux-gnu/lib -L/home/omni/omni-linux-src/build-tools/crosstool-0.25/result/powerpc-405-linux-gnu/gcc-3.3.1-glibc-2.3.2/lib/gcc-lib/powerpc-405-linux-gnu/3.3.1 -L/home/omni/omni-linux-src/build-tools/crosstool-0.25/result/powerpc-405-linux-gnu/gcc-3.3.1-glibc-2.3.2/lib/gcc-lib/powerpc-405-linux-gnu/3.3.1/../../../../powerpc-405-linux-gnu/lib -lgcc_s -lc -lgcc_s -lm -lgcc_s -lc -lgcc_s -luuid -lrt -lpthread /home/omni/omni-linux-sdk/tools/powerpc-405-linux-gnu/lib/libstdc++.so -lm -lm -lm -lgcc_s -lc -lgcc_s -lm -lgcc_s -lc -lgcc_s -Wl,--rpath -Wl,/home/omni/omni-linux-sdk/tools/powerpc-405-linux-gnu/lib -Wl,--rpath -Wl,/home/omni/omni-linux-sdk/tools/powerpc-405-linux-gnu/lib ../src/.libs/libzmq.a(libzmq_la-ctx.o)(.gnu.linkonce.t._ZNSbIhSt11char_traitsIhESaIhEE4_Rep8_M_cloneERKS1_j+0xfc): In function `std::basic_string<unsigned char, std::char_traits<unsigned char>, std::allocator<unsigned char> >::_Rep::_M_clone(std::allocator<unsigned char> const&, unsigned)': : undefined reference to `std::char_traits<unsigned char>::copy(unsigned char*, unsigned char const*, unsigned)' ../src/.libs/libzmq.a(libzmq_la-object.o)(.gnu.linkonce.t._ZNSbIhSt11char_traitsIhESaIhEE13_S_copy_charsEPhPKhS5_+0x38): In function `std::basic_string<unsigned char, std::char_traits<unsigned char>, std::allocator<unsigned char> >::_S_copy_chars(unsigned char*, unsigned char const*, unsigned char const*)': : undefined reference to `std::char_traits<unsigned char>::copy(unsigned char*, unsigned char const*, unsigned)' ../src/.libs/libzmq.a(libzmq_la-options.o)(.gnu.linkonce.t._ZNSbIhSt11char_traitsIhESaIhEE6assignEPKhj+0x19c): In function `std::basic_string<unsigned char, std::char_traits<unsigned char>, std::allocator<unsigned char> >::assign(unsigned char const*, unsigned)': : undefined reference to `std::char_traits<unsigned char>::copy(unsigned char*, unsigned char const*, unsigned)' ../src/.libs/libzmq.a(libzmq_la-options.o)(.gnu.linkonce.t._ZNSbIhSt11char_traitsIhESaIhEE6assignEPKhj+0x1c8): In function `std::basic_string<unsigned char, std::char_traits<unsigned char>, std::allocator<unsigned char> >::assign(unsigned char const*, unsigned)': : undefined reference to `std::char_traits<unsigned char>::move(unsigned char*, unsigned char const*, unsigned)' ../src/.libs/libzmq.a(libzmq_la-options.o)(.gnu.linkonce.t._ZNSbIhSt11char_traitsIhESaIhEE9_M_mutateEjjj+0x1b4): In function `std::basic_string<unsigned char, std::char_traits<unsigned char>, std::allocator<unsigned char> >::_M_mutate(unsigned, unsigned, unsigned)': : undefined reference to `std::char_traits<unsigned char>::copy(unsigned char*, unsigned char const*, unsigned)' ../src/.libs/libzmq.a(libzmq_la-options.o)(.gnu.linkonce.t._ZNSbIhSt11char_traitsIhESaIhEE9_M_mutateEjjj+0x1ec): In function `std::basic_string<unsigned char, std::char_traits<unsigned char>, std::allocator<unsigned char> >::_M_mutate(unsigned, unsigned, unsigned)': : undefined reference to `std::char_traits<unsigned char>::copy(unsigned char*, unsigned char const*, unsigned)' ../src/.libs/libzmq.a(libzmq_la-options.o)(.gnu.linkonce.t._ZNSbIhSt11char_traitsIhESaIhEE9_M_mutateEjjj+0x2f0): In function `std::basic_string<unsigned char, std::char_traits<unsigned char>, std::allocator<unsigned char> >::_M_mutate(unsigned, unsigned, unsigned)': : undefined reference to `std::char_traits<unsigned char>::move(unsigned char*, unsigned char const*, unsigned)' ../src/.libs/libzmq.a(libzmq_la-socket_base.o)(.gnu.linkonce.t._ZNSbIhSt11char_traitsIhESaIhEE12_S_constructEjhRKS1_+0xc4): In function `std::basic_string<unsigned char, std::char_traits<unsigned char>, std::allocator<unsigned char> >::_S_construct(unsigned, unsigned char, std::allocator<unsigned char> const&)': : undefined reference to `std::char_traits<unsigned char>::assign(unsigned char*, unsigned, unsigned char)' ../src/.libs/libzmq.a(libzmq_la-socket_base.o)(.gnu.linkonce.t._ZNKSbIhSt11char_traitsIhESaIhEE7compareERKS2_+0x84): In function `std::basic_string<unsigned char, std::char_traits<unsigned char>, std::allocator<unsigned char> >::compare(std::basic_string<unsigned char, std::char_traits<unsigned char>, std::allocator<unsigned char> > const&) const': : undefined reference to `std::char_traits<unsigned char>::compare(unsigned char const*, unsigned char const*, unsigned)' ../src/.libs/libzmq.a(libzmq_la-epoll.o)(.text+0xa8): In function `zmq::epoll_t::epoll_t[not-in-charge]()': : undefined reference to `epoll_create' ../src/.libs/libzmq.a(libzmq_la-epoll.o)(.text+0x1d4): In function `zmq::epoll_t::epoll_t[in-charge]()': : undefined reference to `epoll_create' ../src/.libs/libzmq.a(libzmq_la-epoll.o)(.text+0x720): In function `zmq::epoll_t::add_fd(int, zmq::i_poll_events*)': : undefined reference to `epoll_ctl' ../src/.libs/libzmq.a(libzmq_la-epoll.o)(.text+0x7e0): In function `zmq::epoll_t::rm_fd(void*)': : undefined reference to `epoll_ctl' ../src/.libs/libzmq.a(libzmq_la-epoll.o)(.text+0x8d0): In function `zmq::epoll_t::set_pollin(void*)': : undefined reference to `epoll_ctl' ../src/.libs/libzmq.a(libzmq_la-epoll.o)(.text+0x990): In function `zmq::epoll_t::reset_pollin(void*)': : undefined reference to `epoll_ctl' ../src/.libs/libzmq.a(libzmq_la-epoll.o)(.text+0xa50): In function `zmq::epoll_t::set_pollout(void*)': : undefined reference to `epoll_ctl' ../src/.libs/libzmq.a(libzmq_la-epoll.o)(.text+0xb10): more undefined references to `epoll_ctl' follow ../src/.libs/libzmq.a(libzmq_la-epoll.o)(.text+0xc78): In function `zmq::epoll_t::loop()': : undefined reference to `epoll_wait' ../src/.libs/libzmq.a(libzmq_la-zmq_init.o)(.gnu.linkonce.t._ZNKSbIhSt11char_traitsIhESaIhEE5c_strEv+0x48): In function `std::basic_string<unsigned char, std::char_traits<unsigned char>, std::allocator<unsigned char> >::c_str() const': : undefined reference to `std::char_traits<unsigned char>::assign(unsigned char&, unsigned char const&)' collect2: ld returned 1 exit status make[1]: *** [local_lat] Error 1 make[1]: Leaving directory `/home/omni/Desktop/zeromq-2.1.7/perf' make: *** [all-recursive] Error 1
_______________________________________________ zeromq-dev mailing list zeromq-dev@lists.zeromq.org http://lists.zeromq.org/mailman/listinfo/zeromq-dev