[OpenWrt-Devel] Fwd: MIPS libatomic

Santiago Regusci santicomp2 at gmail.com
Wed Jan 21 15:42:32 EST 2015


this time i downloaded the trunk
I found
/home/pc/pruebaBB/openwrt/build_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/gcc-linaro-4.8-2014.04-final/mips-openwrt-linux-uclibc/libgcc/libgcc-std.ver:
 1830    __sync_fetch_and_xor_1
 1831    __sync_fetch_and_nand_1
 1832:   __sync_add_and_fetch_1
 1833    __sync_sub_and_fetch_1
 1834    __sync_or_and_fetch_1
 ....
 1894    __sync_fetch_and_xor_16
 1895    __sync_fetch_and_nand_16
 1896:   __sync_add_and_fetch_16
 1897    __sync_sub_and_fetch_16
 1898    __sync_or_and_fetch_16

i also added libatomic to to the package depends with no success.
i couldn't find flags to enable atomic operations.

has anybody had this issue?
i don't know what i am missing


2015-01-21 6:30 GMT-02:00 Alexandru Ardelean <ardeleanalex at gmail.com>:

> 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  <walt at tilera.com>
>
>     Backport from mainline
>     2014-01-25  Walter Lee  <walt at tilera.com>
>
>     * 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 <santicomp2 at gmail.com>
> 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
>> openwrt-devel at lists.openwrt.org
>> https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.infradead.org/pipermail/openwrt-devel/attachments/20150121/29e69e4f/attachment.htm>
-------------- next part --------------
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel


More information about the openwrt-devel mailing list