I don't think libatomic exports that symbol.
It looks like that symbol should be in the standard gcc.

You can try to add +libatomic to the DEPENDS section of czmq to see if that
helps.
But note that the libatomic package was added in this commit:
7edd1ccebaf00db527fcbb1c6e75827722cfdc21

I'd say to pull a clone of the latest OpenWRT trunk and compare.
I don't know what the toolchain version of Barrier Breaker is.

Here's on the latest trunk (I don't have a MIPS build right now):
build_dir/toolchain-x86_64_gcc-4.8-linaro_uClibc-0.9.33.2/gcc-linaro-4.8-2014.04-final/x86_64-openwrt-linux-uclibc/libgcc/libgcc-std.ver:
__sync_add_and_fetch_1
build_dir/toolchain-x86_64_gcc-4.8-linaro_uClibc-0.9.33.2/gcc-linaro-4.8-2014.04-final/x86_64-openwrt-linux-uclibc/libgcc/libgcc-std.ver:
__sync_add_and_fetch_2
build_dir/toolchain-x86_64_gcc-4.8-linaro_uClibc-0.9.33.2/gcc-linaro-4.8-2014.04-final/x86_64-openwrt-linux-uclibc/libgcc/libgcc-std.ver:
__sync_add_and_fetch_4
build_dir/toolchain-x86_64_gcc-4.8-linaro_uClibc-0.9.33.2/gcc-linaro-4.8-2014.04-final/x86_64-openwrt-linux-uclibc/libgcc/libgcc-std.ver:
__sync_add_and_fetch_8
build_dir/toolchain-x86_64_gcc-4.8-linaro_uClibc-0.9.33.2/gcc-linaro-4.8-2014.04-final/x86_64-openwrt-linux-uclibc/libgcc/libgcc-std.ver:
__sync_add_and_fetch_16

And the Changelog says:
build_dir/toolchain-x86_64_gcc-4.8-linaro_uClibc-0.9.33.2/gcc-linaro-4.8-2014.04/libgcc/ChangeLog:

2014-01-25  Walter Lee  <[email protected]>

    Backport from mainline
    2014-01-25  Walter Lee  <[email protected]>

    * config/tilepro/atomic.c (pre_atomic_barrier): Mark inline.
    (post_atomic_barrier): Ditto.
    (__fetch_and_do): New macro.
    (__atomic_fetch_and_do): Use __fetch_and_do.
    (__sync_fetch_and_do): New macro.
    (__sync_fetch_and_add_4): New function.
    (__sync_fetch_and_sub_4): New function.
    (__sync_fetch_and_or_4): New function.
    (__sync_fetch_and_and_4): New function.
    (__sync_fetch_and_xor_4): New function.
    (__sync_fetch_and_nand_4): New function.


If you do find these symbols in your gcc toolchain, I'd say to look for
flags to enable them.
They might be disabled by default.




On Wed, Jan 21, 2015 at 7:10 AM, Santiago Regusci <[email protected]>
wrote:

> Hi
>
> I am having trouble building a package czmq with barrier breaker for
> Mips24kc.
> i get src/.libs/libczmq.so: undefined reference to `__sync_add_and_fetch_8'
> do i have to add libatomic in the makefile toolchain. or has did anyone
> have a similar problem.
>
> how i can i fix this?
>
> thank you
> Santi
>
>
> _______________________________________________
> openwrt-devel mailing list
> [email protected]
> https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
>
>
_______________________________________________
openwrt-devel mailing list
[email protected]
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Reply via email to