[Home]

Summary:ASTERISK-07924: Module embedding fails on Mac
Reporter:Steven Sokol (ssokol)Labels:
Date Opened:2006-10-12 16:45:21Date Closed:2006-11-01 16:36:02.000-0600
Priority:MinorRegression?No
Status:Closed/CompleteComponents:Core/General
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:
Description:Seems like there's some kind of linker bug on Mac.  Output is below.  I set all modules to embed:


                                                                                   *************************************
                                                                                         Asterisk Module Selection
                                                                                   *************************************

                                                                                            Press 'h' for help.

                                                                                           [*] 1.  apps
                                                                                           [*] 2.  cdr
                                                                                           [*] 3.  channels
                                                                                           [*] 4.  codecs
                                                                                           [*] 5.  formats
                                                                                           [*] 6.  funcs
                                                                                           [*] 7.  pbx
                                                                                           [*] 8.  res

****** ADDITIONAL INFORMATION ******

[LD] abstract_jb.o acl.o aescrypt.o aeskey.o aestab.o alaw.o app.o ast_expr2.o ast_expr2f.o asterisk.o astmm.o autoservice.o callerid.o cdr.o channel.o chanvars.o cli.o config.o cryptostub.o db.o devicestate.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 translate.o udptl.o ulaw.o utils.o editline/libedit.a db1-ast/libdb1.a ../apps/modules.link ../cdr/modules.link ../channels/modules.link ../codecs/modules.link ../formats/modules.link ../funcs/modules.link ../pbx/modules.link ../res/modules.link -> asterisk
/usr/bin/ld: ../apps/modules.link bad magic number (not a Mach-O file)
/usr/bin/ld: ../cdr/modules.link bad magic number (not a Mach-O file)
/usr/bin/ld: ../channels/modules.link bad magic number (not a Mach-O file)
/usr/bin/ld: ../codecs/modules.link bad magic number (not a Mach-O file)
/usr/bin/ld: ../formats/modules.link bad magic number (not a Mach-O file)
/usr/bin/ld: ../funcs/modules.link bad magic number (not a Mach-O file)
/usr/bin/ld: ../pbx/modules.link bad magic number (not a Mach-O file)
/usr/bin/ld: ../res/modules.link bad magic number (not a Mach-O file)
collect2: ld returned 1 exit status
make[1]: *** [asterisk] Error 1
make: *** [main] Error 2
steven-sokols-computer:/usr/src/asterisk root#
Comments:By: jmls (jmls) 2006-10-31 11:41:44.000-0600

is this the same with beta3 and / or 1.4 trunk ?

By: Russell Bryant (russell) 2006-11-01 16:02:24.000-0600

So, after some investigation, I'm fairly certain that the issue is that module embedding is only going to work when the version of ld in use is GNU ld.  On mac, it is not.  We'll need an autoconf test to determine whether ld is GNU ld or not.

By: Russell Bryant (russell) 2006-11-01 16:36:02.000-0600

This has been fixed in 1.4 and the trunk in revisions 46845 and 46846.  The module embedding options will now only be available if the linker that will be used is GNU ld.  Thanks!