[Users] undefined symbol: mem_lock

Ovidiu Sas sip.nslu at gmail.com
Mon Sep 25 06:36:01 CEST 2006


Hi,


I'm trying to build openser 1.1.0 (notls) for arm for Linksys NSLU -
OpenSLUG OS.
The cross compilation went ok, but when I try to run the program I
encounter the following error:

root at LKG7BE78E # openser -c
  0(4517) ERROR: load_module: could not open module
</usr/lib/openser/modules/sl.so>: /usr/lib/openser/modules/sl.so:
undefined symbol: mem_lock
 0(4517) parse error (41,13-14): failed to load module



Here are the compile flags:

NOTE: make -e MAKEFLAGS= bin-target=/usr/sbin
doc-target=/usr/share/doc/openser lib-target=/usr/lib/openser/
modules-target=/usr/lib/openser/modules/ cfg-target=/etc/openser/
prefix=/usr cfg-prefix=/ ARCH=armeb LD=ccache armeb-linux-gcc
-march=armv5te -mtune=xscale -mthumb-interwork -mno-thumb all
bison -d -b cfg cfg.y
cfg.y: conflicts: 1 shift/reduce
flex cfg.lex
Compiling action.c
ccache armeb-linux-gcc -march=armv5te -mtune=xscale -mthumb-interwork
-mno-thumb -isystem/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux/include
-Os -fomit-frame-pointer -frename-registers -fno-unroll-loops
-fno-inline-functions -fweb -funit-at-a-time    -DNAME='"openser"'
-DVERSION='"1.1.0-notls"' -DARCH='"armeb"' -DOS='"linux"'
-DCOMPILER='"ccache 3.4.4"' -D__CPU_armeb -D__OS_linux -D__SMP_no
-DCFG_DIR='"/etc/openser/"' -DPKG_MALLOC -DSHM_MEM  -DSHM_MMAP
-DUSE_IPV6 -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE -DHAVE_RESOLV_RES
-DF_MALLOC -DSTATISTICS  -DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN
-DHAVE_SCHED_YIELD -DHAVE_MSG_NOSIGNAL -DHAVE_MSGHDR_MSG_CONTROL
-DHAVE_ALLOCA_H -DHAVE_TIMEGM -DUSE_SYSV_SEM   -DHAVE_SIGIO_RT
-DHAVE_SELECT -c action.c -o action.o
...
Linking openser
ccache armeb-linux-gcc -march=armv5te -mtune=xscale -mthumb-interwork
-mno-thumb -L/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux/lib
-Wl,-rpath-link,/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux/lib
-Wl,-O1 action.o core_stats.o crc.o daemonize.o data_lump.o
data_lump_rpl.o dprint.o dset.o error.o fifo_server.o flags.o
forward.o io_wait.o ip_addr.o items.o items_extra.o main.o md5.o
md5utils.o modparam.o msg_translator.o pass_fd.o proxy.o qvalue.o re.o
receive.o resolve.o route.o route_struct.o script_cb.o serialize.o
socket_info.o sr_module.o statistics.o tcp_main.o tcp_read.o timer.o
tsend.o udp_server.o unixsock_server.o usr_avp.o mem/f_malloc.o
mem/mem.o mem/memtest.o mem/q_malloc.o mem/shm_mem.o mem/vq_malloc.o
parser/hf.o parser/msg_parser.o parser/parse_allow.o
parser/parse_content.o parser/parse_cseq.o parser/parse_disposition.o
parser/parse_diversion.o parser/parse_event.o parser/parse_expires.o
parser/parse_fline.o parser/parse_from.o parser/parse_hname2.o
parser/parse_hostport.o parser/parse_methods.o parser/parse_nameaddr.o
parser/parse_param.o parser/parse_refer_to.o parser/parse_rpid.o
parser/parse_rr.o parser/parse_sipifmatch.o parser/parse_sst.o
parser/parse_supported.o parser/parse_to.o parser/parse_uri.o
parser/parse_via.o parser/parser_f.o parser/digest/digest.o
parser/digest/digest_parser.o parser/digest/param_parser.o
parser/contact/contact.o parser/contact/parse_contact.o db/db.o
db/db_fifo.o db/db_id.o db/db_pool.o lex.yy.o cfg.tab.o     -ldl
-lresolv -o openser
...
make[1]: Entering directory
`/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/work/openser-1.1.0-notls-r0/openser-1.1.0-notls/mod
ules/sl'
Compiling sl.c
ccache armeb-linux-gcc -march=armv5te -mtune=xscale -mthumb-interwork
-mno-thumb -fPIC -DPIC
-isystem/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux/include
-Os -fomit-frame-pointer -frename-registers -fno-unroll-loops
-fno-inline-functions -fweb -funit-at-a-time    -DNAME='"openser"'
-DVERSION='"1.1.0-notls"' -DARCH='"armeb"' -DOS='"linux"'
-DCOMPILER='"ccache 3.4.4"' -D__CPU_armeb -D__OS_linux -D__SMP_no
-DCFG_DIR='"/etc/openser/"' -DPKG_MALLOC -DSHM_MEM  -DSHM_MMAP
-DUSE_IPV6 -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE -DHAVE_RESOLV_RES
-DF_MALLOC -DSTATISTICS  -DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN
-DHAVE_SCHED_YIELD -DHAVE_MSG_NOSIGNAL -DHAVE_MSGHDR_MSG_CONTROL
-DHAVE_ALLOCA_H -DHAVE_TIMEGM -DUSE_SYSV_SEM   -DHAVE_SIGIO_RT
-DHAVE_SELECT -c sl.c -o sl.o
...
Linking sl.so
ccache armeb-linux-gcc -march=armv5te -mtune=xscale -mthumb-interwork
-mno-thumb -shared
-L/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux/lib
-Wl,-rpath-link,/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux/lib
-Wl,-O1 sl.o sl_cb.o sl_funcs.o    -o sl.so


Here's the output of the nm -D for openser:

root at LKG7BE78E:/usr/sbin# nm -D /usr/sbin/openser
         U _IO_getc
00066f38 R _IO_stdin_used
         w _Jv_RegisterClasses
         U __assert_fail
         U __ctype_b_loc
         w __deregister_frame_info
         U __dn_expand
         U __errno_location
         U __fxstat
         w __gmon_start__
00089000 A __init_array_end
00089000 A __init_array_start
         U __libc_current_sigrtmax
         U __libc_current_sigrtmin
         U __libc_start_main
         U __lxstat
         w __register_frame_info
         U __res_init
         U __res_search
         U __res_state
         U __xstat
         U abort
         U accept
         U alarm
         U atoi
         U bind
         U chdir
         U chmod
         U chown
         U chroot
         U clearerr
         U close
         U closelog
         U connect
         U ctime
         U difftime
         U dlclose
         U dlerror
         U dlopen
         U dlsym
         U exit
         U fclose
         U fcntl
         U fdopen
         U ferror
         U fflush
         U fgets
         U fileno
         U fopen
         U fork
         U fprintf
         U fputc
         U fputs
         U fread
         U free
         U freopen
         U fscanf
         U fwrite
         U getcwd
         U geteuid
         U getgrnam
         U gethostbyaddr
         U gethostbyname
         U gethostbyname2
         U getopt
         U getpgid
         U getpid
         U getprotobyname
         U getpwnam
         U getrlimit
         U getsockname
         U getsockopt
         U inet_pton
         U ioctl
         U isatty
         U kill
         U listen
         U malloc
         U memchr
         U memcmp
         U memcpy
         U memmove
         U memset
         U mkfifo
         U mktime
         U mmap
         U munmap
         U open
         U openlog
0008b444 B optarg
0008b434 B opterr
0008b448 B optopt
         U pathconf
         U pause
         U perror
         U poll
         U printf
         U putchar
         U puts
         U rand
         U read
         U realloc
         U recv
         U recvfrom
         U recvmsg
         U regcomp
         U regexec
         U regfree
         U select
         U semctl
         U semget
         U semop
         U send
         U sendmsg
         U sendto
         U setbuf
         U seteuid
         U setgid
         U setrlimit
         U setsid
         U setsockopt
         U setuid
         U sigaddset
         U sigdelset
         U sigemptyset
         U sigismember
         U signal
         U sigprocmask
         U sigtimedwait
         U sleep
         U snprintf
         U socket
         U socketpair
         U srand
0008b43c B stderr
0008b440 B stdin
0008b438 B stdout
         U strcasecmp
         U strchr
         U strcmp
         U strcpy
         U strdup
         U strerror
         U strlen
         U strncasecmp
         U strncmp
         U strncpy
         U strtol
         U syslog
         U system
         U time
         U uname
         U unlink
         U vfprintf
         U vsnprintf
         U wait
         U waitpid
         U writev
root at LKG7BE78E:/usr/sbin# nm -D /usr/lib/openser/modules/sl.so
         U MDStringArray
0000b260 A _DYNAMIC
         w _Jv_RegisterClasses
0000b60c A __bss_end__
0000b570 A __bss_start
0000b570 A __bss_start__
         w __cxa_finalize
0000b454 D __data_start
         w __deregister_frame_info
0000b60c A __end__
         U __errno_location
         w __gmon_start__
         w __register_frame_info
0000b60c A _bss_end__
0000b570 A _edata
0000b60c A _end
00002b68 T _fini
000011e4 T _init
         U add_lump_rpl
         U build_res_buf_from_sip_req
         U crcitt_string_array
         U debug
000018b0 T destroy_slcb_lists
         U dprint
         U err2reason_phrase
0000b460 D exports
         U fm_free
         U fm_malloc
         U get_send_socket
         U get_ticks
         U log_facility
         U log_stderr
         U mem_block
         U mem_lock
         U memcmp
         U memcpy
         U memset
         U mhomed
0000b4e8 D mod_stats
0000b560 D module_flags
0000b564 D module_version
0000b5e4 B modules
         U parse_headers
0000b5e0 B pgid_file
0000b5f0 B pid_file
         U prev_ser_error
         U print_dset
0000b600 B rcv_acks
         U register_script_cb
00001900 T register_slcb
         U reply_to_via
000019e0 T run_sl_callbacks
         U semop
0000b5f4 B sent_err_rpls
0000b5ec B sent_rpls
         U shm_block
0000b45c D sl_enable_stats
00002868 T sl_filter_ACK
000026a8 T sl_reply_error
00001f58 T sl_send_reply
00001ef0 T sl_shutdown
00001d3c T sl_startup
0000b58c B slcb_hl
         U stat_lock
         U strerror
         U strlen
         U syslog
         U tcp_disable
0000b608 B tcp_listen
         U tcp_send
0000b5d8 B tx_1xx_rpls
0000b5d4 B tx_2xx_rpls
0000b5dc B tx_3xx_rpls
0000b5f8 B tx_4xx_rpls
0000b5e8 B tx_5xx_rpls
0000b5fc B tx_6xx_rpls
0000b604 B udp_listen
         U udp_send
         U update_sock_struct_from_via
root at LKG7BE78E:/usr/sbin#


A similar problem was encounter and fixed for OpenBSD ....



Any help would be greatly appreciated.
-ovi




More information about the sr-users mailing list