[Frage] Asterisk + cross-kompiliertes chan_sccp.so = segfaults?

Scarybeast

Neuer User
Mitglied seit
19 Mrz 2006
Beiträge
13
Punkte für Reaktionen
0
Punkte
1
Hallo allerseits,

ich versuche momentan, chan_sccp auf meiner Fritz!Box 7390 mit installiertem Asterisk 1.8.15 zum laufen zu kriegen.

Nach etwas hin- und her läßt sich das .so erstellen und strippen. Wenn ich dann den Asterisk auf der Box starte gibt's segmentation faults, und der Asterisk stirbt.

Ich wäre dankbar für Tipps, wie ich dem Problem auf die Spur kommen kann.

Ich verwende Freetz trunk Revision 9731, den Asterisk aus http://freetz.org/ticket/706 und Chan_SCCP-4.0.0_STABLE.

Ich dachte erst, es würde an fehlenden/falsch gelinkten Libraries liegen. Hab' dann ldd mit in meine FW aufgenommen und siehe da, sieht eigentlich gut aus:

Code:
root@fritz:/var/media/ftp/external/modules# ldd chan_sccp.so
        libc.so.0 => /lib/libc.so.0 (0x2aabe000)
        ld-uClibc.so.0 => /lib/ld-uClibc.so.0 (0x2aaa8000)
        ld-uClibc.so.0 => /lib/ld-uClibc.so.0 (0x2aaa8000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x00000000)
        libc.so.0 => /lib/libc.so.0 (0x00000000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00000000)
        not a dynamic executable

Hier meine modules.conf für den Asterisk:
Code:
[modules]
autoload=yes
noload => chan_skinny.so
load => chan_sccp.so
load => chan_capi.so

Und hier die Ausgabe von asterisk -vvvvv:
Code:
Asterisk 1.8.15.0, Copyright (C) 1999 - 2012 Digium, Inc. and others.
Created by Mark Spencer <[email protected]>
Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type 'core show license' for details.
=========================================================================
  == Parsing '/etc/asterisk/asterisk.conf':   == Found
  == Manager registered action DataGet
 Asterisk Dynamic Loader Starting:
  == Parsing '/tmp/flash/asterisk/modules.conf':   == Found
  == Manager registered action Ping
  == Manager registered action Events
  == Manager registered action Logoff
  == Manager registered action Login
  == Manager registered action Challenge
  == Manager registered action Hangup
  == Manager registered action Status
  == Manager registered action Setvar
  == Manager registered action Getvar
  == Manager registered action GetConfig
  == Manager registered action GetConfigJSON
  == Manager registered action UpdateConfig
  == Manager registered action CreateConfig
  == Manager registered action ListCategories
  == Manager registered action Redirect
  == Manager registered action Atxfer
  == Manager registered action Originate
  == Manager registered action Command
  == Manager registered action ExtensionState
  == Manager registered action AbsoluteTimeout
  == Manager registered action MailboxStatus
  == Manager registered action MailboxCount
  == Manager registered action ListCommands
  == Manager registered action SendText
  == Manager registered action UserEvent
  == Manager registered action WaitEvent
  == Manager registered action CoreSettings
  == Manager registered action CoreStatus
  == Manager registered action Reload
  == Manager registered action CoreShowChannels
  == Manager registered action ModuleLoad
  == Manager registered action ModuleCheck
  == Manager registered action AOCMessage
Unable to open AMI configuration manager.conf, or configuration is invalid. Asterisk management interface (AMI) disabled.
    -- CEL logging disabled.
       > Can't find dsp config file dsp.conf. Assuming default silencethreshold of 256.
 Asterisk PBX Core Initializing
 Registering builtin applications:
  == Registered custom function 'EXCEPTION'
  == Registered custom function 'TESTTIME'
 [Answer]
  == Registered application 'Answer'
 [BackGround]
  == Registered application 'BackGround'
 [Busy]
  == Registered application 'Busy'
 [Congestion]
  == Registered application 'Congestion'
 [ExecIfTime]
  == Registered application 'ExecIfTime'
 [Goto]
  == Registered application 'Goto'
 [GotoIf]
  == Registered application 'GotoIf'
 [GotoIfTime]
  == Registered application 'GotoIfTime'
 [ImportVar]
  == Registered application 'ImportVar'
 [Hangup]
  == Registered application 'Hangup'
 [Incomplete]
  == Registered application 'Incomplete'
 [NoOp]
  == Registered application 'NoOp'
 [Proceeding]
  == Registered application 'Proceeding'
 [Progress]
  == Registered application 'Progress'
 [RaiseException]
  == Registered application 'RaiseException'
 [ResetCDR]
  == Registered application 'ResetCDR'
 [Ringing]
  == Registered application 'Ringing'
 [SayAlpha]
  == Registered application 'SayAlpha'
 [SayDigits]
  == Registered application 'SayDigits'
 [SayNumber]
  == Registered application 'SayNumber'
 [SayPhonetic]
  == Registered application 'SayPhonetic'
 [Set]
  == Registered application 'Set'
 [MSet]
  == Registered application 'MSet'
 [SetAMAFlags]
  == Registered application 'SetAMAFlags'
 [Wait]
  == Registered application 'Wait'
 [WaitExten]
  == Registered application 'WaitExten'
  == Manager registered action ShowDialPlan
Can't find indications config file indications.conf.
Could not load features.conf
  == Registered application 'Bridge'
  == Registered application 'ParkedCall'
  == Registered application 'Park'
  == Manager registered action ParkedCalls
  == Manager registered action Park
  == Manager registered action Bridge
  == Manager registered action DBGet
  == Manager registered action DBPut
  == Manager registered action DBDel
  == Manager registered action DBDelTree
Could not find valid ccss.conf file. Using cc_max_requests default
  == Registered application 'CallCompletionRequest'
  == Registered application 'CallCompletionCancel'
 Asterisk Dynamic Loader Starting:
  == Parsing '/tmp/flash/asterisk/modules.conf':   == Found
181 modules will be loaded.
Unable to load config smdi.conf: SMDI disabled
No SMDI interfaces are available to listen on, not starting SMDI listener.
 res_crypto.so => (Cryptographic Digital Signatures)
  == Registered application 'Monitor'
  == Registered application 'StopMonitor'
  == Registered application 'ChangeMonitor'
  == Registered application 'PauseMonitor'
  == Registered application 'UnpauseMonitor'
  == Manager registered action Monitor
  == Manager registered action StopMonitor
  == Manager registered action ChangeMonitor
  == Manager registered action PauseMonitor
  == Manager registered action UnpauseMonitor
 res_monitor.so => (Call Monitoring Resource)
Unable to load config res_stun_monitor.conf
  == AGI Command 'answer' registered
  == AGI Command 'asyncagi break' registered
  == AGI Command 'channel status' registered
  == AGI Command 'database del' registered
  == AGI Command 'database deltree' registered
  == AGI Command 'database get' registered
  == AGI Command 'database put' registered
  == AGI Command 'exec' registered
  == AGI Command 'get data' registered
  == AGI Command 'get full variable' registered
  == AGI Command 'get option' registered
  == AGI Command 'get variable' registered
  == AGI Command 'hangup' registered
  == AGI Command 'noop' registered
  == AGI Command 'receive char' registered
  == AGI Command 'receive text' registered
  == AGI Command 'record file' registered
  == AGI Command 'say alpha' registered
  == AGI Command 'say digits' registered
  == AGI Command 'say number' registered
  == AGI Command 'say phonetic' registered
  == AGI Command 'say date' registered
  == AGI Command 'say time' registered
  == AGI Command 'say datetime' registered
  == AGI Command 'send image' registered
  == AGI Command 'send text' registered
  == AGI Command 'set autohangup' registered
  == AGI Command 'set callerid' registered
  == AGI Command 'set context' registered
  == AGI Command 'set extension' registered
  == AGI Command 'set music' registered
  == AGI Command 'set priority' registered
  == AGI Command 'set variable' registered
  == AGI Command 'stream file' registered
  == AGI Command 'control stream file' registered
  == AGI Command 'tdd mode' registered
  == AGI Command 'verbose' registered
  == AGI Command 'wait for digit' registered
  == AGI Command 'speech create' registered
  == AGI Command 'speech set' registered
  == AGI Command 'speech destroy' registered
  == AGI Command 'speech load grammar' registered
  == AGI Command 'speech unload grammar' registered
  == AGI Command 'speech activate grammar' registered
  == AGI Command 'speech deactivate grammar' registered
  == AGI Command 'speech recognize' registered
  == Registered application 'DeadAGI'
  == Registered application 'EAGI'
  == Manager registered action AGI
  == Registered application 'AGI'
 res_agi.so => (Asterisk Gateway Interface (AGI))
 res_speech.so => (Generic Speech Recognition API)
Configuration file 'res_fax.conf' not found, using default options.
  == Registered application 'SendFAX'
  == Registered application 'ReceiveFAX'
  == Registered custom function 'FAXOPT'
 res_fax.so => (Generic FAX Applications)
Unable to load config calendar.conf
 res_ael_share.so => (share-able code for AEL)
 res_timing_timerfd.so => (Timerfd Timing Interface)
 res_timing_pthread.so => (pthread Timing Interface)
  == Parsing '/tmp/flash/asterisk/musiconhold.conf':   == Found
  == Registered application 'MusicOnHold'
  == Registered application 'WaitMusicOnHold'
  == Registered application 'SetMusicOnHold'
  == Registered application 'StartMusicOnHold'
  == Registered application 'StopMusicOnHold'
 res_musiconhold.so => (Music On Hold Resource)
  == Registered RTP engine 'asterisk'
 res_rtp_asterisk.so => (Asterisk RTP Stack)
  == Registered RTP engine 'multicast'
 res_rtp_multicast.so => (Multicast RTP Engine)
Unable to load config iax.conf
  == Registered channel type 'Local' (Local Proxy Channel Driver)
  == Manager registered action LocalOptimizeAway
 chan_local.so => (Local Proxy Channel (Note: used internally by other modules))
preloading pbx module
  == Parsing '/tmp/flash/asterisk/sccp.conf':   == Found
  == Platform byte order   : BIG ENDIAN
Segmentation fault

Sowie die letzte Meldung von dmesg:
Code:
do_page_fault() #2: sending SIGSEGV to asterisk for invalid read access from
00000000 (epc == 2ae9a420, ra == 2ae4b4cc)

Und meine Freetz .config:
Code:
#
# Automatically generated file; DO NOT EDIT.
# Freetz Configuration
#
FREETZ_HAVE_DOT_CONFIG=y

#
# General --------------------------------
#
FREETZ_AVM_VERSION_7390_05_50=y
FREETZ_AVM_VERSION_05_2X_MIN=y
FREETZ_AVM_VERSION_05_5X=y
# FREETZ_TYPE_300IP_AS_FON is not set
# FREETZ_TYPE_2170 is not set
# FREETZ_TYPE_6840 is not set
# FREETZ_TYPE_FON is not set
# FREETZ_TYPE_FON_5010 is not set
# FREETZ_TYPE_FON_5050 is not set
# FREETZ_TYPE_FON_5124 is not set
# FREETZ_TYPE_FON_5140 is not set
# FREETZ_TYPE_FON_WLAN is not set
# FREETZ_TYPE_FON_WLAN_7050 is not set
# FREETZ_TYPE_FON_WLAN_7112 is not set
# FREETZ_TYPE_FON_WLAN_7113 is not set
# FREETZ_TYPE_FON_WLAN_7140 is not set
# FREETZ_TYPE_FON_WLAN_7141 is not set
# FREETZ_TYPE_FON_7150 is not set
# FREETZ_TYPE_FON_WLAN_7170 is not set
# FREETZ_TYPE_FON_WLAN_7240 is not set
# FREETZ_TYPE_FON_WLAN_7270_V1 is not set
# FREETZ_TYPE_FON_WLAN_7270_V2 is not set
# FREETZ_TYPE_FON_WLAN_7270_V3 is not set
# FREETZ_TYPE_FON_WLAN_7312 is not set
# FREETZ_TYPE_FON_WLAN_7320 is not set
# FREETZ_TYPE_FON_WLAN_7330_XL is not set
# FREETZ_TYPE_FON_WLAN_7330_SL is not set
# FREETZ_TYPE_FON_WLAN_7340 is not set
# FREETZ_TYPE_FON_WLAN_7360_XL is not set
# FREETZ_TYPE_FON_WLAN_7360_SL is not set
FREETZ_TYPE_FON_WLAN_7390=y
# FREETZ_TYPE_FON_WLAN_7570 is not set
# FREETZ_TYPE_WLAN_3020 is not set
# FREETZ_TYPE_WLAN_3030 is not set
# FREETZ_TYPE_WLAN_3130 is not set
# FREETZ_TYPE_WLAN_3131 is not set
# FREETZ_TYPE_WLAN_3170 is not set
# FREETZ_TYPE_WLAN_3270 is not set
# FREETZ_TYPE_WLAN_3270_V3 is not set
# FREETZ_TYPE_WLAN_3370 is not set
# FREETZ_TYPE_SPEEDPORT_W501V is not set
# FREETZ_TYPE_CUSTOM is not set
FREETZ_TYPE_LANG_DE=y
# FREETZ_TYPE_LANG_EN is not set
# FREETZ_TYPE_FIRMWARE_05_22 is not set
FREETZ_TYPE_FIRMWARE_current=y
FREETZ_TYPE_LANGUAGE="de"
FREETZ_AVM_VERSION_STRING="7390_05.50"
FREETZ_FILESYSTEM_MTD_SIZE=0
FREETZ_TYPE_PREFIX="7390"
FREETZ_INSTALL_BASE=y
FREETZ_REPLACE_BUSYBOX=y
FREETZ_SHOW_ADVANCED=y
FREETZ_REPLACE_KERNEL_AVAILABLE=y
# FREETZ_REPLACE_KERNEL is not set
FREETZ_TARGET_IPV6_SUPPORT=y
FREETZ_TARGET_REF_16MB=y
FREETZ_TARGET_REF="16mb"
FREETZ_KERNEL_REF_16MB=y
FREETZ_KERNEL_REF="16mb"
FREETZ_KERNEL_MTD_SIZE=238
FREETZ_HAS_AVM_PTY_SUPPORT=y
# FREETZ_HAS_AVM_CDROM_ISO is not set
FREETZ_HAS_AVM_AURA_USB=y
# FREETZ_HAS_AVM_MINID is not set
FREETZ_HAS_AVM_NTFS=y
FREETZ_HAS_AVM_IPV6=y
FREETZ_HAS_AVM_WEBDAV=y
FREETZ_HAS_AVM_INETD=y
FREETZ_HAS_AVM_EXT3=y
FREETZ_HAS_AVM_TR069=y
FREETZ_HAS_AVM_TR069_FWUPDATE=y
FREETZ_HAS_AVM_CHRONYD=y
FREETZ_HAS_AVM_DECT=y
FREETZ_HAS_AVM_OPENSSL_LIBS=y
FREETZ_HAS_AVM_LSOF=y
FREETZ_HAS_AVM_SOCAT=y
FREETZ_HAS_AVM_NAS=y
FREETZ_HAS_AVM_MYFRITZ=y
FREETZ_HAS_AVM_PHONE=y
# FREETZ_HAS_AVM_STRACE is not set
FREETZ_HAS_AVM_TAM=y
FREETZ_HAS_AVM_UDEV=y
# FREETZ_HAS_UPDATE_FILESYSTEM_IMAGE is not set
# FREETZ_HAS_USB_CLIENT is not set
FREETZ_HAS_AVM_USB_HOST=y
# FREETZ_HAS_AVM_USB_HOST_AHCI is not set
FREETZ_HAS_AVM_E2FSPROGS=y
FREETZ_HAS_AVM_WLAN=y
FREETZ_HAS_AVM_UMTS=y
# FREETZ_HAS_AVM_JFFS2 is not set
FREETZ_HAS_AVM_JUNK_BYTES=y
# FREETZ_HAS_AVM_MICROVOIP_DSL is not set
# FREETZ_HAS_AVM_ANNEX_A_AND_B is not set
FREETZ_HAS_AVM_MULTI_ANNEX=y
FREETZ_HAS_AVM_CTLMGR_STRUCT_V3=y
FREETZ_HAS_AVM_RAMZSWAP=y
FREETZ_HAS_AVM_AHA=y

#
# Mod ------------------------------------
#
FREETZ_LANG_DE=y
# FREETZ_LANG_EN is not set
FREETZ_LANG_STRING="de"

#
# Patches
#

#
# Web menu patches -----------------------
#
# FREETZ_PATCH_VCC is not set
# FREETZ_PATCH_ATA is not set
# FREETZ_ADD_REGEXT_GUI is not set
# FREETZ_PATCH_GSMVOICE is not set
# FREETZ_PATCH_SIGNED is not set

#
# USB patches --------------------
#
FREETZ_PATCH_FREETZMOUNT=y
FREETZ_USBSTORAGE_AUTOMOUNT=y
# FREETZ_AUTOMOUNT_EXT2 is not set
FREETZ_AUTOMOUNT_EXT3=y
# FREETZ_AUTOMOUNT_EXT4 is not set
FREETZ_AUTOMOUNT_FAT=y
# FREETZ_AUTOMOUNT_HFS is not set
# FREETZ_AUTOMOUNT_HFS_PLUS is not set
# FREETZ_AUTOMOUNT_LUKS is not set
FREETZ_AUTOMOUNT_NTFS=y
# FREETZ_AUTOMOUNT_REISER_FS is not set
# FREETZ_AUTOMOUNT_LINUXSWAP is not set
# FREETZ_PATCH_MAXDEVCOUNT is not set
# FREETZ_MODIFY_UMTSD is not set
# FREETZ_CUSTOM_UDEV_RULES is not set

#
# Removal patches ------------------------
#
# FREETZ_REMOVE_MULTI_ANNEX_FIRMWARE_DIFFS is not set
# FREETZ_REMOVE_AHA is not set
# FREETZ_REMOVE_AURA_USB is not set
# FREETZ_REMOVE_NAS is not set
# FREETZ_REMOVE_AVM_VPN is not set

#
# Remove brandings
#
# FREETZ_REMOVE_BRANDING_1und1 is not set
# FREETZ_REMOVE_BRANDING_avm is not set
# FREETZ_REMOVE_CAPIOVERTCP is not set
# FREETZ_REMOVE_CHRONYD is not set
# FREETZ_REMOVE_DECT is not set
# FREETZ_REMOVE_DSLD is not set
# FREETZ_REMOVE_SHOWDSLDSTAT is not set
FREETZ_REMOVE_DTRACE=y
# FREETZ_REMOVE_FTPD is not set
# FREETZ_REMOVE_HELP is not set
# FREETZ_REMOVE_RAMZSWAP is not set
FREETZ_REMOVE_LSOF=y
FREETZ_REMOVE_SOCAT=y
# FREETZ_REMOVE_MEDIASRV is not set
# FREETZ_REMOVE_NTFS is not set
# FREETZ_REMOVE_PRINTSERV is not set
# FREETZ_REMOVE_RUNCLOCK is not set
# FREETZ_REMOVE_SAMBA is not set
# FREETZ_REMOVE_SUPPORT is not set
# FREETZ_REMOVE_TR069 is not set
# FREETZ_REMOVE_UMTSD is not set
# FREETZ_REMOVE_UPNP is not set
# FREETZ_REMOVE_USERMAN is not set
# FREETZ_REMOVE_AVM_E2FSPROGS is not set
# FREETZ_REMOVE_VOIPD is not set
# FREETZ_REMOVE_VOIP_ISDN is not set
# FREETZ_REMOVE_WEBDAV is not set
# FREETZ_REMOVE_WLAN is not set

#
# Replacement patches --------------------
#
# FREETZ_REPLACE_SSL_LIBS is not set
# FREETZ_REPLACE_DTRACE is not set
# FREETZ_REPLACE_ONLINECHANGED is not set

#
# Additional patches ---------------------
#
# FREETZ_ENFORCE_URLADER_SETTINGS is not set

#
# Misc patches ---------------------------
#
# FREETZ_DISABLE_SERIAL_CONSOLE is not set

#
# AVM daemons ----------------------------
#
# FREETZ_AVMDAEMON_DISABLE_IGD is not set
FREETZ_AVMDAEMON_DISABLE_NTP=y
# FREETZ_AVMDAEMON_DISABLE_IGM is not set
# FREETZ_AVMDAEMON_DISABLE_TR069 is not set
FREETZ_AVMDAEMON_DISABLE_MULTIDPORTS=y
FREETZ_AVMDAEMON_DISABLE_DNS=y
FREETZ_AVMDAEMON_DISABLE_DHCP=y
FREETZ_AVMDAEMON_DISABLE_LLMNR=y

#
# Package selection
#

#
# Debug helpers
#
# FREETZ_PACKAGE_GDB is not set
# FREETZ_PACKAGE_INOTIFY_TOOLS is not set
FREETZ_PACKAGE_LDD=y
FREETZ_PACKAGE_LSOF=y
FREETZ_PACKAGE_LTRACE=y
# FREETZ_PACKAGE_NANO_SHELL is not set
# FREETZ_PACKAGE_PCIUTILS is not set
FREETZ_PACKAGE_STRACE=y
# FREETZ_PACKAGE_USBUTILS is not set

#
# Standard packages
#
# FREETZ_PACKAGE_AICCU is not set
# FREETZ_PACKAGE_BFTPD is not set
# FREETZ_PACKAGE_BIRD is not set
FREETZ_PACKAGE_BRIDGE_UTILS=y
# FREETZ_PACKAGE_CALLMONITOR is not set
# FREETZ_PACKAGE_CHECKMAILD is not set

#
# Cifsmount (not available, needs replace kernel)
#
# FREETZ_PACKAGE_CURL is not set
# FREETZ_PACKAGE_DECO is not set
# FREETZ_PACKAGE_DNS2TCP is not set
FREETZ_PACKAGE_DNSMASQ=y

#
# HINT: Don't forget to enable a dns/dhcp server.
#
FREETZ_PACKAGE_DNSMASQ_DISABLE_DNS=y
FREETZ_PACKAGE_DNSMASQ_DISABLE_DHCP=y
FREETZ_PACKAGE_DROPBEAR=y
FREETZ_PACKAGE_DROPBEAR_SFTP_SERVER=y
# FREETZ_PACKAGE_DROPBEAR_SERVER_ONLY is not set
FREETZ_PACKAGE_DROPBEAR_WITH_ZLIB=y
FREETZ_PACKAGE_DROPBEAR_DISABLE_HOST_LOOKUP=y
# FREETZ_PACKAGE_DROPBEAR_STATIC is not set
# FREETZ_PACKAGE_ESPEAK is not set
# FREETZ_PACKAGE_FORTUNE is not set
FREETZ_PACKAGE_FUSE=y
FREETZ_PACKAGE_HASERL=y
# FREETZ_PACKAGE_HASERL_WITH_LUA is not set
FREETZ_PACKAGE_INETD=y
# FREETZ_PACKAGE_KNOCK is not set
# FREETZ_PACKAGE_MC is not set
# FREETZ_PACKAGE_MTR is not set
# FREETZ_PACKAGE_NANO is not set
# FREETZ_PACKAGE_NETCAT is not set
# FREETZ_PACKAGE_NC6 is not set
# FREETZ_PACKAGE_NETSNMP is not set
# FREETZ_PACKAGE_NFS_UTILS is not set
# FREETZ_PACKAGE_NTFS is not set
# FREETZ_PACKAGE_OPENNTPD is not set
FREETZ_PACKAGE_OPENVPN=y
FREETZ_PACKAGE_OPENVPN_VERSION_2_2=y
# FREETZ_PACKAGE_OPENVPN_VERSION_2_3 is not set
FREETZ_PACKAGE_OPENVPN_OPENSSL=y
FREETZ_PACKAGE_OPENVPN_STATIC=y
FREETZ_PACKAGE_OPENVPN_WITH_LZO=y
FREETZ_PACKAGE_OPENVPN_WITH_MGMNT=y
# FREETZ_PACKAGE_OPENVPN_ENABLE_SMALL is not set
# FREETZ_PACKAGE_OPENVPN_USE_IPROUTE is not set
# FREETZ_PACKAGE_PHP is not set
# FREETZ_PACKAGE_PINGTUNNEL is not set
# FREETZ_PACKAGE_PORTMAP is not set

#
# Point-to-Point
#
# FREETZ_PACKAGE_PPPD is not set
# FREETZ_PACKAGE_PPPD_CHAT is not set
# FREETZ_PACKAGE_PPTP is not set
# FREETZ_PACKAGE_PPTPD is not set
# FREETZ_PACKAGE_PRIVOXY is not set
# FREETZ_PACKAGE_RADVD is not set
# FREETZ_PACKAGE_RCAPID is not set
# FREETZ_PACKAGE_SAMBA is not set
# FREETZ_PACKAGE_SCREEN is not set
# FREETZ_PACKAGE_STUNNEL is not set
FREETZ_PACKAGE_TCPDUMP=y
# FREETZ_PACKAGE_TCPDUMP_MINI is not set
# FREETZ_PACKAGE_TINYPROXY is not set
# FREETZ_PACKAGE_TOR is not set
# FREETZ_PACKAGE_TRANSMISSION is not set
# FREETZ_PACKAGE_VNSTAT is not set
# FREETZ_PACKAGE_VPNC is not set
# FREETZ_PACKAGE_VSFTPD is not set
# FREETZ_PACKAGE_XMAIL is not set

#
# Testing
#
# FREETZ_PACKAGE_APACHE is not set
# FREETZ_PACKAGE_APACHE2 is not set
FREETZ_PACKAGE_ASTERISK=y

#
# autofs (not available, needs replace kernel)
#
# FREETZ_PACKAGE_AVAHI is not set
FREETZ_PACKAGE_BASH=y
# FREETZ_PACKAGE_BASH_MINIMAL is not set
FREETZ_PACKAGE_BASH_READLINE=y
FREETZ_PATCH_BASH_LOGIN_SHELL=y
# FREETZ_PACKAGE_BFUSB is not set
# FREETZ_PACKAGE_BIND is not set
# FREETZ_PACKAGE_BIP is not set
# FREETZ_PACKAGE_BITTWIST is not set
# FREETZ_PACKAGE_BLUEZ_UTILS is not set
# FREETZ_PACKAGE_BR2684CTL is not set
# FREETZ_PACKAGE_CCID is not set
FREETZ_PACKAGE_CHAN_CAPI=y
# FREETZ_PACKAGE_CLASSPATH is not set
# FREETZ_PACKAGE_CRYPTSETUP is not set
# FREETZ_PACKAGE_CTORRENT is not set
# FREETZ_PACKAGE_DANTE is not set
# FREETZ_PACKAGE_DAVFS2 is not set
# FREETZ_PACKAGE_DBUS is not set
# FREETZ_PACKAGE_DEBOOTSTRAP is not set
# FREETZ_PACKAGE_DIGITEMP is not set
# FREETZ_PACKAGE_DOSFSTOOLS is not set
# FREETZ_PACKAGE_DTACH is not set
# FREETZ_PACKAGE_DVBSNOOP is not set
# FREETZ_PACKAGE_DVBSTREAM is not set
# FREETZ_PACKAGE_DVBTUNE is not set
# FREETZ_PACKAGE_E2FSPROGS is not set
# FREETZ_PACKAGE_EMPTY is not set
# FREETZ_PACKAGE_FFMPEG is not set
# FREETZ_PACKAGE_FOWSR is not set
# FREETZ_PACKAGE_FSTYP is not set
# FREETZ_PACKAGE_GIT is not set
# FREETZ_PACKAGE_GNU_MAKE is not set
# FREETZ_PACKAGE_GNUTLS is not set
# FREETZ_PACKAGE_GOCR is not set
# FREETZ_PACKAGE_HAPROXY is not set
# FREETZ_PACKAGE_HD_IDLE is not set
# FREETZ_PACKAGE_HOL is not set
FREETZ_PACKAGE_HTOP=y
# FREETZ_PACKAGE_HTPDATE is not set
# FREETZ_PACKAGE_HTTPRY is not set
# FREETZ_PACKAGE_HTTPTUNNEL is not set
# FREETZ_PACKAGE_IFSTAT is not set
# FREETZ_PACKAGE_IFTOP is not set
# FREETZ_PACKAGE_IGMPPROXY is not set
# FREETZ_PACKAGE_IMAGEMAGICK is not set
# FREETZ_PACKAGE_INADYN_MT is not set
# FREETZ_PACKAGE_INADYN_OPENDNS is not set
# FREETZ_PACKAGE_IODINE is not set
FREETZ_PACKAGE_IPTRAF=y
# FREETZ_PACKAGE_IPTRAF_RVNAMED is not set
# FREETZ_PACKAGE_IPUTILS is not set
# FREETZ_PACKAGE_IRSSI is not set
# FREETZ_PACKAGE_JAMVM is not set
# FREETZ_PACKAGE_LFTP is not set
# FREETZ_PACKAGE_LIGHTTPD is not set
# FREETZ_PACKAGE_LYNX is not set
# FREETZ_PACKAGE_LUA is not set
FREETZ_PACKAGE_MADPLAY=y
# FREETZ_PACKAGE_MATRIXTUNNEL is not set
# FREETZ_PACKAGE_MCABBER is not set
# FREETZ_PACKAGE_MEDIATOMB is not set
# FREETZ_PACKAGE_MICROPERL is not set
# FREETZ_PACKAGE_MINI_SNMPD is not set
# FREETZ_PACKAGE_MINICOM is not set
# FREETZ_PACKAGE_MINIDLNA is not set
# FREETZ_PACKAGE_MODULE_INIT_TOOLS is not set
# FREETZ_PACKAGE_NAGIOS is not set
# FREETZ_PACKAGE_NCFTP is not set
# FREETZ_PACKAGE_NETATALK is not set
# FREETZ_PACKAGE_NETPBM is not set
# FREETZ_PACKAGE_NOIP is not set
# FREETZ_PACKAGE_NGIRCD is not set
# FREETZ_PACKAGE_NMAP is not set
# FREETZ_PACKAGE_OBEXFTP is not set
# FREETZ_PACKAGE_OIDENTD is not set
# FREETZ_PACKAGE_OPENCONNECT is not set
# FREETZ_PACKAGE_OPENDD is not set

#
# OpenSSH
#
FREETZ_PACKAGE_OPENSSH=y
# FREETZ_PACKAGE_OPENSSH_sshd is not set

#
# Build OpenSSH client (ssh) (not available, provided by dropbear)
#
# FREETZ_PACKAGE_OPENSSH_ssh is not set

#
# Build OpenSSH secure copy utility (scp) (not available, provided by dropbear)
#
# FREETZ_PACKAGE_OPENSSH_CLIENTUTILS is not set
# FREETZ_PACKAGE_OPENSSH_KEYUTILS is not set
FREETZ_PACKAGE_OPENSSH_sftp=y
FREETZ_PACKAGE_OPENSSH_sftp_server=y

#
# Build statically linked binaries ---
#
# FREETZ_PACKAGE_OPENSSH_STATIC is not set
# FREETZ_PACKAGE_OWFS is not set
# FREETZ_PACKAGE_PCSC_LITE is not set
# FREETZ_PACKAGE_POLIPO is not set
# FREETZ_PACKAGE_PYTHON is not set
# FREETZ_PACKAGE_QUAGGA is not set
# FREETZ_PACKAGE_RIPMIME is not set
# FREETZ_PACKAGE_RRDTOOL is not set
# FREETZ_PACKAGE_RSYNC is not set
# FREETZ_PACKAGE_RUBY is not set
# FREETZ_PACKAGE_RUSH is not set
# FREETZ_PACKAGE_SABLEVM_SDK is not set
# FREETZ_PACKAGE_SER2NET is not set
# FREETZ_PACKAGE_SHELLINABOX is not set
# FREETZ_PACKAGE_SIPROXD is not set
# FREETZ_PACKAGE_SISPMCTL is not set
# FREETZ_PACKAGE_SLANG is not set
# FREETZ_PACKAGE_SLURM is not set
# FREETZ_PACKAGE_SMARTMONTOOLS is not set
# FREETZ_PACKAGE_SMSTOOLS3 is not set
# FREETZ_PACKAGE_SMUSBUTIL is not set
# FREETZ_PACKAGE_SOCAT is not set
# FREETZ_PACKAGE_SPAWN_FCGI is not set
# FREETZ_PACKAGE_SQLITE is not set
FREETZ_PACKAGE_SSHFS_FUSE=y
# FREETZ_PACKAGE_STREAMRIPPER is not set
# FREETZ_PACKAGE_SUBVERSION is not set
# FREETZ_PACKAGE_SUNDTEK is not set
# FREETZ_PACKAGE_SYNCE_DCCM is not set
# FREETZ_PACKAGE_TCP_WRAPPERS is not set
# FREETZ_PACKAGE_TCPPROXY is not set
# FREETZ_PACKAGE_TREE is not set
# FREETZ_PACKAGE_TRICKLE is not set
# FREETZ_PACKAGE_TMUX is not set
# FREETZ_PACKAGE_UDPXY is not set
# FREETZ_PACKAGE_UMURMUR is not set
# FREETZ_PACKAGE_UNFS3 is not set
# FREETZ_PACKAGE_UNRAR is not set
# FREETZ_PACKAGE_USBIP is not set
# FREETZ_PACKAGE_USBROOT is not set
# FREETZ_PACKAGE_UTIL_LINUX_NG is not set
FREETZ_PACKAGE_VIM=y
# FREETZ_PACKAGE_VIM_TINY is not set
# FREETZ_PACKAGE_VIM_NORMAL is not set
FREETZ_PACKAGE_VIM_HUGE=y
# FREETZ_PACKAGE_VTUN is not set
FREETZ_PACKAGE_WGET=y
FREETZ_PACKAGE_WGET_WITH_SSL=y
# FREETZ_PACKAGE_WGET_USE_GNUTLS is not set
FREETZ_PACKAGE_WGET_STATIC=y
# FREETZ_PACKAGE_WOL is not set
# FREETZ_PACKAGE_WPUT is not set
# FREETZ_PACKAGE_XPDF is not set
# FREETZ_PACKAGE_XRELAYD is not set
# FREETZ_PACKAGE_XSLTPROC is not set

#
# Web interfaces
#
FREETZ_PACKAGE_AUTHORIZED_KEYS=y
FREETZ_PACKAGE_AVM_FIREWALL=y
# FREETZ_PACKAGE_DNSD_CGI is not set
# FREETZ_PACKAGE_DOWNLOADER is not set
# FREETZ_PACKAGE_NFSD_CGI is not set
# FREETZ_PACKAGE_ONLINECHANGED_CGI is not set
# FREETZ_PACKAGE_PHPXMAIL is not set
# FREETZ_PACKAGE_PPP_CGI is not set
# FREETZ_PACKAGE_RRDSTATS is not set
# FREETZ_PACKAGE_SPINDOWN_CGI is not set
FREETZ_PACKAGE_SYSLOGD_CGI=y
# FREETZ_PACKAGE_TRANSMISSION_CGI is not set
# FREETZ_PACKAGE_VNSTAT_CGI is not set
FREETZ_PACKAGE_WOL_CGI=y
FREETZ_SHOW_UNSTABLE_PACKAGES=y

#
# Unstable packages
#
# FREETZ_PACKAGE_COLLECTD is not set
# FREETZ_PACKAGE_DTMFBOX is not set
# FREETZ_PACKAGE_GW6 is not set
# FREETZ_PACKAGE_HP_UTILS is not set
# FREETZ_PACKAGE_HPLIP is not set
# FREETZ_PACKAGE_IPTABLES is not set
FREETZ_PACKAGE_IPTABLES_IS_SELECTABLE=y
# FREETZ_PACKAGE_MINI_FO is not set

#
# SANE
#
# FREETZ_PACKAGE_SANE_BACKENDS is not set
# FREETZ_PACKAGE_SQUID is not set
# FREETZ_PACKAGE_TINC is not set

#
# truecrypt (not available, needs libstdc++ as the Standard C++ Library)
#
# FREETZ_PACKAGE_VIRTUALIP_CGI is not set
FREETZ_PACKAGE_MOD=y
FREETZ_PACKAGE_MOD_ETCSERVICES=y
FREETZ_PACKAGE_MODCGI=y

#
# Advanced options
#
# FREETZ_DL_OVERRIDE is not set
FREETZ_DL_KERNEL_SITE=""
FREETZ_DL_KERNEL_SOURCE="${FREETZ_AVM_VERSION_STRING}-release_kernel.tar.xz"
FREETZ_DL_KERNEL_SOURCE_MD5="59988c29ccb3f75a916d203024e445ce"
FREETZ_DL_SITE="@AVM/fritzbox.fon_wlan_7390/firmware/deutsch"
FREETZ_DL_SOURCE="FRITZ.Box_Fon_WLAN_7390.84.05.50.image"
FREETZ_DL_SOURCE_MD5="ad5448ea20ce00dc5c2d18a93ff7835a"

#
# Build system options
#
FREETZ_VERBOSITY_LEVEL=2
FREETZ_SIZEINFO_COMPRESSED=y
# FREETZ_SIZEINFO_UNCOMPRESSED is not set

#
# Firmware packaging (fwmod) special options
#
# FREETZ_FWMOD_SKIP_UNPACK is not set
# FREETZ_FWMOD_SKIP_MODIFY is not set
# FREETZ_FWMOD_SKIP_PACK is not set
# FREETZ_FWMOD_SDK is not set
# FREETZ_FWMOD_USBROOT is not set
# FREETZ_FWMOD_NFSROOT is not set
FREETZ_JLEVEL=2
FREETZ_CHECK_CHANGED=y
# FREETZ_BACKUP_CONFIG_CACHE is not set
FREETZ_DL_SITE_USER=""

#
# Freetz customisation
#
FREETZ_OPTIONS_ETCSERVICES=y
FREETZ_SECURITY_LEVEL=0
FREETZ_STYLE_COLORED=y
# FREETZ_STYLE_GREY is not set
FREETZ_STYLE="colored"

#
# Webinterface skins
#
FREETZ_SKIN_legacy=y
# FREETZ_SKIN_newfreetz is not set
# FREETZ_SKIN_phoenix is not set
FREETZ_FAVICON_NONE=y
# FREETZ_FAVICON_ATOMPHIL is not set
# FREETZ_FAVICON_CUMA is not set
# FREETZ_FAVICON_DSL123 is not set
# FREETZ_FAVICON_HANSOLO is not set
FREETZ_FAVICON_STRING="none"
FREETZ_TAGGING_NONE=y
# FREETZ_TAGGING_CUMA is not set
FREETZ_TAGGING_STRING="none"

#
# Additional image/box information
#
FREETZ_DEVELOPER_VERSION_STRING=y
# FREETZ_MODIFY_AVM_VERSION is not set
FREETZ_USER_DEFINED_COMMENT=""
# FREETZ_CUSTOM_IMAGE_NAME is not set
# FREETZ_REMOVE_BOX_INFO is not set
# FREETZ_REMOVE_FREETZ_INFO is not set
FREETZ_CREATE_SEPARATE_OPTIONS_CFG=y
# FREETZ_REMOVE_DOT_CONFIG is not set
# FREETZ_SQUASHFS_BLOCKSIZE_ORIG is not set
FREETZ_SQUASHFS_BLOCKSIZE_65536=y
FREETZ_SQUASHFS_BLOCKSIZE=65536
# FREETZ_KERNEL_VERSION_2_6_13 is not set
# FREETZ_KERNEL_VERSION_2_6_19 is not set
FREETZ_KERNEL_VERSION_2_6_28=y
# FREETZ_KERNEL_VERSION_2_6_32 is not set
FREETZ_KERNEL_VERSION="2.6.28"
FREETZ_KERNEL_VERSION_2_6_13_MIN=y
FREETZ_KERNEL_VERSION_2_6_19_MIN=y
FREETZ_KERNEL_VERSION_2_6_28_MIN=y
# FREETZ_KERNEL_VERSION_2_6_32_MIN is not set
# FREETZ_KERNEL_VERSION_2_6_13_MAX is not set
# FREETZ_KERNEL_VERSION_2_6_19_MAX is not set
FREETZ_KERNEL_VERSION_2_6_28_MAX=y
FREETZ_KERNEL_VERSION_2_6_32_MAX=y
FREETZ_KERNEL_LAYOUT_IKS=y
FREETZ_KERNEL_LAYOUT="iks"
FREETZ_MODULES_KVER="2.6.28.10"

#
# Kernel modules
#

#
# block
#
# FREETZ_MODULE_block2mtd is not set

#
# crypto
#
# FREETZ_MODULE_arc4 is not set
# FREETZ_MODULE_sha256_generic is not set

#
# drivers
#
# FREETZ_MODULE_loop is not set
# FREETZ_MODULE_nbd is not set
# FREETZ_MODULE_cdrom is not set
# FREETZ_MODULE_capiconn is not set
# FREETZ_MODULE_nand is not set
# FREETZ_MODULE_ohio_nand is not set
# FREETZ_MODULE_dummy is not set
# FREETZ_MODULE_ppp_deflate is not set
# FREETZ_MODULE_pppoe is not set
# FREETZ_MODULE_pppox is not set
# FREETZ_MODULE_ppp_mppe_mppc is not set
# FREETZ_MODULE_scsi_mod is not set
# FREETZ_MODULE_sd_mod is not set
# FREETZ_MODULE_sg is not set
# FREETZ_MODULE_sr_mod is not set
# FREETZ_MODULE_usblp is not set
# FREETZ_MODULE_usb_storage is not set
# FREETZ_MODULE_usbmon is not set
# FREETZ_MODULE_usbip is not set
# FREETZ_MODULE_usbip_common_mod is not set
# FREETZ_MODULE_usbserial is not set
# FREETZ_MODULE_ipaq is not set
# FREETZ_MODULE_cp2101 is not set
# FREETZ_MODULE_pl2303 is not set
# FREETZ_MODULE_ftdi_sio is not set
# FREETZ_MODULE_hci_usb is not set
# FREETZ_MODULE_bfusb is not set
# FREETZ_MODULE_firmware_class is not set
# FREETZ_MODULE_dm_mod is not set
# FREETZ_MODULE_dm_crypt is not set
# FREETZ_MODULE_option is not set

#
# fs
#
# FREETZ_MODULE_autofs4 is not set
# FREETZ_MODULE_cifs is not set
# FREETZ_MODULE_coda is not set
# FREETZ_MODULE_ext2 is not set
# FREETZ_MODULE_ext4 is not set
# FREETZ_MODULE_fat is not set
# FREETZ_MODULE_hfs is not set
# FREETZ_MODULE_hfsplus is not set
FREETZ_MODULE_fuse=y
# FREETZ_MODULE_iso9660 is not set
# FREETZ_MODULE_jbd2 is not set
# FREETZ_MODULE_lockd is not set
# FREETZ_MODULE_mini_fo is not set
# FREETZ_MODULE_minix is not set
# FREETZ_MODULE_nfsd is not set
# FREETZ_MODULE_exportfs is not set
# FREETZ_MODULE_nfs is not set
# FREETZ_MODULE_nls_cp437 is not set
# FREETZ_MODULE_nls_cp852 is not set
# FREETZ_MODULE_nls_iso8859_15 is not set
# FREETZ_MODULE_nls_iso8859_1 is not set
# FREETZ_MODULE_nls_utf8 is not set
# FREETZ_MODULE_reiserfs is not set
# FREETZ_MODULE_udf is not set
# FREETZ_MODULE_unionfs is not set
# FREETZ_MODULE_vfat is not set
# FREETZ_MODULE_msdos is not set
# FREETZ_MODULE_jffs2 is not set
# FREETZ_MODULE_mbcache is not set

#
# lib
#
# FREETZ_MODULE_crc16 is not set
# FREETZ_MODULE_crc_ccitt is not set
# FREETZ_MODULE_lzo_compress is not set
# FREETZ_MODULE_lzo_decompress is not set

#
# net
#
# FREETZ_MODULE_bluetooth is not set
# FREETZ_MODULE_bnep is not set
# FREETZ_MODULE_cls_u32 is not set
# FREETZ_MODULE_l2cap is not set

#
# network scheduler
#
# FREETZ_MODULE_sch_cbq is not set
# FREETZ_MODULE_sch_htb is not set
# FREETZ_MODULE_sch_llq is not set
# FREETZ_MODULE_sch_sfq is not set
# FREETZ_MODULE_sch_tbf is not set
# FREETZ_MODULE_rfcomm is not set
# FREETZ_MODULE_sunrpc is not set

#
# BusyBox options
#
# FREETZ_BUSYBOX_AR is not set
# FREETZ_BUSYBOX_BLKID is not set
# FREETZ_BUSYBOX_BZIP2 is not set
# FREETZ_BUSYBOX_CHGRP is not set
# FREETZ_BUSYBOX_FEATURE_DD_IBS_OBS is not set
# FREETZ_BUSYBOX_FINDFS is not set
# FREETZ_BUSYBOX_DNSD is not set
# FREETZ_BUSYBOX_DIFF is not set
# FREETZ_BUSYBOX_BASE64 is not set
# FREETZ_BUSYBOX_DOS2UNIX is not set
FREETZ_BUSYBOX_ETHER_WAKE=y
# FREETZ_BUSYBOX_FAKEIDENTD is not set
# FREETZ_BUSYBOX_FANCY_KEYS is not set
# FREETZ_BUSYBOX_FUSER is not set
FREETZ_BUSYBOX_INETD=y
FREETZ_BUSYBOX_IP=y
FREETZ_BUSYBOX_FEATURE_IP_ADDRESS=y
FREETZ_BUSYBOX_FEATURE_IP_LINK=y
# FREETZ_BUSYBOX_FEATURE_IP_RULE is not set
FREETZ_BUSYBOX_FEATURE_IP_ROUTE=y
FREETZ_BUSYBOX_FEATURE_IP_TUNNEL=y
# FREETZ_BUSYBOX_LAST is not set
# FREETZ_BUSYBOX_LESS is not set
# FREETZ_BUSYBOX_LONG_OPTS is not set
# FREETZ_BUSYBOX_LS_COLOR is not set
FREETZ_BUSYBOX_MD5SUM=y
# FREETZ_BUSYBOX_MDEV is not set
# FREETZ_BUSYBOX_MODINFO is not set
# FREETZ_BUSYBOX_MOUNT_HELPERS is not set
# FREETZ_BUSYBOX_MOUNT_LABEL is not set
# FREETZ_BUSYBOX_NICE is not set
# FREETZ_BUSYBOX_PATCH is not set
# FREETZ_BUSYBOX_PSCAN is not set
FREETZ_BUSYBOX_REALPATH=y
# FREETZ_BUSYBOX_RENICE is not set
# FREETZ_BUSYBOX_SEQ is not set
# FREETZ_BUSYBOX_SHA1SUM is not set
# FREETZ_BUSYBOX_SPLIT is not set
# FREETZ_BUSYBOX_START_STOP_DAEMON is not set
FREETZ_BUSYBOX_STUN_IP=y
# FREETZ_BUSYBOX_TAC is not set
FREETZ_BUSYBOX_TAR_OLDGNU_COMPATIBILITY=y
# FREETZ_BUSYBOX_UDHCPC is not set
# FREETZ_BUSYBOX_UDHCPD is not set
# FREETZ_BUSYBOX_UNIX2DOS is not set
# FREETZ_BUSYBOX_UNZIP is not set
# FREETZ_BUSYBOX_FEATURE_USERNAME_COMPLETION is not set
# FREETZ_BUSYBOX_USLEEP is not set
FREETZ_BUSYBOX_VOLUMEID=y
FREETZ_BUSYBOX_VOLUMEID_EXT=y
FREETZ_BUSYBOX_VOLUMEID_FAT=y
# FREETZ_BUSYBOX_VOLUMEID_HFS is not set
# FREETZ_BUSYBOX_VOLUMEID_LINUXRAID is not set
# FREETZ_BUSYBOX_VOLUMEID_LINUXSWAP is not set
# FREETZ_BUSYBOX_VOLUMEID_LUKS is not set
FREETZ_BUSYBOX_VOLUMEID_NTFS=y
# FREETZ_BUSYBOX_VOLUMEID_REISERFS is not set
FREETZ_BUSYBOX_WGET=y
# FREETZ_BUSYBOX_FEATURE_WGET_STATUSBAR is not set
# FREETZ_BUSYBOX_FEATURE_WGET_AUTHENTICATION is not set
# FREETZ_BUSYBOX_FEATURE_WGET_TIMEOUT is not set
# FREETZ_BUSYBOX_WHO is not set
# FREETZ_BUSYBOX_WHOAMI is not set

#
# IPv6 Options
#
FREETZ_BUSYBOX_FEATURE_PREFER_IPV4_ADDRESS=y
# FREETZ_BUSYBOX_PING6 is not set
# FREETZ_BUSYBOX_TRACEROUTE6 is not set

#
# Locale & Unicode options
#
# FREETZ_BUSYBOX_LOCALE_SUPPORT is not set
# FREETZ_BUSYBOX_UNICODE_SUPPORT is not set

#
# Shared Libraries
#

#
# Apache Portable Runtime libs
#
# FREETZ_LIB_libapr is not set
# FREETZ_LIB_libapr_WITH_DSO is not set
# FREETZ_LIB_libaprutil is not set
# FREETZ_LIB_libaprutil_WITH_LIBDB is not set

#
# Avahi libraries
#
# FREETZ_LIB_libavahi_common is not set
# FREETZ_LIB_libavahi_core is not set
# FREETZ_LIB_libavahi_client is not set

#
# C++
#
# FREETZ_LIB_STDCXXLIB is not set
# FREETZ_LIB_STDCXXLIB_WITH_WCHAR is not set
# FREETZ_LIB_libstdc__ is not set
# FREETZ_LIB_libuClibc__ is not set
# FREETZ_LIB_libuClibc__WITH_WCHAR is not set

#
# Charsets & Internationalization
#
# FREETZ_LIB_libiconv is not set
# FREETZ_LIB_libintl is not set

#
# Crypto & SSL
#

#
# GnuPG ----------------------------------
#
# FREETZ_LIB_libgpg_error is not set
# FREETZ_LIB_libgcrypt is not set

#
# Digests ---
#

#
# Symmetric ciphers ---
#

#
# Asymmetric ciphers ---
#

#
# GnuTLS ---------------------------------
#
# FREETZ_LIB_libgnutls is not set
# FREETZ_LIB_libtasn1 is not set

#
# SSL ------------------------------------
#
# FREETZ_LIB_libcyassl is not set
# FREETZ_LIB_libmatrixssl is not set
# FREETZ_LIB_libpolarssl is not set
FREETZ_LIB_libcrypto=y
FREETZ_LIB_libssl=y
FREETZ_OPENSSL_VERSION_PROMPT=y
FREETZ_OPENSSL_VERSION_0=y
# FREETZ_OPENSSL_VERSION_1 is not set
FREETZ_OPENSSL_SHLIB_VERSION="0.9.8"

#
# Data compression
#
FREETZ_LIB_liblzo2=y
FREETZ_LIB_libz=y

#
# Database
#
# FREETZ_LIB_libdb is not set
# FREETZ_LIB_libsqlite3 is not set

#
# File systems
#

#
# e2fsprogs libraries
#
# FREETZ_LIB_libblkid is not set
# FREETZ_LIB_libcom_err is not set
# FREETZ_LIB_libe2p is not set
# FREETZ_LIB_libext2fs is not set
# FREETZ_LIB_libss is not set
# FREETZ_LIB_libuuid is not set
FREETZ_LIB_libfuse=y
# FREETZ_LIB_libntfs is not set

#
# GLib
#
FREETZ_LIB_libglib_2=y
# FREETZ_LIB_libgio_2 is not set
# FREETZ_LIB_libgobject_2 is not set
# FREETZ_LIB_libgmodule_2 is not set
FREETZ_LIB_libgthread_2=y

#
# Graphics & fonts
#
# FREETZ_LIB_libfreetype is not set
# FREETZ_LIB_libart_lgpl_2 is not set
# FREETZ_LIB_libexif is not set
# FREETZ_LIB_libjpeg is not set
# FREETZ_LIB_libpng12 is not set
# FREETZ_LIB_libgd is not set
# FREETZ_LIB_libopenjpeg is not set
# FREETZ_LIB_libtiff is not set
# FREETZ_LIB_libnetpbm is not set

#
# Multi precision arithmetic libs
#
# FREETZ_LIB_libgmp is not set
# FREETZ_LIB_libmpfr is not set
# FREETZ_LIB_libmpc is not set

#
# Multimedia
#

#
# Audio and video codecs
#

#
# Audio codecs
#
# FREETZ_LIB_libFLAC is not set
FREETZ_LIB_libmad=y
# FREETZ_LIB_libogg is not set

#
# FFmpeg libraries
#
# FREETZ_LIB_libavcodec is not set
# FREETZ_LIB_libavdevice is not set
# FREETZ_LIB_libavfilter is not set
# FREETZ_LIB_libavformat is not set
# FREETZ_LIB_libavutil is not set
# FREETZ_LIB_libpostproc is not set
# FREETZ_LIB_libswresample is not set
# FREETZ_LIB_libswscale is not set

#
# Video codecs
#

#
# Vorbis video codec ---------------------
#
# FREETZ_LIB_libvorbis is not set
# FREETZ_LIB_libvorbisenc is not set
# FREETZ_LIB_libvorbisfile is not set

#
# ID3 tag reading libs
#
FREETZ_LIB_libid3tag=y
# FREETZ_LIB_libtag is not set

#
# ncurses
#
FREETZ_LIB_libncurses=y

#
# terminfo database
#

#
# Select terminfo database entries to install (see help of 'Show all items')
#
FREETZ_SHARE_terminfo=y
# FREETZ_SHARE_terminfo_showall is not set
FREETZ_SHARE_terminfo_ansi=y
FREETZ_SHARE_terminfo_gnome=y
FREETZ_SHARE_terminfo_konsole=y
FREETZ_SHARE_terminfo_linux=y
FREETZ_SHARE_terminfo_putty=y
FREETZ_SHARE_terminfo_rxvt=y
FREETZ_SHARE_terminfo_screen=y
FREETZ_SHARE_terminfo_screenMINUSw=y
FREETZ_SHARE_terminfo_sun=y
FREETZ_SHARE_terminfo_vt100=y
FREETZ_SHARE_terminfo_vt102=y
FREETZ_SHARE_terminfo_vt102MINUSnsgr=y
FREETZ_SHARE_terminfo_vt102MINUSw=y
FREETZ_SHARE_terminfo_vt200=y
FREETZ_SHARE_terminfo_vt220=y
FREETZ_SHARE_terminfo_vt52=y
FREETZ_SHARE_terminfo_xterm=y
FREETZ_SHARE_terminfo_xtermMINUScolor=y
FREETZ_SHARE_terminfo_xtermMINUSxfree86=y
# FREETZ_LIB_libform is not set
# FREETZ_LIB_libmenu is not set
FREETZ_LIB_libpanel=y

#
# Networking
#

#
# ATM ------------------------------------
#
# FREETZ_LIB_libatm is not set

#
# Bluetooth ------------------------------
#
# FREETZ_LIB_libbluetooth is not set
# FREETZ_LIB_libopenobex is not set

#
# ISDN & CAPI ----------------------------
#
FREETZ_LIB_libcapi20=y

#
# Misc networking ------------------------
#
# FREETZ_LIB_libdnet is not set
FREETZ_LIB_libpcap=y
# FREETZ_LIB_libnet is not set
# FREETZ_LIB_liboping is not set
# FREETZ_LIB_libosip2 is not set
# FREETZ_LIB_libosipparser2 is not set

#
# Readline
#
FREETZ_LIB_libreadline=y
FREETZ_LIB_libhistory=y

#
# Regular expressions
#
FREETZ_LIB_libpcre=y
# FREETZ_LIB_libpcreposix is not set

#
# uClibc
#
FREETZ_LIB_ld_uClibc=y
FREETZ_LIB_libcrypt=y
FREETZ_LIB_libdl=y
FREETZ_LIB_libm=y
FREETZ_LIB_libpthread=y
FREETZ_LIB_librt=y
# FREETZ_LIB_libthread_db is not set
FREETZ_LIB_libuClibc=y
FREETZ_LIB_libutil=y

#
# USB & FTDI
#
# FREETZ_LIB_libusb is not set
# FREETZ_LIB_libusb_1 is not set
# FREETZ_LIB_libftdi is not set

#
# Web and WebDAV
#
# FREETZ_LIB_libcurl is not set
# FREETZ_LIB_libcurl_WITH_ZLIB is not set
# FREETZ_LIB_libjs is not set
# FREETZ_LIB_libneon is not set
# FREETZ_LIB_libneon_WITH_SSL is not set
# FREETZ_LIB_libneon_WITH_ZLIB is not set

#
# XML & XSLT
#
# FREETZ_LIB_libexpat is not set
# FREETZ_LIB_libxml2 is not set
# FREETZ_LIB_libxml2_WITH_HTML is not set
# FREETZ_LIB_libxslt is not set
# FREETZ_LIB_libexslt is not set
# FREETZ_LIB_libattr is not set
# FREETZ_LIB_libdbus is not set
FREETZ_LIB_libgcc_s=y
# FREETZ_LIB_libconfig is not set
# FREETZ_LIB_libdaemon is not set
# FREETZ_LIB_libdevmapper is not set
FREETZ_LIB_libelf=y
# FREETZ_LIB_libevent is not set
# FREETZ_LIB_libffi is not set
FREETZ_LIB_libmultid=y
FREETZ_LIB_libmultid_WITH_ANYIP=y
FREETZ_LIB_libmultid_WITH_DNS=y
FREETZ_LIB_libmultid_WITH_DHCP=y
FREETZ_LIB_libmultid_WITH_LLMNR=y
# FREETZ_LIB_libltdl is not set
# FREETZ_LIB_liblua is not set
# FREETZ_LIB_libpopt is not set
# FREETZ_LIB_libprotobuf_c is not set
# FREETZ_LIB_librrd is not set
# FREETZ_LIB_librrd_th is not set
# FREETZ_LIB_libslang is not set
# FREETZ_LIB_libsynce is not set
# FREETZ_LIB_libsysfs is not set
# FREETZ_LIB_libwx_baseu is not set
# FREETZ_LIB_libyaml is not set

#
# Strip binaries, libs, modules and scripts
#
FREETZ_STRIP_BINARIES=y
# FREETZ_STRIP_LIBRARIES is not set
# FREETZ_STRIP_MODULES_NONE is not set
FREETZ_STRIP_MODULES_FREETZ=y
# FREETZ_STRIP_MODULES_ALL is not set
# FREETZ_STRIP_SCRIPTS is not set

#
# External
#
EXTERNAL_ENABLED=y
# EXTERNAL_LINKS is not set
# EXTERNAL_SUBDIRS is not set
EXTERNAL_CREATEPAK=y
EXTERNAL_OWN_FILES=""

#
# packages
#
EXTERNAL_FREETZ_PACKAGE_ASTERISK=y
EXTERNAL_FREETZ_PACKAGE_BASH=y
EXTERNAL_FREETZ_PACKAGE_HTOP=y
EXTERNAL_FREETZ_PACKAGE_IPTRAF=y
EXTERNAL_FREETZ_PACKAGE_LDD=y
EXTERNAL_FREETZ_PACKAGE_LSOF=y
EXTERNAL_FREETZ_PACKAGE_LTRACE=y
EXTERNAL_FREETZ_PACKAGE_MADPLAY=y
EXTERNAL_FREETZ_PACKAGE_SSHFS_FUSE=y
EXTERNAL_FREETZ_PACKAGE_STRACE=y
EXTERNAL_FREETZ_PACKAGE_TCPDUMP=y
EXTERNAL_FREETZ_PACKAGE_VIM=y
EXTERNAL_FREETZ_PACKAGE_WGET=y

#
# services
#
# EXTERNAL_FREETZ_PACKAGE_DROPBEAR is not set
EXTERNAL_FREETZ_PACKAGE_OPENSSH=y

#
# OpenSSH
#
# EXTERNAL_FREETZ_PACKAGE_OPENSSH_sftp is not set
EXTERNAL_FREETZ_PACKAGE_OPENSSH_sftp_server=y
EXTERNAL_FREETZ_PACKAGE_OPENVPN=y

#
# other
#

#
# libraries
#
EXTERNAL_FREETZ_LIB_libssl=y
EXTERNAL_FREETZ_LIB_libcrypto=y
EXTERNAL_FREETZ_LIB_libcapi20=y
EXTERNAL_FREETZ_LIB_libelf=y
EXTERNAL_FREETZ_LIB_libncurses=y
# EXTERNAL_FREETZ_LIB_libpanel is not set
# EXTERNAL_FREETZ_LIB_libfuse is not set
EXTERNAL_FREETZ_LIB_libglib_2=y
# EXTERNAL_FREETZ_LIB_libgthread_2 is not set
EXTERNAL_FREETZ_LIB_libhistory=y
EXTERNAL_FREETZ_LIB_libreadline=y
EXTERNAL_FREETZ_LIB_libid3tag=y
# EXTERNAL_FREETZ_LIB_liblzo2 is not set
EXTERNAL_FREETZ_LIB_libmad=y
EXTERNAL_FREETZ_LIB_libpcap=y
EXTERNAL_FREETZ_LIB_libpcre=y
# EXTERNAL_FREETZ_LIB_libz is not set

#
# modules
#
FREETZ_TARGET_ARCH_BE=y
FREETZ_TARGET_ARCH="mips"
FREETZ_TARGET_CROSS="mips-linux-uclibc-"
FREETZ_TARGET_MAKE_PATH="toolchain/target/bin"
FREETZ_KERNEL_CROSS="mips-unknown-linux-gnu-"
FREETZ_KERNEL_MAKE_PATH="toolchain/kernel/bin"

#
# Toolchain options
#
FREETZ_DOWNLOAD_TOOLCHAIN=y
# FREETZ_BUILD_TOOLCHAIN is not set
# FREETZ_GCC_3_4_COMPILED_KERNEL is not set
FREETZ_GCC_4_6_COMPILED_KERNEL=y
# FREETZ_UCLIBC_0_9_28_BASED_BOX is not set
# FREETZ_UCLIBC_0_9_29_BASED_BOX is not set
FREETZ_UCLIBC_0_9_32_BASED_BOX=y

#
# Kernel toolchain options ----------------------------------
#
FREETZ_KERNEL_COMPILER_GCC_4_6=y
FREETZ_KERNEL_GCC_VERSION="4.6.3"
FREETZ_KERNEL_BINUTILS_VERSION="2.22"

#
# Target toolchain options ----------------------------------
#
FREETZ_TARGET_UCLIBC_VERSION_0_9_32=y
FREETZ_TARGET_COMPILER_GCC_4_6=y
FREETZ_STDCXXLIB_USE_UCLIBCXX=y
# FREETZ_STDCXXLIB_USE_GNULIBSTDCXX is not set
FREETZ_TARGET_UCLIBC_VERSION="0.9.32.1"
FREETZ_TARGET_GCC_VERSION="4.6.3"
FREETZ_GNULIBSTDCXX_VERSION="6.0.16"
FREETZ_STDCXXLIB="uclibcxx"
FREETZ_TARGET_BINUTILS_VERSION="2.22"
FREETZ_TARGET_UCLIBC_REF="mod"
FREETZ_TARGET_CFLAGS="-Os -pipe -Wa,--trap"
# FREETZ_TARGET_UCLIBC_REDUCED_LOCALE_SET is not set
# FREETZ_TARGET_NLS is not set
FREETZ_TARGET_LFS=y
# FREETZ_TARGET_TOOLCHAIN is not set

#
# Both kernel and target toolchain related options ----------
#
FREETZ_TOOLCHAIN_MINIMIZE_REQUIRED_GLIBC_VERSION=y
# FREETZ_TOOLCHAIN_32BIT is not set
# FREETZ_TOOLCHAIN_CCACHE is not set

Wäre toll, wenn mir jemand einen Tipp geben könnte, wo/wie ich dem Problem auf die Spur komme.

Guten Rutsch!
 
Oben sieht man, dass Du nicht die Freetz Libraries verwendest.
Die Meldung besagt, dass Asterisk versucht, von einem NULL Pointer zu lesen.
 
Hallo Ralf,

vielen Dank fürs drübergucken.

Soweit ich gesehen hab' verwendet Asterisk dieselben libraries:

Code:
root@fritz:/var/media/ftp/external# ldd asterisk
        libssl.so.0.9.8 => /usr/lib/freetz/libssl.so.0.9.8 (0x2aabe000)
        libcrypto.so.0.9.8 => /usr/lib/freetz/libcrypto.so.0.9.8 (0x2ab09000)
        libdl.so.0 => /lib/libdl.so.0 (0x2ac16000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x2ac29000)
        libncurses.so.5 => /usr/lib/freetz/libncurses.so.5 (0x2ac4d000)
        libm.so.0 => /lib/libm.so.0 (0x2ac80000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x2aca5000)
        libc.so.0 => /lib/libc.so.0 (0x2acc3000)
        ld-uClibc.so.0 => /lib/ld-uClibc.so.0 (0x2aaa8000)

Für Freetz sind alle relevanten libs ausgewählt, und sie werden auch im build filesystem eingebaut, hier mal am Beispiel der libpthread:

Code:
freetz@freetz-linux:~/7390/freetz-trunk-asterisk/build$ find . -name libpthread*

./[B]original[/B]/filesystem/lib/libpthread-0.9.32.so
./[B]original[/B]/filesystem/lib/libpthread.so.0

./[B]modified[/B]/filesystem/lib/libpthread.so.0
./[B]modified[/B]/filesystem/lib/libpthread.so
./[B]modified[/B]/filesystem/lib/libpthread-0.9.32.1.so

und haben auch unterschiedliche Größen:

Code:
freetz@freetz-linux:~/7390/freetz-trunk-asterisk$ ls -al build/[B]original[/B]/filesystem/lib/libpthread-0.9.32.so
-rwxrwxrwx 1 freetz freetz 75380 Dez 12 12:12 build/[B]original[/B]/filesystem/lib/libpthread-0.9.32.so

freetz@freetz-linux:~/7390/freetz-trunk-asterisk$ ls -al build/[B]modified[/B]/filesystem/lib/libpthread-0.9.32.1.so
-rwxr-xr-x 1 freetz freetz 72488 Dez  1 10:44 build/[B]modified[/B]/filesystem/lib/libpthread-0.9.32.1.so

Dasselbe gilt für die libc:

Code:
freetz@freetz-linux:~/7390/freetz-trunk-asterisk$ ls -al build/[B]original[/B]/filesystem/lib/libc.so.0
lrwxrwxrwx 1 freetz freetz 19 Dez 23 10:40 build/original/filesystem/lib/libc.so.0 -> libuClibc-0.9.32.so

freetz@freetz-linux:~/7390/freetz-trunk-asterisk$ ls -al build/[B]original[/B]/filesystem/lib/libuClibc-0.9.32.so
-rwxrwxrwx 1 freetz freetz 659968 Dez 12 12:12 build/original/filesystem/lib/libuClibc-0.9.32.so

freetz@freetz-linux:~/7390/freetz-trunk-asterisk$ ls -al build/[B]modified[/B]/filesystem/lib/libc.so.0
lrwxrwxrwx 1 freetz freetz 21 Dez 15 06:24 build/modified/filesystem/lib/libc.so.0 -> libuClibc-0.9.32.1.so

freetz@freetz-linux:~/7390/freetz-trunk-asterisk$ ls -al build/[B]modified[/B]/filesystem/lib/libuClibc-0.9.32.1.so
-rwxr-xr-x 1 freetz freetz 418708 Dez 15 06:24 build/modified/filesystem/lib/libuClibc-0.9.32.1.so

Das mit dem Nullpointer hab ich verstanden. Ich werd' mal versuchen, ob ich mit strace oder gdb was brauchbares finden kann.

Wenn ich nicht die freetz-libs verwende: Was muss ich an meiner freetz config ändern, damit die freetz libs verwendet werden?

Danke
 
Gdb wird wohl eher etwas bringen, mit strace sieht man nur, dass ein Speicherzugriffsfehler auftritt. Allenfalls die vorangehenden Systemaufrufe können einen Hinweis darauf geben, in welcher Funktion dieser auftritt.
 
Also, aus dem Lauf mit gdb werd' ich nicht schlau.

Ich musste etwas rumbasteln, bis ich asterisk und chan_sccp mit -g1 bzw. -g3 kompiliert und ungestripped auf die gekriegt Box hab'.

Hier der Lauf mit gdb:
Code:
root@fritz:/var/media/ftp# gdb asterisk
GNU gdb (GDB) 7.3.1
Copyright (C) 2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "mips-linux".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/sbin/asterisk...done.
(gdb) r -vvvvvvvvv
Starting program: /usr/sbin/asterisk -vvvvvvvvv
Asterisk 1.8.15.0, Copyright (C) 1999 - 2012 Digium, Inc. and others.
Created by Mark Spencer <[email protected]>
Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type 'core show license' for details.
=========================================================================
  == Parsing '/etc/asterisk/asterisk.conf':   == Found

Program received signal SIG32, Real-time event 32.
0x2acd3028 in ?? ()
(gdb) bt full
#0  0x2acd3028 in ?? ()
No symbol table info available.
warning: GDB can't find the start of the function at 0x2acd3028.

    GDB is unable to find the start of the function at 0x2acd3028
and thus can't determine the size of that function's stack frame.
This means that GDB may be unable to access that stack frame, or
the frames below it.
    This problem is most likely caused by an invalid program counter or
stack pointer.
    However, if you think GDB should simply search farther back
from 0x2acd3028 for code which looks like the beginning of a
function, you can increase the range of the search using the `set
heuristic-fence-post' command.

Müsste gdb nicht noch sowas anzeigen, da asterisk ja die gelinkten libs benötigt?
Code:
Reading symbols from /lib/libc.so.0...
warning: no loadable sections found in added symbol-file /lib/libc.so.0

Nach etwas googeln bin ich drauf gestoßen, dass man evtl. die uClibc bzw. ld-uClibc ebenfalls mit debug symbols kompilieren müsste, damit backtrace im gdb funktioniert.

Ich hab' aber keine Ahnung, wie ich die uClibc so kompilieren kann. Das ist ja echt in den Tiefen von freetz, wenn ich richtig liege.

Hat jemand einen Tipp?
 
dass man evtl. die uClibc bzw. ld-uClibc ebenfalls mit debug symbols kompilieren müsste, damit backtrace im gdb funktioniert. Ich hab' aber keine Ahnung, wie ich die uClibc so kompilieren kann. Das ist ja echt in den Tiefen von freetz, wenn ich richtig liege.

Hat jemand einen Tipp?
Versuch mal FREETZ_STRIP_BINARIES ("Advanced options"/"Strip binaries, libs, modules and scripts"/"Strip leftover unstripped binaries") auszuschalten.
 
Die Meldung "no loadable sections found" deutet darauf hin, dass sogar sstrip verwendet wird und nicht normales strip.

Die Programme müssen nicht unbedingt ins Flash der Box, sie können auch von einem USB-Stick ausgeführt werden.
 
Super. Danke für Eure Hilfe :)

Ich bin jetzt ein kleines Stück weiter. Jetzt habe ich folgende Herausforderung:

Kompiliere ich chan_sccp.so mit debug symbols und ohne zu optimieren kann der Asterisk das Modul gar nicht erst laden, sondern schmiert schon beim dlopen() ab:

Code:
...
1 modules will be loaded.

Breakpoint 6, load_dynamic_module (
    resource_in=0x6dd018 \000\000?????????????????????????????????????????????????, global_symbols_only=1) at loader.c:401
401             if (!(lib = dlopen(fn, RTLD_LAZY | RTLD_LOCAL))) {
(gdb) n
 Asterisk Dynamic Loader Starting:

Program received signal SIGSEGV, Segmentation fault.
0x2ad4d250 in ?? ()

Das Modul ist mit debug symbols (CFLAGS -g und -O0) ca. 2.2 MB groß. Kann es sein, dass das was mit der Größe zu tun hat?
Ich hab' auch andere Kombinationen versucht, z.B. "-g und -O2", damit kommt man manchmal auch schon etwas weiter, aber auch damit lädt der Asterisk das Modul nicht.

Wenn ich chan_sccp.so ohne debug symbols und mit Optimierung (das configure script schaltet -O3) erstelle kann der Asterisk das Modul laden (Größe dann ca. 700 kb):

Code:
...
Breakpoint 6, load_dynamic_module (
    resource_in=0x7fec5d61 \000\000?????????????????????????????????????????,
    global_symbols_only=0) at loader.c:401
401             if (!(lib = dlopen(fn, RTLD_LAZY | RTLD_LOCAL))) {
(gdb) c
Continuing.

Breakpoint 5, start_resource (mod=0x6dccb0) at loader.c:800
800             res = mod->info->load();
(gdb) s
warning: GDB can't find the start of the function at 0x2adb38b4.
0x2adb38b4 in ?? ()
(gdb) c
Continuing.
preloading pbx module
  == Platform byte order   : BIG ENDIAN

Program received signal SIGSEGV, Segmentation fault.
0x2ad963d8 in ?? ()

Die Ausgabe "== Platform byte order : BIG ENDIAN" kommt bereits aus dem Modul, aber ohne -g komm ich da natürlich nicht weiter.

Zusammengefasst:
- Mit "-O3" kann das Modul geladen werden, Asterisk steigt im Modul aus, kein debugging möglich.
- Mit "-g -O0" kann das Modul gar nicht geladen werden.

Die CFLAGS sind bis auf -g und -O? dieselben.

Verzwickt...
 
Wenn die Module ohne -O3 nicht geladen werden können, ist das entweder ein Fehler im Programm oder eine bekannte Abhängigkeit.
Die Option -g ist im Moment nicht so wichtig, wobei "-g -O3" sicher besser wäre.
Sorge dafür, dass die Module und das Programm nicht gestript werden. Das kann entweder beim Erstellen passieren, falls die Asterisk Makefiles das automatisch machen, es kann aber auch beim Erstellen des Freetz Image passieren, wenn man es nicht ausschaltet. Kopiere ggf. die Dateien direkt aus dem Asterisk Build Verzeichnis auf die Box.
Wenn Du wieder an die Stelle mit SIGSEGV kommst, gibst Du im gdb "where" ein.
 
Danke für den Hinweis. Ich bin noch an der Sache dran, kam aber bisher nicht dazu, weiterzumachen. Gearbeitet werden muss schließlich auch ;-)
Ich werde demnächst hier weiter berichten, wie ich vorwärts komme.
 
So, hatte am Wochenende mal Zeit, mich mit dem Thema weiter zu beschäftigen.

@er13:
Mit FREETZ_STRIP_BINARIES kann ich leider nur die Einstellungen für von Freetz kompilierte Packages einstellen. Die uClibc z.B. wird eigentlich gar nicht kompiliert. Ich vermute, ich muss mir dazu die Toolchain selbst erstellen und mich dann dort mal mit den EInstellungen, sofern möglich, beschäftigen.

@Ralf:
Das Modul ist jetzt definitiv mit -O0 -g kompiliert und nicht gestripped. Der Asterisk ist ebenfalls nicht gestripped.
Trotzdem bekomme ich keine sinnvolle Information:
Code:
root@fritz:/var/mod/root# gdb asterisk
GNU gdb (GDB) 7.3.1
Copyright (C) 2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "mips-linux".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
[B]Reading symbols from /usr/sbin/asterisk...done.[/B]
(gdb) set pagination 0
(gdb) handle SIG32 nostop noprint pass
Signal        Stop	Print	Pass to program	Description
SIG32         No	No	Yes		Real-time event 32
(gdb) run -C /etc/default.asterisk/asterisk.conf -v
Starting program: /usr/sbin/asterisk -C /etc/default.asterisk/asterisk.conf -v
Asterisk 1.8.15.0, Copyright (C) 1999 - 2012 Digium, Inc. and others.
Created by Mark Spencer <[email protected]>
Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type 'core show license' for details.
=========================================================================
 Asterisk Dynamic Loader Starting:
Unable to open AMI configuration manager.conf, or configuration is invalid. Asterisk management interface (AMI) disabled.
 Asterisk PBX Core Initializing
 Registering builtin applications:
 [Answer]
 [BackGround]
 [Busy]
 [Congestion]
 [ExecIfTime]
 [Goto]
 [GotoIf]
 [GotoIfTime]
 [ImportVar]
 [Hangup]
 [Incomplete]
 [NoOp]
 [Proceeding]
 [Progress]
 [RaiseException]
 [ResetCDR]
 [Ringing]
 [SayAlpha]
 [SayDigits]
 [SayNumber]
 [SayPhonetic]
 [Set]
 [MSet]
 [SetAMAFlags]
 [Wait]
 [WaitExten]
Can't find indications config file indications.conf.
Could not load features.conf
Could not find valid ccss.conf file. Using cc_max_requests default
 Asterisk Dynamic Loader Starting:
181 modules will be loaded.
Unable to load config smdi.conf: SMDI disabled
No SMDI interfaces are available to listen on, not starting SMDI listener.
Unable to load config res_stun_monitor.conf
Configuration file 'res_fax.conf' not found, using default options.
Unable to load config calendar.conf
 res_crypto.so => (Cryptographic Digital Signatures)
 res_monitor.so => (Call Monitoring Resource)
 res_speech.so => (Generic Speech Recognition API)
 res_fax.so => (Generic FAX Applications)
 res_agi.so => (Asterisk Gateway Interface (AGI))
 res_ael_share.so => (share-able code for AEL)
 res_timing_timerfd.so => (Timerfd Timing Interface)
No agent configuration found -- agent support disabled
 res_timing_pthread.so => (pthread Timing Interface)
 res_musiconhold.so => (Music On Hold Resource)
 res_rtp_asterisk.so => (Asterisk RTP Stack)
 res_rtp_multicast.so => (Multicast RTP Engine)
 chan_bridge.so => (Bridge Interaction Channel)
 chan_multicast_rtp.so => (Multicast RTP Paging Channel)
Unable to load config iax.conf
 chan_local.so => (Local Proxy Channel (Note: used internally by other modules))
preloading pbx module

Program received signal SIGSEGV, Segmentation fault.
0x00000000 in ?? ()
(gdb) where
#0  0x00000000 in ?? ()
#1  0x2af2c0d0 in ?? ()
warning: GDB can't find the start of the function at 0x2af2c0ce.

    GDB is unable to find the start of the function at 0x2af2c0ce
and thus can't determine the size of that function's stack frame.
This means that GDB may be unable to access that stack frame, or
the frames below it.
    This problem is most likely caused by an invalid program counter or
stack pointer.
    However, if you think GDB should simply search farther back
from 0x2af2c0ce for code which looks like the beginning of a
function, you can increase the range of the search using the `set
heuristic-fence-post' command.

Man sieht, dass gdb die Symbole vom asterisk laden kann.

Testweise hab ich dann überprüft, ob gdb Symbole vom chan_sccp.so laden kann. Geht:
Code:
(gdb) symbol-file /usr/lib/asterisk/modules/chan_sccp.so
Load new symbol table from "/var/media/ftp/external/usr/lib/asterisk/modules/chan_sccp.so"? (y or n) y
[B]Reading symbols from /var/media/ftp/external/usr/lib/asterisk/modules/chan_sccp.so...done.[/B]

Und nach dem starten von Asterisk hab ich mal nachgesehen, welche shared libraries laut gdb überhaupt geladen sind:
Code:
(gdb) info shared
From        To          Syms Read   Shared Object Library
0x2aaa8a00  0x2aaac8e0  Yes (*)     /lib/ld-uClibc.so.0
(*): Shared library is missing debugging information.
Letzteres verstehe ich nicht mal ansatzweise, weil gdb ja eigentlich alle im asterisk gelinkten Libraries plus alle geladenen shared libraries anzeigen müsste. Stattdessen wird NUR die /lib/ld-uClibc.so.0 angezeigt.

Die Ausgabe macht für mich keinen Sinn. Kann das jemand erklären?
 
Zuletzt bearbeitet:
Hast Du strip beim Erstellen des Image komplett abgeschaltet? Es reicht nicht, dass die Programme und Libraries beim Erstellen nicht gestrippt werden, sie dürfen auch beim Kopieren ins Image nicht gestrippt werden. Die Option FREETZ_STRIP_BINARIES wird nicht beim Erstellen der Programme angewendet, sondern wenn die erstellten Programme ins Image kopiert werden.

Nur weil gdb anzeigt, dass Symbole aus einer Datei gelesen werden, muss nicht heißen, dass in der Datei auch viele Symbole enthalten sind. Welche Symbole zeigt nm an? Wie ist die von size angezeigte Größe im Vergleich zur Größe der Datei?
 
@scarybest: Alle uClibc-Libraries, die in der download-toolchain enthalten sind, sind nicht gestripped. Das Abschalten der Funktion FREETZ_STRIP_BINARIES sollte dazu führen, dass die ungestripped im Image landen.

Noch ein kleiner Hinweis von mir. So wie ich es verstehe wird chan_sccp.so per libdl geladen (i.e. dlopen usw.). Wir hatten mal einen ähnlichen Fall, der sich genauso geäußert hat (laden per dlopen, segmentation-fault). Es lag daran, dass irgendwelche Symbole nicht aufgelöst werden konnten, dies wiederum weil irgendwelche DT_NEEDED Einträge in chan_sccp.so gefehlt haben. Um diese Ursache auszuschließen, stelle bitte sicher, dass chan_sccp.so mit "-Wl,-z,defs" gelinkt wird (damit wird sichergestellt, dass kein DT_NEEDED fehlt). Für etwas mehr Hintergrund kannst Du die Antwort auf diese Frage lesen.
 
@Ralf:
Nein, ich hatte strip bisher nicht komplett abgeschaltet. Ich hatte es so gemacht, wie Du in Post #9 vorgeschlagen hattest. D.h., den Asterisk nach dem flashen des Image in den NAND Speicher auf meiner 7390 kopiert, dorthin, wo das external image das gestrippte Binary hingelegt hat. Genauso habe ich es mit chan_sccp.so gemacht. D.h., diese beiden sind ungestripped, der Rest allerdings ist dann gestripped, nehme ich an. Ich dachte, das würde genügen.

size sagt folgendes:
Code:
freetz@freetz-linux:~/7390/work$ size asterisk
   text	   data	    bss	    dec	    hex	filename
1848192	  30368	 199644	2078204	 1fb5fc	asterisk

freetz@freetz-linux:~/7390/work$ ls -al asterisk
-rw-r--r-- 1 freetz freetz 22714497 Jan 12 12:27 asterisk



freetz@freetz-linux:~/7390/work$ size chan_sccp.so 
   text	   data	    bss	    dec	    hex	filename
1426521	 226872	   1012	1654405	 193e85	chan_sccp.so

freetz@freetz-linux:~/7390/work$ ls -al chan_sccp.so 
-rw-r--r-- 1 freetz freetz 2964992 Jan 13 00:20 chan_sccp.so

Die Ausgaben von nm habe ich angehängt.

Sowohl nm als auch size sind mir neu, und ich werde mich mit beiden Kommandos mal auseinandersetzen.

Anhang anzeigen nm_asterisk.txt
Anhang anzeigen nm_chan_sccp.txt


@er13:
Dass die Libraries in der Download-Toolchain nicht gestripped sind, war mir neu. Danke für die Info. Wie oben schon geschrieben dachte ich, es würde erstmal genügen, die relevanten Dateien (asterisk und chan_sccp.so) ungestripped auf die Box zu bringen, um zu debuggen.
 
Noch eine Anmerkung zu FREETZ_STRIP_BINARIES:

Wenn ich die Option anschalte erscheint beim erstellen des image folgende Meldung zusätzlich:

Code:
stripping leftover unstripped binaries
    build/modified/filesystem/usr/share/ctlmgr/libplcctlmgr.so
    build/modified/filesystem/usr/share/ctlmgr/libwlan.so
    build/modified/filesystem/usr/share/ctlmgr/libctlwebdav.so
    build/modified/filesystem/lib/libdslsmiface.so.0.0.0
    build/modified/filesystem/lib/libm-0.9.32.1.so
    build/modified/filesystem/lib/librt-0.9.32.1.so
    build/modified/filesystem/lib/ld-uClibc-0.9.32.1.so
    build/modified/filesystem/lib/libthread_db-0.9.32.1.so
    build/modified/filesystem/lib/libutil-0.9.32.1.so
    build/modified/filesystem/lib/libcrypt-0.9.32.1.so
    build/modified/filesystem/lib/libtiinterpreter.so.0.0.0
    build/modified/filesystem/lib/libuClibc-0.9.32.1.so
    build/modified/filesystem/lib/libdl-0.9.32.1.so
    build/modified/filesystem/lib/libwlancsi.so
    build/modified/filesystem/lib/libpthread-0.9.32.1.so
    build/modified/filesystem/lib/libwlanparams.so
    build/modified/filesystem/sbin/sysutil
    build/modified/filesystem/bin/wlancfgconv
    build/modified/filesystem/bin/wlancfgctl

Das bezieht sich also fast ausschließlich auf libraries?

Sehe ich mir z.B. den gdb selbst an den ich mitbaue, ist die Dateigröße mit und ohne gesetzte FREETZ_STRIP_BINARIES Option dieselbe.
file sagt, dass das binary auch in beiden Fällen gestripped ist.

Code:
(mit gesetzer Option)
freetz@freetz-linux:~/7390/freetz-trunk-asterisk$ ls -al build/modified/external/usr/bin/gdb
-rwxr-xr-x 1 freetz freetz 3075404 Jan 14 16:07 build/modified/external/usr/bin/gdb

(ohne gesetzte Option)
freetz@freetz-linux:~/7390/freetz-trunk-asterisk$ ls -al build/modified/external/usr/bin/gdb
-rwxr-xr-x 1 freetz freetz 3075404 Jan 14 16:07 build/modified/external/usr/bin/gdb

Auffällig ist, dass der Zeitstempel derselbe ist. Muss ich vorher ein make clean/distclean machen?

Der kompilierte gdb im source Verzeichnis ist größer und unstripped:

Code:
freetz@freetz-linux:~/7390/freetz-trunk-asterisk$ ls -al source/target-mips_uClibc-0.9.32.1/gdb-7.3.1/gdb/gdb
-rwxr-xr-x 1 freetz freetz 3787978 Jan 14 16:07 source/target-mips_uClibc-0.9.32.1/gdb-7.3.1/gdb/gdb

source/target-mips_uClibc-0.9.32.1/gdb-7.3.1/gdb/gdb: ELF 32-bit MSB executable, MIPS, MIPS32 rel2 version 1, dynamically linked (uses shared libs), with unknown capability 0x41000000 = 0xf676e75, with unknown capability 0x10000 = 0x70403, not stripped
 
Zuletzt bearbeitet:
Schau mal im gdb mit "info files", zu welcher Datei (Library) die Adresse gehört, wo der Fehler auftritt. Nimm dann von dieser Datei eine Version mit Symbolen ins Image auf.
 
Die Ausgabe von "info files" ist irgendwie auch nicht vollständig.

Laut "where" im gdb hakts an folgender Adresse:
Code:
(gdb) where
#0  0x00000000 in ?? ()
#1  0x2af2c0d0 in ?? ()
warning: GDB can't find the start of the function at 0x2af2c0ce.

    GDB is unable to find the start of the function at 0x2af2c0ce
and thus can't determine the size of that function's stack frame.
This means that GDB may be unable to access that stack frame, or
the frames below it.
    This problem is most likely caused by an invalid program counter or
stack pointer.
    However, if you think GDB should simply search farther back
from 0x2af2c0ce for code which looks like the beginning of a
function, you can increase the range of the search using the `set
heuristic-fence-post' command.

"info files" sagt:
Code:
(gdb) info files
Symbols from "/usr/sbin/asterisk".
Unix child process:
	Using the running image of child LWP 11895.
	While running this, GDB does not access memory from...
Local exec file:
	`/usr/sbin/asterisk', file type elf32-tradbigmips.
	Entry point: 0x41cbf0
	0x00400154 - 0x00400168 is .interp
	0x00400168 - 0x00400180 is .reginfo
	0x00400180 - 0x004002d0 is .dynamic
	0x004002d0 - 0x00403270 is .hash
	0x00403270 - 0x0040b060 is .dynsym
	0x0040b060 - 0x00414962 is .dynstr
	0x00414962 - 0x00415920 is .gnu.version
	0x00415920 - 0x00415940 is .gnu.version_r
	0x00415940 - 0x00415980 is .rel.dyn
	0x00415980 - 0x00416418 is .rel.plt
	0x00416418 - 0x00416460 is .init
	0x00416460 - 0x004179b0 is .plt
	0x004179b0 - 0x00582740 is .text
	0x00582740 - 0x00582760 is .MIPS.stubs
	0x00582760 - 0x00582798 is .fini
	0x005827a0 - 0x005c3480 is .rodata
	0x005c3480 - 0x005c349c is .eh_frame_hdr
	0x005c349c - 0x005c34dc is .eh_frame
	0x005d34dc - 0x005d3620 is .ctors
	0x005d3620 - 0x005d3760 is .dtors
	0x005d3760 - 0x005d3764 is .jcr
	0x005d3770 - 0x005da5b0 is .data
	0x005da5b0 - 0x005da5b4 is .rld_map
	0x005da5b4 - 0x005dab08 is .got.plt
	0x005dab10 - 0x005dab8c is .got
	0x005dab8c - 0x005dab90 is .sdata
	0x005dab90 - 0x005dabec is .sbss
	0x005dabf0 - 0x0060b770 is .bss
	0x2aaa8114 - 0x2aaa812c is .reginfo in /lib/ld-uClibc.so.0
	0x2aaa812c - 0x2aaa81fc is .dynamic in /lib/ld-uClibc.so.0
	0x2aaa81fc - 0x2aaa836c is .hash in /lib/ld-uClibc.so.0
	0x2aaa836c - 0x2aaa86bc is .dynsym in /lib/ld-uClibc.so.0
	0x2aaa86bc - 0x2aaa89e2 is .dynstr in /lib/ld-uClibc.so.0
	0x2aaa89e4 - 0x2aaa89fc is .rel.dyn in /lib/ld-uClibc.so.0
	0x2aaa8a00 - 0x2aaac8e0 is .text in /lib/ld-uClibc.so.0
---Type <return> to continue, or q <return> to quit---
	0x2aaac8e0 - 0x2aaacc50 is .rodata in /lib/ld-uClibc.so.0
	0x2aabcffc - 0x2aabd000 is .dtors in /lib/ld-uClibc.so.0
	0x2aabd000 - 0x2aabd020 is .data in /lib/ld-uClibc.so.0
	0x2aabd020 - 0x2aabd0d8 is .got in /lib/ld-uClibc.so.0
	0x2aabd0d8 - 0x2aabd0e0 is .sbss in /lib/ld-uClibc.so.0
	0x2aabd0e0 - 0x2aabd130 is .bss in /lib/ld-uClibc.so.0

Die Adresse "0x2af2c0d0" kann ich in dieser Ausgabe nicht finden?

Hier kommt wohl derselbe Umstand zum tragen wie ich schon in Post #11 schrieb.
gdb "sieht" nur die gelinkte "/lib/ld-uClibc.so.0", obwohl ldd sagt, dass asterisk durchaus auch gegen andere libraries gelinkt wurde:
Code:
root@fritz:/var/mod/root# ldd /usr/sbin/asterisk 
	libssl.so.0.9.8 => /lib/libssl.so.0.9.8 (0x2aabe000)
	libcrypto.so.0.9.8 => /usr/lib/freetz/libcrypto.so.0.9.8 (0x2aaf2000)
	libdl.so.0 => /lib/libdl.so.0 (0x2abff000)
	libpthread.so.0 => /lib/libpthread.so.0 (0x2ac12000)
	libncurses.so.5 => /usr/lib/freetz/libncurses.so.5 (0x2ac36000)
	libm.so.0 => /lib/libm.so.0 (0x2ac69000)
	libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x2ac8e000)
	libc.so.0 => /lib/libc.so.0 (0x2acac000)
	libcrypto.so.0.9.8 => /lib/libcrypto.so.0.9.8 (0x2ad28000)
	ld-uClibc.so.0 => /lib/ld-uClibc.so.0 (0x2aaa8000)
 
Noch ein kleiner Hinweis von mir. Mit folgender Holzhammer-Methode kann man das Strippen der Binaries/Libraries komplett abschalten (mipsel vs mips bitte selbst anpassen):

Code:
cd ${freetz_root}/toolchain/build/mips(el)_gcc-4.6.3_uClibc-0.9.*/mips(el)-linux-uclibc/bin
mv mips(el)-linux-uclibc-strip mips(el)-linux-uclibc-strip-disabled
ln -s /bin/true mips(el)-linux-uclibc-strip

Und überprüfe bitte das, was ich in #13 geschrieben habe. Das ist die blödeste Ursache, die man haben kann. Lässt sich aber relativ leicht überprüfen (bevor Du Dich mühsam durch uClibc durchdebuggst, um am Ende festzustellen, dass es der loader ist, der mit segmentation-fault aussteigt, weil irgendein Symbol aus libm nicht aufgelöst werden kann).
 
@er13:
Auch für diese Tipps herzlichen Dank.

Ich habe jetzt mal versucht, Deine LDFLAGS in den Build einzubauen.

Ich lern grad' extrem viel über freetz, die freetz Toolchain, gdb, Makefiles etc. etc. Das ist super.

Wenn nun "-z defs" an den linker durchgereicht wird, meckert der über einen Haufen "undefined references", hauptsächlich zu den Asterisk Methoden (hier nur ein Auszug):

Code:
cmd() { PATH="/home/freetz/7390/freetz-trunk-asterisk/toolchain/build/mips_gcc-4.6.3_uClibc-0.9.32.1/mips-linux-uclibc/bin:/home/freetz/7390/freetz-trunk-asterisk/toolchain/build/mips_gcc-4.6.3/mips-unknown-linux-gnu/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" LD_RUN_PATH="/usr/lib/freetz" make -j2  "$@"  || { printf "\n\\033[33m%s\\033[m\n" "ERROR: Build failed.";  exit 1; } };  if [ -e source/.echo_item_start -a ! -e source/.echo_item_build ]; then echo -n "building... "; touch source/.echo_item_build; fi; cmd -C source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE
make[1]: Entering directory `/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE'
Making all in src
make[2]: Entering directory `/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src'
make  all-am
make[3]: Entering directory `/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src'
  CCLD   chan_sccp.la
.libs/chan_sccp_la-chan_sccp.o: In function `sccp_requestChannel':
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:79: undefined reference to `__stack_chk_guard'
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:95: undefined reference to `__stack_chk_guard'
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:98: undefined reference to `__ast_verbose'
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:98: undefined reference to `__ast_verbose'
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:100: undefined reference to `__ast_verbose'
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:100: undefined reference to `__ast_verbose'
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:103: undefined reference to `__ast_verbose'
.libs/chan_sccp_la-chan_sccp.o:/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:103: more undefined references to `__ast_verbose' follow
.libs/chan_sccp_la-chan_sccp.o: In function `sccp_requestChannel':
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:162: undefined reference to `__stack_chk_guard'
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:162: undefined reference to `__stack_chk_fail'
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:162: undefined reference to `__stack_chk_fail'
.libs/chan_sccp_la-chan_sccp.o: In function `sccp_devicestate':
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:175: undefined reference to `__stack_chk_guard'
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:217: undefined reference to `__stack_chk_guard'
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:217: undefined reference to `__ast_verbose'
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:217: undefined reference to `__ast_verbose'
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:220: undefined reference to `__stack_chk_guard'
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:220: undefined reference to `__stack_chk_fail'
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:220: undefined reference to `__stack_chk_fail'
.libs/chan_sccp_la-chan_sccp.o: In function `sccp_handle_message':
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:356: undefined reference to `__stack_chk_guard'
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:361: undefined reference to `ast_log'
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:361: undefined reference to `ast_log'
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:363: undefined reference to `__ast_free'
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:363: undefined reference to `__ast_free'
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:378: undefined reference to `__ast_verbose'
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:378: undefined reference to `__ast_verbose'
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:385: undefined reference to `ast_log'
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:385: undefined reference to `ast_log'
.libs/chan_sccp_la-chan_sccp.o: In function `check_session_message_device':
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:234: undefined reference to `ast_log'
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:234: undefined reference to `ast_log'
/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:244: undefined reference to `ast_log'
.libs/chan_sccp_la-chan_sccp.o:/home/freetz/7390/freetz-trunk-asterisk/source/target-mips_uClibc-0.9.32.1/chan-sccp-4.0.0_STABLE/src/chan_sccp.c:244: more undefined references to `ast_log' follow
...

Die Doku zu ld sagt zu "-z defs":

Force a fatal error if any undefined symbols remain at the end of the link. This is the default when an executable is built. It is also useful when building a shared object to assure that the object is self-contained, that is, that all its symbolic references are resolved internally.


Meinem (bisher begrenzten) Verständnis zufolge kann chan_sccp.so aber doch gar nicht self-contained sein, da es ja als Asterisk-Modul auf dessen Strukturen angewiesen ist? Korrigier mich bitte, wenn ich falsch liege.
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.