[asterisk-users] [1.8.3] Error compiling Asterisk: __sync_fetch_and_add

Kevin P. Fleming kpfleming at digium.com
Mon Mar 7 16:25:41 CST 2011


On 03/07/2011 03:35 PM, RR wrote:
> Hello all,
>
> mmm a bit embarrassing about not having a clue as to why we're getting
> this error on make of 1.8.3
>
>    [AR] hash/hash.o hash/hash_bigkey.o hash/hash_buf.o hash/hash_func.o
> hash/hash_log2.o hash/hash_page.o hash/ndbm.o btree/bt_close.o
> btree/bt_conv.o btree/bt_debug.o btree/bt_delete.o btree/bt_get.o
> btree/bt_open.o btree/bt_overflow.o btree/bt_page.o btree/bt_put.o
> btree/bt_search.o btree/bt_seq.o btree/bt_split.o btree/bt_utils.o
> db/db.o mpool/mpool.o recno/rec_close.o recno/rec_delete.o
> recno/rec_get.o recno/rec_open.o recno/rec_put.o recno/rec_search.o
> recno/rec_seq.o recno/rec_utils.o -> libdb1.a
>     [LD] abstract_jb.o acl.o alaw.o aoc.o app.o ast_expr2.o ast_expr2f.o
> asterisk.o astfd.o astmm.o astobj2.o audiohook.o autochan.o
> autoservice.o bridging.o callerid.o ccss.o cdr.o cel.o channel.o
> chanvars.o cli.o config.o data.o datastore.o db.o devicestate.o dial.o
> dns.o dnsmgr.o dsp.o enum.o event.o features.o file.o fixedjitterbuf.o
> frame.o framehook.o fskmodem.o global_datastores.o hashtab.o heap.o
> http.o image.o indications.o io.o jitterbuf.o loader.o lock.o logger.o
> manager.o md5.o netsock.o netsock2.o pbx.o plc.o poll.o privacy.o
> rtp_engine.o say.o sched.o security_events.o sha1.o slinfactory.o srv.o
> ssl.o stdtime/localtime.o strcompat.o strings.o stun.o syslog.o
> taskprocessor.o tcptls.o tdd.o term.o test.o threadstorage.o timing.o
> translate.o udptl.o ulaw.o utils.o version.o xml.o xmldoc.o
> editline/libedit.a db1-ast/libdb1.a  -> asterisk
> astobj2.o: In function `ast_atomic_fetchadd_int':
> /usr/src/asterisk-1.8.3/include/asterisk/lock.h:589: undefined reference
> to `__sync_fetch_and_add_4'
> /usr/src/asterisk-1.8.3/include/asterisk/lock.h:589: undefined reference
> to `__sync_fetch_and_add_4'
> /usr/src/asterisk-1.8.3/include/asterisk/lock.h:589: undefined reference
> to `__sync_fetch_and_add_4'
> /usr/src/asterisk-1.8.3/include/asterisk/lock.h:589: undefined reference
> to `__sync_fetch_and_add_4'
> /usr/src/asterisk-1.8.3/include/asterisk/lock.h:589: undefined reference
> to `__sync_fetch_and_add_4'
> astobj2.o:/usr/src/asterisk-1.8.3/include/asterisk/lock.h:589: more
> undefined references to `__sync_fetch_and_add_4' follow
> utils.o: In function `ast_atomic_dec_and_test':
> /usr/src/asterisk-1.8.3/include/asterisk/lock.h:635: undefined reference
> to `__sync_sub_and_fetch_4'
> utils.o: In function `ast_atomic_fetchadd_int':
> /usr/src/asterisk-1.8.3/include/asterisk/lock.h:589: undefined reference
> to `__sync_fetch_and_add_4'
> collect2: ld returned 1 exit status
> make[1]: *** [asterisk] Error 1
> make: *** [main] Error 2
>
> Any idea where this is coming from? seems like something is selected
> that doesn't have other related stuff unselected? no clue where to start
> looking

Have you specified any '-march' or '-mcpu' options to the compiler? This 
sort of thing can occur if you are building for a plain-jane i386 
processor or something similar.

-- 
Kevin P. Fleming
Digium, Inc. | Director of Software Technologies
Jabber: kfleming at digium.com | SIP: kpfleming at digium.com | Skype: kpfleming
445 Jan Davis Drive NW - Huntsville, AL 35806 - USA
Check us out at www.digium.com & www.asterisk.org



More information about the asterisk-users mailing list