I was wondering if anyone else is having this problem building
asterisk on -CURRENT. The problem may not be with FreeBSD - it
looks like gnu configure is incorrectly detecting the CPU as "i386"
when it's actually a pentium3:
configure: Package configured for:
configure: OS type : freebsd7.0
configure: Host CPU : i386
===> Building for asterisk-1.4.11
The i386 doesn't have any atomic primatives or something like that
(maybe just according to gcc-4.2). If I frob the configured sources
and change the i386 to pentium3, then the build works, but I don't
have enough asterisk foo at this point to verify that it actually
works.
ast_expr2f.o asterisk.o astmm.o autoservice.o callerid.o cdr.o channel.o chanv
ars.o cli.o config.o cryptostub.o db.o devicestate.o dial.o dns.o dnsmgr.o dsp.o
enum.o file.o fixedjitterbuf.o frame.o fskmodem.o http.o image.o indications.o
io.o jitterbuf.o loader.o logger.o manager.o md5.o netsock.o pbx.o plc.o privacy
.o rtp.o say.o sched.o sha1.o slinfactory.o srv.o stdtime/localtime.o strcompat.
o tdd.o term.o threadstorage.o translate.o udptl.o ulaw.o utils.o editline/libed
it.a -> asterisk
channel.o(.text+0x2b52): In function `ast_channel_alloc':
/usr/ports/net/asterisk/work/asterisk-1.4.11/include/asterisk/lock.h:775: undefi
ned reference to `__sync_fetch_and_add_4'
channel.o(.text+0x2ec1):/usr/ports/net/asterisk/work/asterisk-1.4.11/include/ast
erisk/lock.h:775: undefined reference to `__sync_fetch_and_add_4'
cli.o(.text+0x3a4a): In function `ast_cli_command':
/usr/ports/net/asterisk/work/asterisk-1.4.11/include/asterisk/lock.h:775: undefi
ned reference to `__sync_fetch_and_add_4'
dial.o(.text+0x3da): In function `ast_dial_append':
/usr/ports/net/asterisk/work/asterisk-1.4.11/include/asterisk/lock.h:775: undefi
ned reference to `__sync_fetch_and_add_4'
loader.o(.text+0xe3c): In function `__ast_module_user_add':
/usr/ports/net/asterisk/work/asterisk-1.4.11/include/asterisk/lock.h:775: undefi
ned reference to `__sync_fetch_and_add_4'
loader.o(.text+0xec9):/usr/ports/net/asterisk/work/asterisk-1.4.11/include/aster
isk/lock.h:775: more undefined references to `__sync_fetch_and_add_4' follow
manager.o(.text+0x197): In function `process_events':
/usr/ports/net/asterisk/work/asterisk-1.4.11/include/asterisk/lock.h:809: undefi
ned reference to `__sync_sub_and_fetch_4'
manager.o(.text+0x173e): In function `free_session':
/usr/ports/net/asterisk/work/asterisk-1.4.11/include/asterisk/lock.h:809: undefi
ned reference to `__sync_sub_and_fetch_4'
manager.o(.text+0x18ab): In function `accept_thread':
/usr/ports/net/asterisk/work/asterisk-1.4.11/include/asterisk/lock.h:775: undefi
ned reference to `__sync_fetch_and_add_4'
manager.o(.text+0x1962):/usr/ports/net/asterisk/work/asterisk-1.4.11/include/ast
erisk/lock.h:775: undefined reference to `__sync_fetch_and_add_4'
manager.o(.text+0x1a67):/usr/ports/net/asterisk/work/asterisk-1.4.11/include/ast
erisk/lock.h:775: undefined reference to `__sync_fetch_and_add_4'
manager.o(.text+0x1b15):/usr/ports/net/asterisk/work/asterisk-1.4.11/include/ast
erisk/lock.h:775: undefined reference to `__sync_fetch_and_add_4'
manager.o(.text+0x4774): In function `action_waitevent':
/usr/ports/net/asterisk/work/asterisk-1.4.11/include/asterisk/lock.h:809: undefi
ned reference to `__sync_sub_and_fetch_4'
manager.o(.text+0x5f81): In function `generic_http_callback':
/usr/ports/net/asterisk/work/asterisk-1.4.11/include/asterisk/lock.h:775: undefi
ned reference to `__sync_fetch_and_add_4'
manager.o(.text+0x5f8f):/usr/ports/net/asterisk/work/asterisk-1.4.11/include/ast
erisk/lock.h:775: undefined reference to `__sync_fetch_and_add_4'
manager.o(.text+0x6a65):/usr/ports/net/asterisk/work/asterisk-1.4.11/include/ast
erisk/lock.h:775: undefined reference to `__sync_fetch_and_add_4'
manager.o(.text+0x70b5): In function `session_do':
/usr/ports/net/asterisk/work/asterisk-1.4.11/include/asterisk/lock.h:775: undefi
ned reference to `__sync_fetch_and_add_4'
utils.o(.text+0xde8): In function `ast_atomic_dec_and_test':
/usr/ports/net/asterisk/work/asterisk-1.4.11/include/asterisk/lock.h:809: undefi
ned reference to `__sync_sub_and_fetch_4'
utils.o(.text+0xe01): In function `ast_atomic_fetchadd_int':
/usr/ports/net/asterisk/work/asterisk-1.4.11/include/asterisk/lock.h:775: undefi
ned reference to `__sync_fetch_and_add_4'
gmake[1]: *** [asterisk] Error 1
gmake: *** [main] Error 2
*** Error code 2
Stop in /usr/ports/net/asterisk.
*** Error code 1
Stop in /usr/ports/net/asterisk.
--
Ian Freislich
_______________________________________________
freebsd-curr...@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"
--
Posted automagically by a mail2news gateway at muc.de e.V.
Please direct questions, flames, donations, etc. to news-ad...@muc.de
- 隐藏被引用文字 -
On Mon, Sep 10, 2007 at 12:04:10PM +0200, Ian FREISLICH wrote:
i don't completely understand what is happening here - i386 presumably
> Hi > I was wondering if anyone else is having this problem building > configure: Package configured for: > The i386 doesn't have any atomic primatives or something like that refers to the architecture, not to the very-low-level details of the architecture, so there should not be anything specific to one processor of the family in the flags passed to the compiler. Could it be that it's a compiler bug instead (or something in cheers
- 隐藏被引用文字 -
> ast_expr2f.o asterisk.o astmm.o autoservice.o callerid.o cdr.o channel.o chanv
_______________________________________________
> ars.o cli.o config.o cryptostub.o db.o devicestate.o dial.o dns.o dnsmgr.o dsp.o > enum.o file.o fixedjitterbuf.o frame.o fskmodem.o http.o image.o indications.o > io.o jitterbuf.o loader.o logger.o manager.o md5.o netsock.o pbx.o plc.o privacy > .o rtp.o say.o sched.o sha1.o slinfactory.o srv.o stdtime/localtime.o strcompat. > o tdd.o term.o threadstorage.o translate.o udptl.o ulaw.o utils.o editline/libed > it.a -> asterisk > channel.o(.text+0x2b52): In function `ast_channel_alloc': > /usr/ports/net/asterisk/work/asterisk-1.4.11/include/asterisk/lock.h:775: undefi > ned reference to `__sync_fetch_and_add_4' > channel.o(.text+0x2ec1):/usr/ports/net/asterisk/work/asterisk-1.4.11/include/ast > erisk/lock.h:775: undefined reference to `__sync_fetch_and_add_4' > cli.o(.text+0x3a4a): In function `ast_cli_command': > /usr/ports/net/asterisk/work/asterisk-1.4.11/include/asterisk/lock.h:775: undefi > ned reference to `__sync_fetch_and_add_4' > dial.o(.text+0x3da): In function `ast_dial_append': > /usr/ports/net/asterisk/work/asterisk-1.4.11/include/asterisk/lock.h:775: undefi > ned reference to `__sync_fetch_and_add_4' > loader.o(.text+0xe3c): In function `__ast_module_user_add': > /usr/ports/net/asterisk/work/asterisk-1.4.11/include/asterisk/lock.h:775: undefi > ned reference to `__sync_fetch_and_add_4' > loader.o(.text+0xec9):/usr/ports/net/asterisk/work/asterisk-1.4.11/include/aster > isk/lock.h:775: more undefined references to `__sync_fetch_and_add_4' follow > manager.o(.text+0x197): In function `process_events': > /usr/ports/net/asterisk/work/asterisk-1.4.11/include/asterisk/lock.h:809: undefi > ned reference to `__sync_sub_and_fetch_4' > manager.o(.text+0x173e): In function `free_session': > /usr/ports/net/asterisk/work/asterisk-1.4.11/include/asterisk/lock.h:809: undefi > ned reference to `__sync_sub_and_fetch_4' > manager.o(.text+0x18ab): In function `accept_thread': > /usr/ports/net/asterisk/work/asterisk-1.4.11/include/asterisk/lock.h:775: undefi > ned reference to `__sync_fetch_and_add_4' > manager.o(.text+0x1962):/usr/ports/net/asterisk/work/asterisk-1.4.11/include/ast > erisk/lock.h:775: undefined reference to `__sync_fetch_and_add_4' > manager.o(.text+0x1a67):/usr/ports/net/asterisk/work/asterisk-1.4.11/include/ast > erisk/lock.h:775: undefined reference to `__sync_fetch_and_add_4' > manager.o(.text+0x1b15):/usr/ports/net/asterisk/work/asterisk-1.4.11/include/ast > erisk/lock.h:775: undefined reference to `__sync_fetch_and_add_4' > manager.o(.text+0x4774): In function `action_waitevent': > /usr/ports/net/asterisk/work/asterisk-1.4.11/include/asterisk/lock.h:809: undefi > ned reference to `__sync_sub_and_fetch_4' > manager.o(.text+0x5f81): In function `generic_http_callback': > /usr/ports/net/asterisk/work/asterisk-1.4.11/include/asterisk/lock.h:775: undefi > ned reference to `__sync_fetch_and_add_4' > manager.o(.text+0x5f8f):/usr/ports/net/asterisk/work/asterisk-1.4.11/include/ast > erisk/lock.h:775: undefined reference to `__sync_fetch_and_add_4' > manager.o(.text+0x6a65):/usr/ports/net/asterisk/work/asterisk-1.4.11/include/ast > erisk/lock.h:775: undefined reference to `__sync_fetch_and_add_4' > manager.o(.text+0x70b5): In function `session_do': > /usr/ports/net/asterisk/work/asterisk-1.4.11/include/asterisk/lock.h:775: undefi > ned reference to `__sync_fetch_and_add_4' > utils.o(.text+0xde8): In function `ast_atomic_dec_and_test': > /usr/ports/net/asterisk/work/asterisk-1.4.11/include/asterisk/lock.h:809: undefi > ned reference to `__sync_sub_and_fetch_4' > utils.o(.text+0xe01): In function `ast_atomic_fetchadd_int': > /usr/ports/net/asterisk/work/asterisk-1.4.11/include/asterisk/lock.h:775: undefi > ned reference to `__sync_fetch_and_add_4' > gmake[1]: *** [asterisk] Error 1 > gmake: *** [main] Error 2 > *** Error code 2 > Stop in /usr/ports/net/asterisk. > Stop in /usr/ports/net/asterisk. > -- > _______________________________________________ freebsd-curr ...@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr ...@freebsd.org" --
您需要先
登录才能发帖。
要发帖,您需要先
加入此论坛。
请先在
订阅设置页上更新您的昵称,然后再进行发帖。
您没有发帖的权限。
|
- 隐藏被引用文字 -
Luigi Rizzo wrote:
The trouble is that the asterisk build translates this into -march=i386
> On Mon, Sep 10, 2007 at 12:04:10PM +0200, Ian FREISLICH wrote: > > Hi > > I was wondering if anyone else is having this problem building > > configure: Package configured for: > > The i386 doesn't have any atomic primatives or something like that > i don't completely understand what is happening here - i386 presumably and -mcpu=i386 or -mtune=i386 which has that low level effect. At least the old asterisk port did this, I haven't yet figured out what the new 1.4.11 asterisk is doing. I'm inclined to believe that i386 in the FreeBSD context means
> Could it be that it's a compiler bug instead (or something in
It builds if I don't set CPUTYPE=p3 in /etc/make.conf. So, I guess
> your /etc/make.conf which is forcing compiler-specific optimizations > but only for a part of the build or the libraries) ? that's the fix. Ian -- _______________________________________________ --
您需要先
登录才能发帖。
要发帖,您需要先
加入此论坛。
请先在
订阅设置页上更新您的昵称,然后再进行发帖。
您没有发帖的权限。
|
- 隐藏被引用文字 -
On Mon, Sep 10, 2007 at 02:35:30PM +0200, Ian FREISLICH wrote:
and there's another curious thing here, which i realised after posting
> Luigi Rizzo wrote: > > On Mon, Sep 10, 2007 at 12:04:10PM +0200, Ian FREISLICH wrote: > > > Hi > > > I was wondering if anyone else is having this problem building > > > configure: Package configured for: > > > The i386 doesn't have any atomic primatives or something like that > It builds if I don't set CPUTYPE=p3 in /etc/make.conf. So, I guess my email - asterisk uses gmake, not bmake, so does gmake read /etc/make.conf too ? Who else uses that file ? cheers --
您需要先
登录才能发帖。
要发帖,您需要先
加入此论坛。
请先在
订阅设置页上更新您的昵称,然后再进行发帖。
您没有发帖的权限。
|
Quoting Ian FREISLICH <i
...@clue.co.za> (from Mon, 10 Sep 2007
14:35:30 +0200):
- 隐藏被引用文字 -
> Luigi Rizzo wrote:
On Linux this is set to the target architecture which shall be
>> On Mon, Sep 10, 2007 at 12:04:10PM +0200, Ian FREISLICH wrote: >> > Hi >> > I was wondering if anyone else is having this problem building >> > configure: Package configured for: >> > The i386 doesn't have any atomic primatives or something like that >> i don't completely understand what is happening here - i386 presumably > The trouble is that the asterisk build translates this into -march=i386 > I'm inclined to believe that i386 in the FreeBSD context means supported. Values are i386, i486, i586, ... and maybe some not so generic ones like pentium4 (maybe all values which gcc supports for -march). We just put the architecture of the system (${ARCH}) into it. On I think we don't set it to something else, because nobody cared to do Bye, -- http://www.Leidinger.net Alexander @ Leidinger.net: PGP ID = B0063FE7 --
您需要先
登录才能发帖。
要发帖,您需要先
加入此论坛。
请先在
订阅设置页上更新您的昵称,然后再进行发帖。
您没有发帖的权限。
|
Quoting Luigi Rizzo <ri
...@icir.org> (from Mon, 10 Sep 2007 05:40:15 -0700):
> and there's another curious thing here, which i realised after posting
gmake doesn't read make.conf, but before gmake comes into play,
> my email - asterisk uses gmake, not bmake, so does gmake read > /etc/make.conf too ? Who else uses that file ? configure is called by our make, which gets its CFLAGS by some magic depending on the value of CPUTYPE. Bye, -- http://www.Leidinger.net Alexander @ Leidinger.net: PGP ID = B0063FE7 -- |