CentOS7安装成功后,Freeswitch1.4.14安装也很顺利,但是加载mod_callcenter的时候,freeswitch直接崩溃,通过修改源代码,在源代码中输出log信息定位问题出在mod_callcenter.c文件1375行代码:
switch_cache_db_test_reactive(dbh, "select count(session_uuid) from members", "drop table members", members_sql);
在switch_core_sqldb.c中找到该函数定义,并进行测试,结果无法执行odbc的数据库操作,使用gdb跟踪后得到如下信息:
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffac686700 (LWP 3941)]
0x00007fffabce9f7e in get_ctype () from /usr/lib64/libmyodbc5.so
Missing separate debuginfos, use: debuginfo-install cyrus-sasl-lib-2.1.26-17.el7.x86_64 glibc-2.17-55.el7.x86_64 keyutils-libs-1.5.8-3.el7.x86_64 krb5-libs-1.11.3-49.el7.x86_64 ldns-1.6.16-7.el7.x86_64 libcom_err-1.42.9-4.el7.x86_64 libcurl-7.29.0-19.el7.x86_64 libedit-3.0-12.20121213cvs.el7.x86_64 libgcc-4.8.2-16.el7.x86_64 libidn-1.28-3.el7.x86_64 libjpeg-turbo-1.2.90-5.el7.x86_64 libselinux-2.2.2-6.el7.x86_64 libssh2-1.4.3-8.el7.x86_64 libstdc++-4.8.2-16.el7.x86_64 libtool-ltdl-2.4.2-20.el7.x86_64 mysql-connector-odbc-5.2.5-6.el7.x86_64 ncurses-libs-5.9-13.20130511.el7.x86_64 nspr-4.10.2-4.el7.x86_64 nss-3.15.4-6.el7.x86_64 nss-softokn-freebl-3.15.4-2.el7.x86_64 nss-util-3.15.4-2.el7.x86_64 openldap-2.4.39-3.el7.x86_64 openssl-libs-1.0.1e-34.el7_0.6.x86_64 pcre-8.32-12.el7.x86_64 speex-1.2-0.19.rc1.el7.x86_64 sqlite-3.7.17-4.el7.x86_64 unixODBC-2.3.1-10.el7.x86_64 xz-libs-5.1.2-8alpha.el7.x86_64 zlib-1.2.7-13.el7.x86_64
(gdb)
使用rpm命令查询,这些程序均已经安装,网上查询资料说要使用debuginfo-install安装,把debuginfo-install和后面的内容全部复制后执行