Compiling with gcc -march ix86

Stephane Russell srussell at prodigeinfo.com
Fri Jan 7 09:34:08 PST 2011


Thanks. It worked, but it didn't solve the linking problem. A forum was
reporting that compiling with -march set to something newer than i386
would solve the problem. I tried instead to undefine HAVE_GCC_ATOMICS in
the autotools scripts and then it linked.

I'm reporting for logging purpose, if of any interest. It seems that gcc
atomicity is not properly implemented in BSD variants. The autoconf
generates this:

int foo1; int foo2 = __sync_fetch_and_add(&foo1, 1);

It compiles with success, so autoconf flags gcc atomicity as supported.
But while linking, I'm getting errors that tells that the function
__sync_fetch_and_add is undefined. I don't even find where it is
declared, neither in Asterisk sources nor DFBSD includes.

SR


Le 2011-01-04 11:37, Oliver Fromme a écrit :
> Stephane Russell <srussell at prodigeinfo.com> wrote:
>  > Don't work, unfortunatly.
>  > 
>  > $ setenv UNAME_M i686
>  > $ uname -m
>  > i386
>  > $ echo $UNAME_M
>  > i686
> 
> The flags are lower-case.
> 
> sh> UNAME_m=i868 uname -m
> i868
> 
> Best regards
>    Oliver
> 






More information about the Users mailing list