Freeswitch v1.2.stable build fails on Ubuntu 11.10 x64
I've been using the following script for some time to build freeswitch on my machines. I recently edited the script to install openssl v1.0.1f, as that is now required it seems by this version of free switch. Here's my script: #!/bin/bash test "$BRANCH" != "" || BRANCH=v1.2.stable apt-get update apt-get install -y git-core subversion build-essential autoconf automake libtool libncurses5 libncurses5-dev make libjpeg-dev gawk apt-get install -y libcurl4-openssl-dev libexpat1-dev libgnutls-dev libtiff4-dev libx11-dev unixodbc-dev libssl-dev python2.6-dev \ zlib1g-dev libzrtpcpp-dev libasound2-dev libogg-dev libvorbis-dev libperl-dev libgdbm-dev libdb-dev python-dev \ uuid-dev update-alternatives --set awk /usr/bin/gawk git clone -b $BRANCH git://git.freeswitch.org/freeswitch.git ############################################################### # INSTALL OPENSSL v1.0.1f ############################################################### wget http://www.linuxfromscratch.org/patches/blfs/svn/openssl-1.0.1f-fix_parallel... wget http://www.linuxfromscratch.org/patches/blfs/svn/openssl-1.0.1f-fix_pod_synt... wget http://www.openssl.org/source/openssl-1.0.1f.tar.gz tar -zxvf openssl-1.0.1f.tar.gz cd openssl-1.0.1f patch -Np1 -i ../openssl-1.0.1f-fix_parallel_build-1.patch && patch -Np1 -i ../openssl-1.0.1f-fix_pod_syntax-1.patch && ./config --prefix=/usr/openssl101f -fPIC \ --openssldir=/etc/ssl \ --libdir=lib \ shared \ zlib-dynamic && make make install ############################################################## # INSTALL FREESWITCH ############################################################## cd .. cd freeswitch ./bootstrap.sh ./configure CFLAGS="-I/usr/openssl101f/include" LDFLAGS="-L/usr/openssl101f/lib" cat >modules.conf <<'EOL' applications/mod_commands applications/mod_conference applications/mod_db applications/mod_dptools applications/mod_enum applications/mod_esf applications/mod_esl applications/mod_expr applications/mod_fifo applications/mod_fsv applications/mod_hash applications/mod_httapi applications/mod_spandsp codecs/mod_amr codecs/mod_bv codecs/mod_g723_1 codecs/mod_g729 codecs/mod_h26x codecs/mod_vp8 codecs/mod_speex dialplans/mod_dialplan_asterisk dialplans/mod_dialplan_xml endpoints/mod_loopback endpoints/mod_sofia event_handlers/mod_cdr_csv event_handlers/mod_cdr_sqlite event_handlers/mod_event_socket formats/mod_local_stream formats/mod_native_file formats/mod_sndfile formats/mod_tone_stream languages/mod_lua languages/mod_spidermonkey loggers/mod_console loggers/mod_logfile loggers/mod_syslog say/mod_say_en xml_int/mod_xml_cdr xml_int/mod_xml_rpc xml_int/mod_xml_scgi EOL make cat >/etc/init.d/freeswitch <<'EOL' #!/bin/sh ### -*- mode:shell-script; indent-tabs-mode:nil; sh-basic-offset:2 -*- ### BEGIN INIT INFO # Provides: freeswitch # Required-Start: $network $remote_fs $local_fs # Required-Stop: $network $remote_fs $local_fs # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: FreeSWITCH Softswitch # Description: FreeSWITCH Softswitch ### END INIT INFO # Author: Travis Cross <tc@traviscross.com> PATH=/sbin:/usr/sbin:/bin:/usr/bin DESC=freeswitch NAME=freeswitch DAEMON=/usr/local/freeswitch/bin/freeswitch DAEMON_ARGS="-u freeswitch -g daemon -rp -nc -nonat" USER=freeswitch PIDFILE=/usr/local/freeswitch/run/freeswitch.pid SCRIPTNAME=/etc/init.d/$NAME WORKDIR=/usr/local/freeswitch/lib [ -x $DAEMON ] || exit 0 [ -r /etc/default/$NAME ] && . /etc/default/$NAME . /lib/init/vars.sh . /lib/lsb/init-functions do_start() { start-stop-daemon --start --quiet \ --pidfile $PIDFILE --exec $DAEMON --name $NAME --user $USER \ --test > /dev/null \ || return 1 ulimit -s 240 start-stop-daemon --start --quiet \ --pidfile $PIDFILE --exec $DAEMON --name $NAME --user $USER \ --chdir $WORKDIR -- $DAEMON_ARGS $DAEMON_OPTS \ || return 2 return 0 } stop_fs() { start-stop-daemon --stop --quiet \ --pidfile $PIDFILE --name $NAME --user $USER \ --retry=TERM/30/KILL/5 } stop_fs_children() { start-stop-daemon --stop --quiet \ --exec $DAEMON \ --oknodo --retry=0/30/KILL/5 } do_stop() { stop_fs RETVAL="$?" [ "$RETVAL" -eq 2 ] && return 2 stop_fs_children [ "$?" -eq 2 ] && return 2 rm -f $PIDFILE return "$RETVAL" } do_reload() { start-stop-daemon --stop --quiet \ --pidfile $PIDFILE --name $NAME --user $USER \ --signal HUP } case "$1" in start) [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC " "$NAME" do_start case "$?" in 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac ;; stop) [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME" do_stop case "$?" in 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac ;; status) status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $? ;; reload|force-reload) log_daemon_msg "Reloading $DESC" "$NAME" do_reload log_end_msg $? ;; restart) log_daemon_msg "Restarting $DESC" "$NAME" do_stop case "$?" in 0|1) do_start case "$?" in 0) log_end_msg 0 ;; 1|*) log_end_msg 1 ;; esac ;; *) log_end_msg 1 ;; esac ;; *) echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2 exit 3 ;; esac exit 0 EOL chmod a+x /etc/init.d/freeswitch make install make samples adduser --disabled-password --quiet --system --gecos "FreeSWITCH Voice Platform" --ingroup daemon freeswitch chown -R freeswitch:daemon /usr/local/freeswitch/ chmod -R o-rwx /usr/local/freeswitch/ The build error I'm getting is the following: *** Warning: Linking the shared library libfreeswitch.la against the *** static library libs/libedit/src/.libs/libedit.a is not portable! quiet_libtool: link: g++ -fPIC -DPIC -shared -nostdlib /usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/4.6.1/crtbeginS.o .libs/libfreeswitch_la-switch_apr.o .libs/libfreeswitch_la-switch_buffer.o .libs/libfreeswitch_la-switch_caller.o .libs/libfreeswitch_la-switch_channel.o .libs/libfreeswitch_la-switch_console.o .libs/libfreeswitch_la-switch_mprintf.o .libs/libfreeswitch_la-switch_core_media_bug.o .libs/libfreeswitch_la-switch_core_timer.o .libs/libfreeswitch_la-switch_core_asr.o .libs/libfreeswitch_la-switch_core_event_hook.o .libs/libfreeswitch_la-switch_core_speech.o .libs/libfreeswitch_la-switch_core_memory.o .libs/libfreeswitch_la-switch_core_codec.o .libs/libfreeswitch_la-switch_core_file.o .libs/libfreeswitch_la-switch_core_hash.o .libs/libfreeswitch_la-switch_core_sqldb.o .libs/libfreeswitch_la-switch_core_session.o .libs/libfreeswitch_la-switch_core_directory.o .libs/libfreeswitch_la-switch_core_state_machine.o .libs/libfreeswitch_la-switch_core_io.o .libs/libfreeswitch_la-switch_core_rwlock.o .libs/libfreeswitch_la-switch_core_port_allocator.o .libs/libfreeswitch_la-switch_core.o .libs/libfreeswitch_la-switch_scheduler.o .libs/libfreeswitch_la-switch_core_db.o .libs/libfreeswitch_la-switch_dso.o .libs/libfreeswitch_la-switch_loadable_module.o .libs/libfreeswitch_la-switch_utils.o .libs/libfreeswitch_la-switch_event.o .libs/libfreeswitch_la-switch_resample.o .libs/libfreeswitch_la-switch_regex.o .libs/libfreeswitch_la-switch_rtp.o .libs/libfreeswitch_la-switch_ivr_bridge.o .libs/libfreeswitch_la-switch_ivr_originate.o .libs/libfreeswitch_la-switch_ivr_async.o .libs/libfreeswitch_la-switch_ivr_play_say.o .libs/libfreeswitch_la-switch_ivr_say.o .libs/libfreeswitch_la-switch_ivr_menu.o .libs/libfreeswitch_la-switch_ivr.o .libs/libfreeswitch_la-switch_stun.o .libs/libfreeswitch_la-switch_nat.o .libs/libfreeswitch_la-switch_log.o .libs/libfreeswitch_la-switch_xml.o .libs/libfreeswitch_la-switch_xml_config.o .libs/libfreeswitch_la-switch_config.o .libs/libfreeswitch_la-switch_time.o .libs/libfreeswitch_la-switch_odbc.o .libs/libfreeswitch_la-switch_pgsql.o .libs/libfreeswitch_la-switch_limit.o .libs/libfreeswitch_la-g711.o .libs/libfreeswitch_la-switch_pcm.o .libs/libfreeswitch_la-switch_profile.o .libs/libfreeswitch_la-switch_json.o .libs/libfreeswitch_la-switch_curl.o .libs/libfreeswitch_la-tpl.o .libs/libfreeswitch_la-stfu.o .libs/libfreeswitch_la-libteletone_detect.o .libs/libfreeswitch_la-libteletone_generate.o .libs/libfreeswitch_la-miniwget.o .libs/libfreeswitch_la-minixml.o .libs/libfreeswitch_la-igd_desc_parse.o .libs/libfreeswitch_la-minisoap.o .libs/libfreeswitch_la-miniupnpc.o .libs/libfreeswitch_la-upnpreplyparse.o .libs/libfreeswitch_la-upnpcommands.o .libs/libfreeswitch_la-minissdpc.o .libs/libfreeswitch_la-upnperrors.o .libs/libfreeswitch_la-natpmp.o .libs/libfreeswitch_la-getgateway.o .libs/libfreeswitch_la-plc.o .libs/libfreeswitch_la-alloc.o .libs/libfreeswitch_la-bit_operations.o .libs/switch_cpp.o -lz -L/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -L/usr/openssl101f/lib libs/apr-util/.libs/libaprutil-1.a libs/apr/.libs/libapr-1.a libs/sqlite/.libs/libsqlite3.a libs/pcre/.libs/libpcre.a libs/speex/libspeex/.libs/libspeexdsp.a libs/srtp/.libs/libsrtp.a libs/libedit/src/.libs/libedit.a libs/curl/lib/.libs/libcurl.a libs/apr-util/xml/expat/lib/.libs/libexpat.a -luuid -lpthread -ldl -lcrypt -lrt -lssl -lcrypto -lncurses /usr/lib/x86_64-linux-gnu/libjpeg.so -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1 -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-linux-gnu/4.6.1/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../x86_64-linux-gnu/crtn.o -O2 -Wl,-lodbc -pthread -Wl,-soname -Wl,libfreeswitch.so.1 -o .libs/libfreeswitch.so.1.0.0 quiet_libtool: link: (cd ".libs" && rm -f "libfreeswitch.so.1" && ln -s "libfreeswitch.so.1.0.0" "libfreeswitch.so.1") quiet_libtool: link: (cd ".libs" && rm -f "libfreeswitch.so" && ln -s "libfreeswitch.so.1.0.0" "libfreeswitch.so") quiet_libtool: link: ar cru .libs/libfreeswitch.a libs/libedit/src/.libs/libedit.a libfreeswitch_la-switch_apr.o libfreeswitch_la-switch_buffer.o libfreeswitch_la-switch_caller.o libfreeswitch_la-switch_channel.o libfreeswitch_la-switch_console.o libfreeswitch_la-switch_mprintf.o libfreeswitch_la-switch_core_media_bug.o libfreeswitch_la-switch_core_timer.o libfreeswitch_la-switch_core_asr.o libfreeswitch_la-switch_core_event_hook.o libfreeswitch_la-switch_core_speech.o libfreeswitch_la-switch_core_memory.o libfreeswitch_la-switch_core_codec.o libfreeswitch_la-switch_core_file.o libfreeswitch_la-switch_core_hash.o libfreeswitch_la-switch_core_sqldb.o libfreeswitch_la-switch_core_session.o libfreeswitch_la-switch_core_directory.o libfreeswitch_la-switch_core_state_machine.o libfreeswitch_la-switch_core_io.o libfreeswitch_la-switch_core_rwlock.o libfreeswitch_la-switch_core_port_allocator.o libfreeswitch_la-switch_core.o libfreeswitch_la-switch_scheduler.o libfreeswitch_la-switch_core_db.o libfreeswitch_la-switch_dso.o libfreeswitch_la-switch_loadable_module.o libfreeswitch_la-switch_utils.o libfreeswitch_la-switch_event.o libfreeswitch_la-switch_resample.o libfreeswitch_la-switch_regex.o libfreeswitch_la-switch_rtp.o libfreeswitch_la-switch_ivr_bridge.o libfreeswitch_la-switch_ivr_originate.o libfreeswitch_la-switch_ivr_async.o libfreeswitch_la-switch_ivr_play_say.o libfreeswitch_la-switch_ivr_say.o libfreeswitch_la-switch_ivr_menu.o libfreeswitch_la-switch_ivr.o libfreeswitch_la-switch_stun.o libfreeswitch_la-switch_nat.o libfreeswitch_la-switch_log.o libfreeswitch_la-switch_xml.o libfreeswitch_la-switch_xml_config.o libfreeswitch_la-switch_config.o libfreeswitch_la-switch_time.o libfreeswitch_la-switch_odbc.o libfreeswitch_la-switch_pgsql.o libfreeswitch_la-switch_limit.o libfreeswitch_la-g711.o libfreeswitch_la-switch_pcm.o libfreeswitch_la-switch_profile.o libfreeswitch_la-switch_json.o libfreeswitch_la-switch_curl.o libfreeswitch_la-tpl.o libfreeswitch_la-stfu.o libfreeswitch_la-libteletone_detect.o libfreeswitch_la-libteletone_generate.o libfreeswitch_la-miniwget.o libfreeswitch_la-minixml.o libfreeswitch_la-igd_desc_parse.o libfreeswitch_la-minisoap.o libfreeswitch_la-miniupnpc.o libfreeswitch_la-upnpreplyparse.o libfreeswitch_la-upnpcommands.o libfreeswitch_la-minissdpc.o libfreeswitch_la-upnperrors.o libfreeswitch_la-natpmp.o libfreeswitch_la-getgateway.o libfreeswitch_la-plc.o libfreeswitch_la-alloc.o libfreeswitch_la-bit_operations.o switch_cpp.o quiet_libtool: link: ranlib .libs/libfreeswitch.a quiet_libtool: link: ( cd ".libs" && rm -f "libfreeswitch.la" && ln -s "../ libfreeswitch.la" "libfreeswitch.la" ) quiet_libtool: link: gcc -I/home/ubuntu/freeswitch/libs/curl/include -I/usr/include/uuid -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/libs/libteletone/src -I/home/ubuntu/freeswitch/libs/stfu -fPIC -Werror -fvisibility=hidden -DSWITCH_API_VISIBILITY=1 -DHAVE_VISIBILITY=1 -g -ggdb -DHAVE_OPENSSL -Wall -std=c99 -pedantic -Wdeclaration-after-statement -pthread -D_REENTRANT -D_GNU_SOURCE -I/home/ubuntu/freeswitch/libs/apr/include -I/home/ubuntu/freeswitch/libs/apr-util/include -I/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -I/home/ubuntu/freeswitch/libs/libtpl-1.5/src -I/home/ubuntu/freeswitch/libs/stfu -I/home/ubuntu/freeswitch/libs/sqlite -I/home/ubuntu/freeswitch/libs/pcre -I/home/ubuntu/freeswitch/libs/speex/include -Ilibs/speex/include -I/home/ubuntu/freeswitch/libs/srtp/include -I/home/ubuntu/freeswitch/libs/srtp/crypto/include -Ilibs/srtp/crypto/include -I/home/ubuntu/freeswitch/libs/spandsp/src -I/home/ubuntu/freeswitch/libs/tiff-4.0.2/libtiff -DENABLE_SRTP -DSWITCH_HAVE_ODBC -I/usr/include -I/home/ubuntu/freeswitch/libs/libedit/src -DSWITCH_HAVE_LIBEDIT -Ilibs/libedit/src -DSWITCH_HAVE_LIBEDIT -I/usr/openssl101f/include -o .libs/freeswitch freeswitch-switch.o -Wl,-lodbc -lm -lz -L/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -L/usr/openssl101f/lib ./.libs/libfreeswitch.so libs/apr/.libs/libapr-1.a -luuid -lrt -ldl -lcrypt -lpthread libs/libedit/src/.libs/libedit.a -lssl -lcrypto -lncurses /usr/lib/x86_64-linux-gnu/libjpeg.so -pthread -Wl,-rpath -Wl,/usr/local/freeswitch/lib ./.libs/libfreeswitch.so: undefined reference to `zlibVersion' ./.libs/libfreeswitch.so: undefined reference to `inflate' ./.libs/libfreeswitch.so: undefined reference to `inflateInit2_' ./.libs/libfreeswitch.so: undefined reference to `inflateInit_' ./.libs/libfreeswitch.so: undefined reference to `inflateEnd' ./.libs/libfreeswitch.so: undefined reference to `inflateReset' collect2: ld returned 1 exit status make[1]: *** [freeswitch] Error 1 make: *** [all] Error 2 make "OUR_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-all ; done )"; echo $mods )" "OUR_CLEAN_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-clean ; done )"; echo $mods )" "OUR_INSTALL_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-install ; done)"; echo $mods )" "OUR_UNINSTALL_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-uninstall ; done)"; echo $mods )" "OUR_DISABLED_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-all ; done )"; echo $mods )" "OUR_DISABLED_CLEAN_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-clean ; done )"; echo $mods )" "OUR_DISABLED_INSTALL_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-install ; done)"; echo $mods )" "OUR_DISABLED_UNINSTALL_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-uninstall ; done)"; echo $mods )" `test -n "" || echo -s` install-recursive quiet_libtool: link: gcc -I/home/ubuntu/freeswitch/libs/curl/include -I/usr/include/uuid -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/libs/libteletone/src -I/home/ubuntu/freeswitch/libs/stfu -fPIC -Werror -fvisibility=hidden -DSWITCH_API_VISIBILITY=1 -DHAVE_VISIBILITY=1 -g -ggdb -DHAVE_OPENSSL -Wall -std=c99 -pedantic -Wdeclaration-after-statement -pthread -D_REENTRANT -D_GNU_SOURCE -I/home/ubuntu/freeswitch/libs/apr/include -I/home/ubuntu/freeswitch/libs/apr-util/include -I/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -I/home/ubuntu/freeswitch/libs/libtpl-1.5/src -I/home/ubuntu/freeswitch/libs/stfu -I/home/ubuntu/freeswitch/libs/sqlite -I/home/ubuntu/freeswitch/libs/pcre -I/home/ubuntu/freeswitch/libs/speex/include -Ilibs/speex/include -I/home/ubuntu/freeswitch/libs/srtp/include -I/home/ubuntu/freeswitch/libs/srtp/crypto/include -Ilibs/srtp/crypto/include -I/home/ubuntu/freeswitch/libs/spandsp/src -I/home/ubuntu/freeswitch/libs/tiff-4.0.2/libtiff -DENABLE_SRTP -DSWITCH_HAVE_ODBC -I/usr/include -I/home/ubuntu/freeswitch/libs/libedit/src -DSWITCH_HAVE_LIBEDIT -Ilibs/libedit/src -DSWITCH_HAVE_LIBEDIT -I/usr/openssl101f/include -o .libs/freeswitch freeswitch-switch.o -Wl,-lodbc -lm -lz -L/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -L/usr/openssl101f/lib ./.libs/libfreeswitch.so libs/apr/.libs/libapr-1.a -luuid -lrt -ldl -lcrypt -lpthread libs/libedit/src/.libs/libedit.a -lssl -lcrypto -lncurses /usr/lib/x86_64-linux-gnu/libjpeg.so -pthread -Wl,-rpath -Wl,/usr/local/freeswitch/lib ./.libs/libfreeswitch.so: undefined reference to `zlibVersion' ./.libs/libfreeswitch.so: undefined reference to `inflate' ./.libs/libfreeswitch.so: undefined reference to `inflateInit2_' ./.libs/libfreeswitch.so: undefined reference to `inflateInit_' ./.libs/libfreeswitch.so: undefined reference to `inflateEnd' ./.libs/libfreeswitch.so: undefined reference to `inflateReset' collect2: ld returned 1 exit status make[1]: *** [freeswitch] Error 1 make: *** [install] Error 2 test -d /usr/local/freeswitch/conf || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/conf for conffile in `cd /home/ubuntu/freeswitch/conf/vanilla && find . -name \*.xml && find . -name \*.conf && find . -name \*.tpl && find . -name \*.ttml && find . -name mime.types` ; do \ dir=`echo $conffile | sed -e 's|^\.||' | sed -e 's|/[^/]*$||'`; \ filename=`echo $conffile | sed -e 's|^\.||' | sed -e 's|^.*/||'`; \ test -d /usr/local/freeswitch/conf$dir || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/conf$dir ; \ test -f /usr/local/freeswitch/conf$dir/$filename || \ test -f /usr/local/freeswitch/conf$dir/$filename.noload || \ /usr/bin/install -c -m 644 /home/ubuntu/freeswitch/conf/vanilla/$dir/$filename /usr/local/freeswitch/conf$dir; \ done test -d /usr/local/freeswitch/htdocs || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/htdocs for htdocsfile in `cd /home/ubuntu/freeswitch/htdocs && find . -type f -name \* | sed -e 's|^\.||'` ; do \ dir=`echo $htdocsfile | sed -e 's|/[^/]*$||'`; \ filename=`echo $htdocsfile | sed -e 's|^.*/||'`; \ test -d /usr/local/freeswitch/htdocs$dir || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/htdocs$dir ; \ test -f /usr/local/freeswitch/htdocs$dir/$filename || /usr/bin/install -c -m 644 /home/ubuntu/freeswitch/htdocs/$dir/$filename /usr/local/freeswitch/htdocs$dir 2>/dev/null; \ done Additionally, it would probably be good for the freeswitch staff to update the wiki for installs on ubuntu, and give one authoritative method for installing on ubuntu. There are several paragraphs/scripts for installation on Ubuntu, and none of them seem to work for me.
Stable does not need the openssl update only master does. We do not provide info like that for ubuntu because we don't use it, only other ubuntu users do. One thing I like to suggest is to tag the subject with something that gets their attention like. ATTN Ubuntu USERS Call to Update WIKI On Tue, Feb 4, 2014 at 5:51 PM, Josh Nankin <jnankin@gmail.com> wrote:
I've been using the following script for some time to build freeswitch on my machines. I recently edited the script to install openssl v1.0.1f, as that is now required it seems by this version of free switch.
Here's my script:
#!/bin/bash
test "$BRANCH" != "" || BRANCH=v1.2.stable
apt-get update apt-get install -y git-core subversion build-essential autoconf automake libtool libncurses5 libncurses5-dev make libjpeg-dev gawk apt-get install -y libcurl4-openssl-dev libexpat1-dev libgnutls-dev libtiff4-dev libx11-dev unixodbc-dev libssl-dev python2.6-dev \ zlib1g-dev libzrtpcpp-dev libasound2-dev libogg-dev libvorbis-dev libperl-dev libgdbm-dev libdb-dev python-dev \ uuid-dev update-alternatives --set awk /usr/bin/gawk git clone -b $BRANCH git://git.freeswitch.org/freeswitch.git
############################################################### # INSTALL OPENSSL v1.0.1f ############################################################### wget http://www.linuxfromscratch.org/patches/blfs/svn/openssl-1.0.1f-fix_parallel... wget http://www.linuxfromscratch.org/patches/blfs/svn/openssl-1.0.1f-fix_pod_synt... wget http://www.openssl.org/source/openssl-1.0.1f.tar.gz tar -zxvf openssl-1.0.1f.tar.gz cd openssl-1.0.1f
patch -Np1 -i ../openssl-1.0.1f-fix_parallel_build-1.patch && patch -Np1 -i ../openssl-1.0.1f-fix_pod_syntax-1.patch && ./config --prefix=/usr/openssl101f -fPIC \ --openssldir=/etc/ssl \ --libdir=lib \ shared \ zlib-dynamic && make make install
############################################################## # INSTALL FREESWITCH ############################################################## cd .. cd freeswitch ./bootstrap.sh ./configure CFLAGS="-I/usr/openssl101f/include" LDFLAGS="-L/usr/openssl101f/lib"
cat >modules.conf <<'EOL' applications/mod_commands applications/mod_conference applications/mod_db applications/mod_dptools applications/mod_enum applications/mod_esf applications/mod_esl applications/mod_expr applications/mod_fifo applications/mod_fsv applications/mod_hash applications/mod_httapi applications/mod_spandsp codecs/mod_amr codecs/mod_bv codecs/mod_g723_1 codecs/mod_g729 codecs/mod_h26x codecs/mod_vp8 codecs/mod_speex dialplans/mod_dialplan_asterisk dialplans/mod_dialplan_xml endpoints/mod_loopback endpoints/mod_sofia event_handlers/mod_cdr_csv event_handlers/mod_cdr_sqlite event_handlers/mod_event_socket formats/mod_local_stream formats/mod_native_file formats/mod_sndfile formats/mod_tone_stream languages/mod_lua languages/mod_spidermonkey loggers/mod_console loggers/mod_logfile loggers/mod_syslog say/mod_say_en xml_int/mod_xml_cdr xml_int/mod_xml_rpc xml_int/mod_xml_scgi EOL make
cat >/etc/init.d/freeswitch <<'EOL' #!/bin/sh ### -*- mode:shell-script; indent-tabs-mode:nil; sh-basic-offset:2 -*- ### BEGIN INIT INFO # Provides: freeswitch # Required-Start: $network $remote_fs $local_fs # Required-Stop: $network $remote_fs $local_fs # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: FreeSWITCH Softswitch # Description: FreeSWITCH Softswitch ### END INIT INFO
# Author: Travis Cross <tc@traviscross.com>
PATH=/sbin:/usr/sbin:/bin:/usr/bin DESC=freeswitch NAME=freeswitch DAEMON=/usr/local/freeswitch/bin/freeswitch DAEMON_ARGS="-u freeswitch -g daemon -rp -nc -nonat" USER=freeswitch PIDFILE=/usr/local/freeswitch/run/freeswitch.pid SCRIPTNAME=/etc/init.d/$NAME WORKDIR=/usr/local/freeswitch/lib
[ -x $DAEMON ] || exit 0 [ -r /etc/default/$NAME ] && . /etc/default/$NAME . /lib/init/vars.sh . /lib/lsb/init-functions
do_start() { start-stop-daemon --start --quiet \ --pidfile $PIDFILE --exec $DAEMON --name $NAME --user $USER \ --test > /dev/null \ || return 1 ulimit -s 240 start-stop-daemon --start --quiet \ --pidfile $PIDFILE --exec $DAEMON --name $NAME --user $USER \ --chdir $WORKDIR -- $DAEMON_ARGS $DAEMON_OPTS \ || return 2 return 0 }
stop_fs() { start-stop-daemon --stop --quiet \ --pidfile $PIDFILE --name $NAME --user $USER \ --retry=TERM/30/KILL/5 }
stop_fs_children() { start-stop-daemon --stop --quiet \ --exec $DAEMON \ --oknodo --retry=0/30/KILL/5 }
do_stop() { stop_fs RETVAL="$?" [ "$RETVAL" -eq 2 ] && return 2 stop_fs_children [ "$?" -eq 2 ] && return 2 rm -f $PIDFILE return "$RETVAL" }
do_reload() { start-stop-daemon --stop --quiet \ --pidfile $PIDFILE --name $NAME --user $USER \ --signal HUP }
case "$1" in start) [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC " "$NAME" do_start case "$?" in 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac ;; stop) [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME" do_stop case "$?" in 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac ;; status) status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $? ;; reload|force-reload) log_daemon_msg "Reloading $DESC" "$NAME" do_reload log_end_msg $? ;; restart) log_daemon_msg "Restarting $DESC" "$NAME" do_stop case "$?" in 0|1) do_start case "$?" in 0) log_end_msg 0 ;; 1|*) log_end_msg 1 ;; esac ;; *) log_end_msg 1 ;; esac ;; *) echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2 exit 3 ;; esac
exit 0 EOL chmod a+x /etc/init.d/freeswitch
make install make samples adduser --disabled-password --quiet --system --gecos "FreeSWITCH Voice Platform" --ingroup daemon freeswitch chown -R freeswitch:daemon /usr/local/freeswitch/ chmod -R o-rwx /usr/local/freeswitch/
The build error I'm getting is the following:
*** Warning: Linking the shared library libfreeswitch.la against the *** static library libs/libedit/src/.libs/libedit.a is not portable! quiet_libtool: link: g++ -fPIC -DPIC -shared -nostdlib /usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/4.6.1/crtbeginS.o .libs/libfreeswitch_la-switch_apr.o .libs/libfreeswitch_la-switch_buffer.o .libs/libfreeswitch_la-switch_caller.o .libs/libfreeswitch_la-switch_channel.o .libs/libfreeswitch_la-switch_console.o .libs/libfreeswitch_la-switch_mprintf.o .libs/libfreeswitch_la-switch_core_media_bug.o .libs/libfreeswitch_la-switch_core_timer.o .libs/libfreeswitch_la-switch_core_asr.o .libs/libfreeswitch_la-switch_core_event_hook.o .libs/libfreeswitch_la-switch_core_speech.o .libs/libfreeswitch_la-switch_core_memory.o .libs/libfreeswitch_la-switch_core_codec.o .libs/libfreeswitch_la-switch_core_file.o .libs/libfreeswitch_la-switch_core_hash.o .libs/libfreeswitch_la-switch_core_sqldb.o .libs/libfreeswitch_la-switch_core_session.o .libs/libfreeswitch_la-switch_core_directory.o .libs/libfreeswitch_la-switch_core_state_machine.o .libs/libfreeswitch_la-switch_core_io.o .libs/libfreeswitch_la-switch_core_rwlock.o .libs/libfreeswitch_la-switch_core_port_allocator.o .libs/libfreeswitch_la-switch_core.o .libs/libfreeswitch_la-switch_scheduler.o .libs/libfreeswitch_la-switch_core_db.o .libs/libfreeswitch_la-switch_dso.o .libs/libfreeswitch_la-switch_loadable_module.o .libs/libfreeswitch_la-switch_utils.o .libs/libfreeswitch_la-switch_event.o .libs/libfreeswitch_la-switch_resample.o .libs/libfreeswitch_la-switch_regex.o .libs/libfreeswitch_la-switch_rtp.o .libs/libfreeswitch_la-switch_ivr_bridge.o .libs/libfreeswitch_la-switch_ivr_originate.o .libs/libfreeswitch_la-switch_ivr_async.o .libs/libfreeswitch_la-switch_ivr_play_say.o .libs/libfreeswitch_la-switch_ivr_say.o .libs/libfreeswitch_la-switch_ivr_menu.o .libs/libfreeswitch_la-switch_ivr.o .libs/libfreeswitch_la-switch_stun.o .libs/libfreeswitch_la-switch_nat.o .libs/libfreeswitch_la-switch_log.o .libs/libfreeswitch_la-switch_xml.o .libs/libfreeswitch_la-switch_xml_config.o .libs/libfreeswitch_la-switch_config.o .libs/libfreeswitch_la-switch_time.o .libs/libfreeswitch_la-switch_odbc.o .libs/libfreeswitch_la-switch_pgsql.o .libs/libfreeswitch_la-switch_limit.o .libs/libfreeswitch_la-g711.o .libs/libfreeswitch_la-switch_pcm.o .libs/libfreeswitch_la-switch_profile.o .libs/libfreeswitch_la-switch_json.o .libs/libfreeswitch_la-switch_curl.o .libs/libfreeswitch_la-tpl.o .libs/libfreeswitch_la-stfu.o .libs/libfreeswitch_la-libteletone_detect.o .libs/libfreeswitch_la-libteletone_generate.o .libs/libfreeswitch_la-miniwget.o .libs/libfreeswitch_la-minixml.o .libs/libfreeswitch_la-igd_desc_parse.o .libs/libfreeswitch_la-minisoap.o .libs/libfreeswitch_la-miniupnpc.o .libs/libfreeswitch_la-upnpreplyparse.o .libs/libfreeswitch_la-upnpcommands.o .libs/libfreeswitch_la-minissdpc.o .libs/libfreeswitch_la-upnperrors.o .libs/libfreeswitch_la-natpmp.o .libs/libfreeswitch_la-getgateway.o .libs/libfreeswitch_la-plc.o .libs/libfreeswitch_la-alloc.o .libs/libfreeswitch_la-bit_operations.o .libs/switch_cpp.o -lz -L/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -L/usr/openssl101f/lib libs/apr-util/.libs/libaprutil-1.a libs/apr/.libs/libapr-1.a libs/sqlite/.libs/libsqlite3.a libs/pcre/.libs/libpcre.a libs/speex/libspeex/.libs/libspeexdsp.a libs/srtp/.libs/libsrtp.a libs/libedit/src/.libs/libedit.a libs/curl/lib/.libs/libcurl.a libs/apr-util/xml/expat/lib/.libs/libexpat.a -luuid -lpthread -ldl -lcrypt -lrt -lssl -lcrypto -lncurses /usr/lib/x86_64-linux-gnu/libjpeg.so -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1 -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-linux-gnu/4.6.1/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../x86_64-linux-gnu/crtn.o -O2 -Wl,-lodbc -pthread -Wl,-soname -Wl,libfreeswitch.so.1 -o .libs/libfreeswitch.so.1.0.0 quiet_libtool: link: (cd ".libs" && rm -f "libfreeswitch.so.1" && ln -s "libfreeswitch.so.1.0.0" "libfreeswitch.so.1") quiet_libtool: link: (cd ".libs" && rm -f "libfreeswitch.so" && ln -s "libfreeswitch.so.1.0.0" "libfreeswitch.so") quiet_libtool: link: ar cru .libs/libfreeswitch.a libs/libedit/src/.libs/libedit.a libfreeswitch_la-switch_apr.o libfreeswitch_la-switch_buffer.o libfreeswitch_la-switch_caller.o libfreeswitch_la-switch_channel.o libfreeswitch_la-switch_console.o libfreeswitch_la-switch_mprintf.o libfreeswitch_la-switch_core_media_bug.o libfreeswitch_la-switch_core_timer.o libfreeswitch_la-switch_core_asr.o libfreeswitch_la-switch_core_event_hook.o libfreeswitch_la-switch_core_speech.o libfreeswitch_la-switch_core_memory.o libfreeswitch_la-switch_core_codec.o libfreeswitch_la-switch_core_file.o libfreeswitch_la-switch_core_hash.o libfreeswitch_la-switch_core_sqldb.o libfreeswitch_la-switch_core_session.o libfreeswitch_la-switch_core_directory.o libfreeswitch_la-switch_core_state_machine.o libfreeswitch_la-switch_core_io.o libfreeswitch_la-switch_core_rwlock.o libfreeswitch_la-switch_core_port_allocator.o libfreeswitch_la-switch_core.o libfreeswitch_la-switch_scheduler.o libfreeswitch_la-switch_core_db.o libfreeswitch_la-switch_dso.o libfreeswitch_la-switch_loadable_module.o libfreeswitch_la-switch_utils.o libfreeswitch_la-switch_event.o libfreeswitch_la-switch_resample.o libfreeswitch_la-switch_regex.o libfreeswitch_la-switch_rtp.o libfreeswitch_la-switch_ivr_bridge.o libfreeswitch_la-switch_ivr_originate.o libfreeswitch_la-switch_ivr_async.o libfreeswitch_la-switch_ivr_play_say.o libfreeswitch_la-switch_ivr_say.o libfreeswitch_la-switch_ivr_menu.o libfreeswitch_la-switch_ivr.o libfreeswitch_la-switch_stun.o libfreeswitch_la-switch_nat.o libfreeswitch_la-switch_log.o libfreeswitch_la-switch_xml.o libfreeswitch_la-switch_xml_config.o libfreeswitch_la-switch_config.o libfreeswitch_la-switch_time.o libfreeswitch_la-switch_odbc.o libfreeswitch_la-switch_pgsql.o libfreeswitch_la-switch_limit.o libfreeswitch_la-g711.o libfreeswitch_la-switch_pcm.o libfreeswitch_la-switch_profile.o libfreeswitch_la-switch_json.o libfreeswitch_la-switch_curl.o libfreeswitch_la-tpl.o libfreeswitch_la-stfu.o libfreeswitch_la-libteletone_detect.o libfreeswitch_la-libteletone_generate.o libfreeswitch_la-miniwget.o libfreeswitch_la-minixml.o libfreeswitch_la-igd_desc_parse.o libfreeswitch_la-minisoap.o libfreeswitch_la-miniupnpc.o libfreeswitch_la-upnpreplyparse.o libfreeswitch_la-upnpcommands.o libfreeswitch_la-minissdpc.o libfreeswitch_la-upnperrors.o libfreeswitch_la-natpmp.o libfreeswitch_la-getgateway.o libfreeswitch_la-plc.o libfreeswitch_la-alloc.o libfreeswitch_la-bit_operations.o switch_cpp.o quiet_libtool: link: ranlib .libs/libfreeswitch.a quiet_libtool: link: ( cd ".libs" && rm -f "libfreeswitch.la" && ln -s "../libfreeswitch.la" "libfreeswitch.la" ) quiet_libtool: link: gcc -I/home/ubuntu/freeswitch/libs/curl/include -I/usr/include/uuid -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/libs/libteletone/src -I/home/ubuntu/freeswitch/libs/stfu -fPIC -Werror -fvisibility=hidden -DSWITCH_API_VISIBILITY=1 -DHAVE_VISIBILITY=1 -g -ggdb -DHAVE_OPENSSL -Wall -std=c99 -pedantic -Wdeclaration-after-statement -pthread -D_REENTRANT -D_GNU_SOURCE -I/home/ubuntu/freeswitch/libs/apr/include -I/home/ubuntu/freeswitch/libs/apr-util/include -I/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -I/home/ubuntu/freeswitch/libs/libtpl-1.5/src -I/home/ubuntu/freeswitch/libs/stfu -I/home/ubuntu/freeswitch/libs/sqlite -I/home/ubuntu/freeswitch/libs/pcre -I/home/ubuntu/freeswitch/libs/speex/include -Ilibs/speex/include -I/home/ubuntu/freeswitch/libs/srtp/include -I/home/ubuntu/freeswitch/libs/srtp/crypto/include -Ilibs/srtp/crypto/include -I/home/ubuntu/freeswitch/libs/spandsp/src -I/home/ubuntu/freeswitch/libs/tiff-4.0.2/libtiff -DENABLE_SRTP -DSWITCH_HAVE_ODBC -I/usr/include -I/home/ubuntu/freeswitch/libs/libedit/src -DSWITCH_HAVE_LIBEDIT -Ilibs/libedit/src -DSWITCH_HAVE_LIBEDIT -I/usr/openssl101f/include -o .libs/freeswitch freeswitch-switch.o -Wl,-lodbc -lm -lz -L/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -L/usr/openssl101f/lib ./.libs/libfreeswitch.so libs/apr/.libs/libapr-1.a -luuid -lrt -ldl -lcrypt -lpthread libs/libedit/src/.libs/libedit.a -lssl -lcrypto -lncurses /usr/lib/x86_64-linux-gnu/libjpeg.so -pthread -Wl,-rpath -Wl,/usr/local/freeswitch/lib ./.libs/libfreeswitch.so: undefined reference to `zlibVersion' ./.libs/libfreeswitch.so: undefined reference to `inflate' ./.libs/libfreeswitch.so: undefined reference to `inflateInit2_' ./.libs/libfreeswitch.so: undefined reference to `inflateInit_' ./.libs/libfreeswitch.so: undefined reference to `inflateEnd' ./.libs/libfreeswitch.so: undefined reference to `inflateReset' collect2: ld returned 1 exit status make[1]: *** [freeswitch] Error 1 make: *** [all] Error 2 make "OUR_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-all ; done )"; echo $mods )" "OUR_CLEAN_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-clean ; done )"; echo $mods )" "OUR_INSTALL_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-install ; done)"; echo $mods )" "OUR_UNINSTALL_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-uninstall ; done)"; echo $mods )" "OUR_DISABLED_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-all ; done )"; echo $mods )" "OUR_DISABLED_CLEAN_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-clean ; done )"; echo $mods )" "OUR_DISABLED_INSTALL_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-install ; done)"; echo $mods )" "OUR_DISABLED_UNINSTALL_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-uninstall ; done)"; echo $mods )" `test -n "" || echo -s` install-recursive quiet_libtool: link: gcc -I/home/ubuntu/freeswitch/libs/curl/include -I/usr/include/uuid -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/libs/libteletone/src -I/home/ubuntu/freeswitch/libs/stfu -fPIC -Werror -fvisibility=hidden -DSWITCH_API_VISIBILITY=1 -DHAVE_VISIBILITY=1 -g -ggdb -DHAVE_OPENSSL -Wall -std=c99 -pedantic -Wdeclaration-after-statement -pthread -D_REENTRANT -D_GNU_SOURCE -I/home/ubuntu/freeswitch/libs/apr/include -I/home/ubuntu/freeswitch/libs/apr-util/include -I/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -I/home/ubuntu/freeswitch/libs/libtpl-1.5/src -I/home/ubuntu/freeswitch/libs/stfu -I/home/ubuntu/freeswitch/libs/sqlite -I/home/ubuntu/freeswitch/libs/pcre -I/home/ubuntu/freeswitch/libs/speex/include -Ilibs/speex/include -I/home/ubuntu/freeswitch/libs/srtp/include -I/home/ubuntu/freeswitch/libs/srtp/crypto/include -Ilibs/srtp/crypto/include -I/home/ubuntu/freeswitch/libs/spandsp/src -I/home/ubuntu/freeswitch/libs/tiff-4.0.2/libtiff -DENABLE_SRTP -DSWITCH_HAVE_ODBC -I/usr/include -I/home/ubuntu/freeswitch/libs/libedit/src -DSWITCH_HAVE_LIBEDIT -Ilibs/libedit/src -DSWITCH_HAVE_LIBEDIT -I/usr/openssl101f/include -o .libs/freeswitch freeswitch-switch.o -Wl,-lodbc -lm -lz -L/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -L/usr/openssl101f/lib ./.libs/libfreeswitch.so libs/apr/.libs/libapr-1.a -luuid -lrt -ldl -lcrypt -lpthread libs/libedit/src/.libs/libedit.a -lssl -lcrypto -lncurses /usr/lib/x86_64-linux-gnu/libjpeg.so -pthread -Wl,-rpath -Wl,/usr/local/freeswitch/lib ./.libs/libfreeswitch.so: undefined reference to `zlibVersion' ./.libs/libfreeswitch.so: undefined reference to `inflate' ./.libs/libfreeswitch.so: undefined reference to `inflateInit2_' ./.libs/libfreeswitch.so: undefined reference to `inflateInit_' ./.libs/libfreeswitch.so: undefined reference to `inflateEnd' ./.libs/libfreeswitch.so: undefined reference to `inflateReset' collect2: ld returned 1 exit status make[1]: *** [freeswitch] Error 1 make: *** [install] Error 2 test -d /usr/local/freeswitch/conf || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/conf for conffile in `cd /home/ubuntu/freeswitch/conf/vanilla && find . -name \*.xml && find . -name \*.conf && find . -name \*.tpl && find . -name \*.ttml && find . -name mime.types` ; do \ dir=`echo $conffile | sed -e 's|^\.||' | sed -e 's|/[^/]*$||'`; \ filename=`echo $conffile | sed -e 's|^\.||' | sed -e 's|^.*/||'`; \ test -d /usr/local/freeswitch/conf$dir || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/conf$dir ; \ test -f /usr/local/freeswitch/conf$dir/$filename || \ test -f /usr/local/freeswitch/conf$dir/$filename.noload || \ /usr/bin/install -c -m 644 /home/ubuntu/freeswitch/conf/vanilla/$dir/$filename /usr/local/freeswitch/conf$dir; \ done test -d /usr/local/freeswitch/htdocs || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/htdocs for htdocsfile in `cd /home/ubuntu/freeswitch/htdocs && find . -type f -name \* | sed -e 's|^\.||'` ; do \ dir=`echo $htdocsfile | sed -e 's|/[^/]*$||'`; \ filename=`echo $htdocsfile | sed -e 's|^.*/||'`; \ test -d /usr/local/freeswitch/htdocs$dir || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/htdocs$dir ; \ test -f /usr/local/freeswitch/htdocs$dir/$filename || /usr/bin/install -c -m 644 /home/ubuntu/freeswitch/htdocs/$dir/$filename /usr/local/freeswitch/htdocs$dir 2>/dev/null; \ done
Additionally, it would probably be good for the freeswitch staff to update the wiki for installs on ubuntu, and give one authoritative method for installing on ubuntu. There are several paragraphs/scripts for installation on Ubuntu, and none of them seem to work for me.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Anthony Minessale II ♬ @anthmfs ♬ @FreeSWITCH ♬ ☞ http://freeswitch.org/ ☞ http://cluecon.com/ ☞ http://twitter.com/FreeSWITCH ☞ irc.freenode.net #freeswitch ☞ *http://freeswitch.org/g+ <http://freeswitch.org/g+>* ClueCon Weekly Development Call ☎ sip:888@conference.freeswitch.org ☎ +19193869900
So, indeed when I took out the step for the new OpenSSL when building v1.2.stable on Ubuntu 11.10, the build went through fine. However, when I build v1.4.beta with the new OpenSSL, I'm still getting the following error: *** Warning: Linking the shared library libfreeswitch.la against the *** static library libs/libedit/src/.libs/libedit.a is not portable! quiet_libtool: link: g++ -fPIC -DPIC -shared -nostdlib /usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/4.6.1/crtbeginS.o .libs/libfreeswitch_la-switch_apr.o .libs/libfreeswitch_la-switch_buffer.o .libs/libfreeswitch_la-switch_caller.o .libs/libfreeswitch_la-switch_channel.o .libs/libfreeswitch_la-switch_console.o .libs/libfreeswitch_la-switch_mprintf.o .libs/libfreeswitch_la-switch_core_media_bug.o .libs/libfreeswitch_la-switch_core_timer.o .libs/libfreeswitch_la-switch_core_asr.o .libs/libfreeswitch_la-switch_core_event_hook.o .libs/libfreeswitch_la-switch_core_speech.o .libs/libfreeswitch_la-switch_core_memory.o .libs/libfreeswitch_la-switch_core_codec.o .libs/libfreeswitch_la-switch_core_file.o .libs/libfreeswitch_la-switch_core_hash.o .libs/libfreeswitch_la-switch_core_sqldb.o .libs/libfreeswitch_la-switch_core_session.o .libs/libfreeswitch_la-switch_core_directory.o .libs/libfreeswitch_la-switch_core_state_machine.o .libs/libfreeswitch_la-switch_core_io.o .libs/libfreeswitch_la-switch_core_rwlock.o .libs/libfreeswitch_la-switch_core_port_allocator.o .libs/libfreeswitch_la-switch_core.o .libs/libfreeswitch_la-switch_scheduler.o .libs/libfreeswitch_la-switch_core_db.o .libs/libfreeswitch_la-switch_dso.o .libs/libfreeswitch_la-switch_loadable_module.o .libs/libfreeswitch_la-switch_utils.o .libs/libfreeswitch_la-switch_event.o .libs/libfreeswitch_la-switch_resample.o .libs/libfreeswitch_la-switch_regex.o .libs/libfreeswitch_la-switch_rtp.o .libs/libfreeswitch_la-switch_ivr_bridge.o .libs/libfreeswitch_la-switch_ivr_originate.o .libs/libfreeswitch_la-switch_ivr_async.o .libs/libfreeswitch_la-switch_ivr_play_say.o .libs/libfreeswitch_la-switch_ivr_say.o .libs/libfreeswitch_la-switch_ivr_menu.o .libs/libfreeswitch_la-switch_ivr.o .libs/libfreeswitch_la-switch_stun.o .libs/libfreeswitch_la-switch_nat.o .libs/libfreeswitch_la-switch_log.o .libs/libfreeswitch_la-switch_xml.o .libs/libfreeswitch_la-switch_xml_config.o .libs/libfreeswitch_la-switch_config.o .libs/libfreeswitch_la-switch_time.o .libs/libfreeswitch_la-switch_odbc.o .libs/libfreeswitch_la-switch_pgsql.o .libs/libfreeswitch_la-switch_limit.o .libs/libfreeswitch_la-g711.o .libs/libfreeswitch_la-switch_pcm.o .libs/libfreeswitch_la-switch_profile.o .libs/libfreeswitch_la-switch_json.o .libs/libfreeswitch_la-switch_curl.o .libs/libfreeswitch_la-tpl.o .libs/libfreeswitch_la-stfu.o .libs/libfreeswitch_la-libteletone_detect.o .libs/libfreeswitch_la-libteletone_generate.o .libs/libfreeswitch_la-miniwget.o .libs/libfreeswitch_la-minixml.o .libs/libfreeswitch_la-igd_desc_parse.o .libs/libfreeswitch_la-minisoap.o .libs/libfreeswitch_la-miniupnpc.o .libs/libfreeswitch_la-upnpreplyparse.o .libs/libfreeswitch_la-upnpcommands.o .libs/libfreeswitch_la-minissdpc.o .libs/libfreeswitch_la-upnperrors.o .libs/libfreeswitch_la-natpmp.o .libs/libfreeswitch_la-getgateway.o .libs/libfreeswitch_la-plc.o .libs/libfreeswitch_la-alloc.o .libs/libfreeswitch_la-bit_operations.o .libs/switch_cpp.o -lz -L/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -L/usr/openssl101f/lib libs/apr-util/.libs/libaprutil-1.a libs/apr/.libs/libapr-1.a libs/sqlite/.libs/libsqlite3.a libs/pcre/.libs/libpcre.a libs/speex/libspeex/.libs/libspeexdsp.a libs/srtp/.libs/libsrtp.a libs/libedit/src/.libs/libedit.a libs/curl/lib/.libs/libcurl.a libs/apr-util/xml/expat/lib/.libs/libexpat.a -luuid -lpthread -ldl -lcrypt -lrt -lssl -lcrypto -lncurses /usr/lib/x86_64-linux-gnu/libjpeg.so -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1 -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-linux-gnu/4.6.1/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../x86_64-linux-gnu/crtn.o -O2 -Wl,-lodbc -pthread -Wl,-soname -Wl,libfreeswitch.so.1 -o .libs/libfreeswitch.so.1.0.0 quiet_libtool: link: (cd ".libs" && rm -f "libfreeswitch.so.1" && ln -s "libfreeswitch.so.1.0.0" "libfreeswitch.so.1") quiet_libtool: link: (cd ".libs" && rm -f "libfreeswitch.so" && ln -s "libfreeswitch.so.1.0.0" "libfreeswitch.so") quiet_libtool: link: ar cru .libs/libfreeswitch.a libs/libedit/src/.libs/libedit.a libfreeswitch_la-switch_apr.o libfreeswitch_la-switch_buffer.o libfreeswitch_la-switch_caller.o libfreeswitch_la-switch_channel.o libfreeswitch_la-switch_console.o libfreeswitch_la-switch_mprintf.o libfreeswitch_la-switch_core_media_bug.o libfreeswitch_la-switch_core_timer.o libfreeswitch_la-switch_core_asr.o libfreeswitch_la-switch_core_event_hook.o libfreeswitch_la-switch_core_speech.o libfreeswitch_la-switch_core_memory.o libfreeswitch_la-switch_core_codec.o libfreeswitch_la-switch_core_file.o libfreeswitch_la-switch_core_hash.o libfreeswitch_la-switch_core_sqldb.o libfreeswitch_la-switch_core_session.o libfreeswitch_la-switch_core_directory.o libfreeswitch_la-switch_core_state_machine.o libfreeswitch_la-switch_core_io.o libfreeswitch_la-switch_core_rwlock.o libfreeswitch_la-switch_core_port_allocator.o libfreeswitch_la-switch_core.o libfreeswitch_la-switch_scheduler.o libfreeswitch_la-switch_core_db.o libfreeswitch_la-switch_dso.o libfreeswitch_la-switch_loadable_module.o libfreeswitch_la-switch_utils.o libfreeswitch_la-switch_event.o libfreeswitch_la-switch_resample.o libfreeswitch_la-switch_regex.o libfreeswitch_la-switch_rtp.o libfreeswitch_la-switch_ivr_bridge.o libfreeswitch_la-switch_ivr_originate.o libfreeswitch_la-switch_ivr_async.o libfreeswitch_la-switch_ivr_play_say.o libfreeswitch_la-switch_ivr_say.o libfreeswitch_la-switch_ivr_menu.o libfreeswitch_la-switch_ivr.o libfreeswitch_la-switch_stun.o libfreeswitch_la-switch_nat.o libfreeswitch_la-switch_log.o libfreeswitch_la-switch_xml.o libfreeswitch_la-switch_xml_config.o libfreeswitch_la-switch_config.o libfreeswitch_la-switch_time.o libfreeswitch_la-switch_odbc.o libfreeswitch_la-switch_pgsql.o libfreeswitch_la-switch_limit.o libfreeswitch_la-g711.o libfreeswitch_la-switch_pcm.o libfreeswitch_la-switch_profile.o libfreeswitch_la-switch_json.o libfreeswitch_la-switch_curl.o libfreeswitch_la-tpl.o libfreeswitch_la-stfu.o libfreeswitch_la-libteletone_detect.o libfreeswitch_la-libteletone_generate.o libfreeswitch_la-miniwget.o libfreeswitch_la-minixml.o libfreeswitch_la-igd_desc_parse.o libfreeswitch_la-minisoap.o libfreeswitch_la-miniupnpc.o libfreeswitch_la-upnpreplyparse.o libfreeswitch_la-upnpcommands.o libfreeswitch_la-minissdpc.o libfreeswitch_la-upnperrors.o libfreeswitch_la-natpmp.o libfreeswitch_la-getgateway.o libfreeswitch_la-plc.o libfreeswitch_la-alloc.o libfreeswitch_la-bit_operations.o switch_cpp.o quiet_libtool: link: ranlib .libs/libfreeswitch.a quiet_libtool: link: ( cd ".libs" && rm -f "libfreeswitch.la" && ln -s "../ libfreeswitch.la" "libfreeswitch.la" ) quiet_libtool: link: gcc -I/home/ubuntu/freeswitch/libs/curl/include -I/usr/include/uuid -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/libs/libteletone/src -I/home/ubuntu/freeswitch/libs/stfu -fPIC -Werror -fvisibility=hidden -DSWITCH_API_VISIBILITY=1 -DHAVE_VISIBILITY=1 -g -ggdb -DHAVE_OPENSSL -Wall -std=c99 -pedantic -Wdeclaration-after-statement -pthread -D_REENTRANT -D_GNU_SOURCE -I/home/ubuntu/freeswitch/libs/apr/include -I/home/ubuntu/freeswitch/libs/apr-util/include -I/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -I/home/ubuntu/freeswitch/libs/libtpl-1.5/src -I/home/ubuntu/freeswitch/libs/stfu -I/home/ubuntu/freeswitch/libs/sqlite -I/home/ubuntu/freeswitch/libs/pcre -I/home/ubuntu/freeswitch/libs/speex/include -Ilibs/speex/include -I/home/ubuntu/freeswitch/libs/srtp/include -I/home/ubuntu/freeswitch/libs/srtp/crypto/include -Ilibs/srtp/crypto/include -I/home/ubuntu/freeswitch/libs/spandsp/src -I/home/ubuntu/freeswitch/libs/tiff-4.0.2/libtiff -DENABLE_SRTP -DSWITCH_HAVE_ODBC -I/usr/include -I/home/ubuntu/freeswitch/libs/libedit/src -DSWITCH_HAVE_LIBEDIT -Ilibs/libedit/src -DSWITCH_HAVE_LIBEDIT -I/usr/openssl101f/include -o .libs/freeswitch freeswitch-switch.o -Wl,-lodbc -lm -lz -L/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -L/usr/openssl101f/lib ./.libs/libfreeswitch.so libs/apr/.libs/libapr-1.a -luuid -lrt -ldl -lcrypt -lpthread libs/libedit/src/.libs/libedit.a -lssl -lcrypto -lncurses /usr/lib/x86_64-linux-gnu/libjpeg.so -pthread -Wl,-rpath -Wl,/usr/local/freeswitch/lib ./.libs/libfreeswitch.so: undefined reference to `zlibVersion' ./.libs/libfreeswitch.so: undefined reference to `inflate' ./.libs/libfreeswitch.so: undefined reference to `inflateInit2_' ./.libs/libfreeswitch.so: undefined reference to `inflateInit_' ./.libs/libfreeswitch.so: undefined reference to `inflateEnd' ./.libs/libfreeswitch.so: undefined reference to `inflateReset' collect2: ld returned 1 exit status make[1]: *** [freeswitch] Error 1 make: *** [all] Error 2 make "OUR_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-all ; done )"; echo $mods )" "OUR_CLEAN_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-clean ; done )"; echo $mods )" "OUR_INSTALL_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-install ; done)"; echo $mods )" "OUR_UNINSTALL_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-uninstall ; done)"; echo $mods )" "OUR_DISABLED_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-all ; done )"; echo $mods )" "OUR_DISABLED_CLEAN_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-clean ; done )"; echo $mods )" "OUR_DISABLED_INSTALL_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-install ; done)"; echo $mods )" "OUR_DISABLED_UNINSTALL_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-uninstall ; done)"; echo $mods )" `test -n "" || echo -s` install-recursive quiet_libtool: link: gcc -I/home/ubuntu/freeswitch/libs/curl/include -I/usr/include/uuid -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/libs/libteletone/src -I/home/ubuntu/freeswitch/libs/stfu -fPIC -Werror -fvisibility=hidden -DSWITCH_API_VISIBILITY=1 -DHAVE_VISIBILITY=1 -g -ggdb -DHAVE_OPENSSL -Wall -std=c99 -pedantic -Wdeclaration-after-statement -pthread -D_REENTRANT -D_GNU_SOURCE -I/home/ubuntu/freeswitch/libs/apr/include -I/home/ubuntu/freeswitch/libs/apr-util/include -I/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -I/home/ubuntu/freeswitch/libs/libtpl-1.5/src -I/home/ubuntu/freeswitch/libs/stfu -I/home/ubuntu/freeswitch/libs/sqlite -I/home/ubuntu/freeswitch/libs/pcre -I/home/ubuntu/freeswitch/libs/speex/include -Ilibs/speex/include -I/home/ubuntu/freeswitch/libs/srtp/include -I/home/ubuntu/freeswitch/libs/srtp/crypto/include -Ilibs/srtp/crypto/include -I/home/ubuntu/freeswitch/libs/spandsp/src -I/home/ubuntu/freeswitch/libs/tiff-4.0.2/libtiff -DENABLE_SRTP -DSWITCH_HAVE_ODBC -I/usr/include -I/home/ubuntu/freeswitch/libs/libedit/src -DSWITCH_HAVE_LIBEDIT -Ilibs/libedit/src -DSWITCH_HAVE_LIBEDIT -I/usr/openssl101f/include -o .libs/freeswitch freeswitch-switch.o -Wl,-lodbc -lm -lz -L/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -L/usr/openssl101f/lib ./.libs/libfreeswitch.so libs/apr/.libs/libapr-1.a -luuid -lrt -ldl -lcrypt -lpthread libs/libedit/src/.libs/libedit.a -lssl -lcrypto -lncurses /usr/lib/x86_64-linux-gnu/libjpeg.so -pthread -Wl,-rpath -Wl,/usr/local/freeswitch/lib ./.libs/libfreeswitch.so: undefined reference to `zlibVersion' ./.libs/libfreeswitch.so: undefined reference to `inflate' ./.libs/libfreeswitch.so: undefined reference to `inflateInit2_' ./.libs/libfreeswitch.so: undefined reference to `inflateInit_' ./.libs/libfreeswitch.so: undefined reference to `inflateEnd' ./.libs/libfreeswitch.so: undefined reference to `inflateReset' collect2: ld returned 1 exit status make[1]: *** [freeswitch] Error 1 make: *** [install] Error 2 test -d /usr/local/freeswitch/conf || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/conf for conffile in `cd /home/ubuntu/freeswitch/conf/vanilla && find . -name \*.xml && find . -name \*.conf && find . -name \*.tpl && find . -name \*.ttml && find . -name mime.types` ; do \ dir=`echo $conffile | sed -e 's|^\.||' | sed -e 's|/[^/]*$||'`; \ filename=`echo $conffile | sed -e 's|^\.||' | sed -e 's|^.*/||'`; \ test -d /usr/local/freeswitch/conf$dir || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/conf$dir ; \ test -f /usr/local/freeswitch/conf$dir/$filename || \ test -f /usr/local/freeswitch/conf$dir/$filename.noload || \ /usr/bin/install -c -m 644 /home/ubuntu/freeswitch/conf/vanilla/$dir/$filename /usr/local/freeswitch/conf$dir; \ done test -d /usr/local/freeswitch/htdocs || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/htdocs for htdocsfile in `cd /home/ubuntu/freeswitch/htdocs && find . -type f -name \* | sed -e 's|^\.||'` ; do \ dir=`echo $htdocsfile | sed -e 's|/[^/]*$||'`; \ filename=`echo $htdocsfile | sed -e 's|^.*/||'`; \ test -d /usr/local/freeswitch/htdocs$dir || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/htdocs$dir ; \ test -f /usr/local/freeswitch/htdocs$dir/$filename || /usr/bin/install -c -m 644 /home/ubuntu/freeswitch/htdocs/$dir/$filename /usr/local/freeswitch/htdocs$dir 2>/dev/null; \ Seems to be the same one I got with v1.2. Any ideas? On Tue, Feb 4, 2014 at 5:51 PM, Josh Nankin <jnankin@gmail.com> wrote:
I've been using the following script for some time to build freeswitch on my machines. I recently edited the script to install openssl v1.0.1f, as that is now required it seems by this version of free switch.
Here's my script:
#!/bin/bash
test "$BRANCH" != "" || BRANCH=v1.2.stable
apt-get update apt-get install -y git-core subversion build-essential autoconf automake libtool libncurses5 libncurses5-dev make libjpeg-dev gawk apt-get install -y libcurl4-openssl-dev libexpat1-dev libgnutls-dev libtiff4-dev libx11-dev unixodbc-dev libssl-dev python2.6-dev \ zlib1g-dev libzrtpcpp-dev libasound2-dev libogg-dev libvorbis-dev libperl-dev libgdbm-dev libdb-dev python-dev \ uuid-dev update-alternatives --set awk /usr/bin/gawk git clone -b $BRANCH git://git.freeswitch.org/freeswitch.git
############################################################### # INSTALL OPENSSL v1.0.1f ############################################################### wget http://www.linuxfromscratch.org/patches/blfs/svn/openssl-1.0.1f-fix_parallel... wget http://www.linuxfromscratch.org/patches/blfs/svn/openssl-1.0.1f-fix_pod_synt... wget http://www.openssl.org/source/openssl-1.0.1f.tar.gz tar -zxvf openssl-1.0.1f.tar.gz cd openssl-1.0.1f
patch -Np1 -i ../openssl-1.0.1f-fix_parallel_build-1.patch && patch -Np1 -i ../openssl-1.0.1f-fix_pod_syntax-1.patch && ./config --prefix=/usr/openssl101f -fPIC \ --openssldir=/etc/ssl \ --libdir=lib \ shared \ zlib-dynamic && make make install
############################################################## # INSTALL FREESWITCH ############################################################## cd .. cd freeswitch ./bootstrap.sh ./configure CFLAGS="-I/usr/openssl101f/include" LDFLAGS="-L/usr/openssl101f/lib"
cat >modules.conf <<'EOL' applications/mod_commands applications/mod_conference applications/mod_db applications/mod_dptools applications/mod_enum applications/mod_esf applications/mod_esl applications/mod_expr applications/mod_fifo applications/mod_fsv applications/mod_hash applications/mod_httapi applications/mod_spandsp codecs/mod_amr codecs/mod_bv codecs/mod_g723_1 codecs/mod_g729 codecs/mod_h26x codecs/mod_vp8 codecs/mod_speex dialplans/mod_dialplan_asterisk dialplans/mod_dialplan_xml endpoints/mod_loopback endpoints/mod_sofia event_handlers/mod_cdr_csv event_handlers/mod_cdr_sqlite event_handlers/mod_event_socket formats/mod_local_stream formats/mod_native_file formats/mod_sndfile formats/mod_tone_stream languages/mod_lua languages/mod_spidermonkey loggers/mod_console loggers/mod_logfile loggers/mod_syslog say/mod_say_en xml_int/mod_xml_cdr xml_int/mod_xml_rpc xml_int/mod_xml_scgi EOL make
cat >/etc/init.d/freeswitch <<'EOL' #!/bin/sh ### -*- mode:shell-script; indent-tabs-mode:nil; sh-basic-offset:2 -*- ### BEGIN INIT INFO # Provides: freeswitch # Required-Start: $network $remote_fs $local_fs # Required-Stop: $network $remote_fs $local_fs # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: FreeSWITCH Softswitch # Description: FreeSWITCH Softswitch ### END INIT INFO
# Author: Travis Cross <tc@traviscross.com>
PATH=/sbin:/usr/sbin:/bin:/usr/bin DESC=freeswitch NAME=freeswitch DAEMON=/usr/local/freeswitch/bin/freeswitch DAEMON_ARGS="-u freeswitch -g daemon -rp -nc -nonat" USER=freeswitch PIDFILE=/usr/local/freeswitch/run/freeswitch.pid SCRIPTNAME=/etc/init.d/$NAME WORKDIR=/usr/local/freeswitch/lib
[ -x $DAEMON ] || exit 0 [ -r /etc/default/$NAME ] && . /etc/default/$NAME . /lib/init/vars.sh . /lib/lsb/init-functions
do_start() { start-stop-daemon --start --quiet \ --pidfile $PIDFILE --exec $DAEMON --name $NAME --user $USER \ --test > /dev/null \ || return 1 ulimit -s 240 start-stop-daemon --start --quiet \ --pidfile $PIDFILE --exec $DAEMON --name $NAME --user $USER \ --chdir $WORKDIR -- $DAEMON_ARGS $DAEMON_OPTS \ || return 2 return 0 }
stop_fs() { start-stop-daemon --stop --quiet \ --pidfile $PIDFILE --name $NAME --user $USER \ --retry=TERM/30/KILL/5 }
stop_fs_children() { start-stop-daemon --stop --quiet \ --exec $DAEMON \ --oknodo --retry=0/30/KILL/5 }
do_stop() { stop_fs RETVAL="$?" [ "$RETVAL" -eq 2 ] && return 2 stop_fs_children [ "$?" -eq 2 ] && return 2 rm -f $PIDFILE return "$RETVAL" }
do_reload() { start-stop-daemon --stop --quiet \ --pidfile $PIDFILE --name $NAME --user $USER \ --signal HUP }
case "$1" in start) [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC " "$NAME" do_start case "$?" in 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac ;; stop) [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME" do_stop case "$?" in 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac ;; status) status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $? ;; reload|force-reload) log_daemon_msg "Reloading $DESC" "$NAME" do_reload log_end_msg $? ;; restart) log_daemon_msg "Restarting $DESC" "$NAME" do_stop case "$?" in 0|1) do_start case "$?" in 0) log_end_msg 0 ;; 1|*) log_end_msg 1 ;; esac ;; *) log_end_msg 1 ;; esac ;; *) echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2 exit 3 ;; esac
exit 0 EOL chmod a+x /etc/init.d/freeswitch
make install make samples adduser --disabled-password --quiet --system --gecos "FreeSWITCH Voice Platform" --ingroup daemon freeswitch chown -R freeswitch:daemon /usr/local/freeswitch/ chmod -R o-rwx /usr/local/freeswitch/
The build error I'm getting is the following:
*** Warning: Linking the shared library libfreeswitch.la against the *** static library libs/libedit/src/.libs/libedit.a is not portable! quiet_libtool: link: g++ -fPIC -DPIC -shared -nostdlib /usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/4.6.1/crtbeginS.o .libs/libfreeswitch_la-switch_apr.o .libs/libfreeswitch_la-switch_buffer.o .libs/libfreeswitch_la-switch_caller.o .libs/libfreeswitch_la-switch_channel.o .libs/libfreeswitch_la-switch_console.o .libs/libfreeswitch_la-switch_mprintf.o .libs/libfreeswitch_la-switch_core_media_bug.o .libs/libfreeswitch_la-switch_core_timer.o .libs/libfreeswitch_la-switch_core_asr.o .libs/libfreeswitch_la-switch_core_event_hook.o .libs/libfreeswitch_la-switch_core_speech.o .libs/libfreeswitch_la-switch_core_memory.o .libs/libfreeswitch_la-switch_core_codec.o .libs/libfreeswitch_la-switch_core_file.o .libs/libfreeswitch_la-switch_core_hash.o .libs/libfreeswitch_la-switch_core_sqldb.o .libs/libfreeswitch_la-switch_core_session.o .libs/libfreeswitch_la-switch_core_directory.o .libs/libfreeswitch_la-switch_core_state_machine.o .libs/libfreeswitch_la-switch_core_io.o .libs/libfreeswitch_la-switch_core_rwlock.o .libs/libfreeswitch_la-switch_core_port_allocator.o .libs/libfreeswitch_la-switch_core.o .libs/libfreeswitch_la-switch_scheduler.o .libs/libfreeswitch_la-switch_core_db.o .libs/libfreeswitch_la-switch_dso.o .libs/libfreeswitch_la-switch_loadable_module.o .libs/libfreeswitch_la-switch_utils.o .libs/libfreeswitch_la-switch_event.o .libs/libfreeswitch_la-switch_resample.o .libs/libfreeswitch_la-switch_regex.o .libs/libfreeswitch_la-switch_rtp.o .libs/libfreeswitch_la-switch_ivr_bridge.o .libs/libfreeswitch_la-switch_ivr_originate.o .libs/libfreeswitch_la-switch_ivr_async.o .libs/libfreeswitch_la-switch_ivr_play_say.o .libs/libfreeswitch_la-switch_ivr_say.o .libs/libfreeswitch_la-switch_ivr_menu.o .libs/libfreeswitch_la-switch_ivr.o .libs/libfreeswitch_la-switch_stun.o .libs/libfreeswitch_la-switch_nat.o .libs/libfreeswitch_la-switch_log.o .libs/libfreeswitch_la-switch_xml.o .libs/libfreeswitch_la-switch_xml_config.o .libs/libfreeswitch_la-switch_config.o .libs/libfreeswitch_la-switch_time.o .libs/libfreeswitch_la-switch_odbc.o .libs/libfreeswitch_la-switch_pgsql.o .libs/libfreeswitch_la-switch_limit.o .libs/libfreeswitch_la-g711.o .libs/libfreeswitch_la-switch_pcm.o .libs/libfreeswitch_la-switch_profile.o .libs/libfreeswitch_la-switch_json.o .libs/libfreeswitch_la-switch_curl.o .libs/libfreeswitch_la-tpl.o .libs/libfreeswitch_la-stfu.o .libs/libfreeswitch_la-libteletone_detect.o .libs/libfreeswitch_la-libteletone_generate.o .libs/libfreeswitch_la-miniwget.o .libs/libfreeswitch_la-minixml.o .libs/libfreeswitch_la-igd_desc_parse.o .libs/libfreeswitch_la-minisoap.o .libs/libfreeswitch_la-miniupnpc.o .libs/libfreeswitch_la-upnpreplyparse.o .libs/libfreeswitch_la-upnpcommands.o .libs/libfreeswitch_la-minissdpc.o .libs/libfreeswitch_la-upnperrors.o .libs/libfreeswitch_la-natpmp.o .libs/libfreeswitch_la-getgateway.o .libs/libfreeswitch_la-plc.o .libs/libfreeswitch_la-alloc.o .libs/libfreeswitch_la-bit_operations.o .libs/switch_cpp.o -lz -L/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -L/usr/openssl101f/lib libs/apr-util/.libs/libaprutil-1.a libs/apr/.libs/libapr-1.a libs/sqlite/.libs/libsqlite3.a libs/pcre/.libs/libpcre.a libs/speex/libspeex/.libs/libspeexdsp.a libs/srtp/.libs/libsrtp.a libs/libedit/src/.libs/libedit.a libs/curl/lib/.libs/libcurl.a libs/apr-util/xml/expat/lib/.libs/libexpat.a -luuid -lpthread -ldl -lcrypt -lrt -lssl -lcrypto -lncurses /usr/lib/x86_64-linux-gnu/libjpeg.so -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1 -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-linux-gnu/4.6.1/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../x86_64-linux-gnu/crtn.o -O2 -Wl,-lodbc -pthread -Wl,-soname -Wl,libfreeswitch.so.1 -o .libs/libfreeswitch.so.1.0.0 quiet_libtool: link: (cd ".libs" && rm -f "libfreeswitch.so.1" && ln -s "libfreeswitch.so.1.0.0" "libfreeswitch.so.1") quiet_libtool: link: (cd ".libs" && rm -f "libfreeswitch.so" && ln -s "libfreeswitch.so.1.0.0" "libfreeswitch.so") quiet_libtool: link: ar cru .libs/libfreeswitch.a libs/libedit/src/.libs/libedit.a libfreeswitch_la-switch_apr.o libfreeswitch_la-switch_buffer.o libfreeswitch_la-switch_caller.o libfreeswitch_la-switch_channel.o libfreeswitch_la-switch_console.o libfreeswitch_la-switch_mprintf.o libfreeswitch_la-switch_core_media_bug.o libfreeswitch_la-switch_core_timer.o libfreeswitch_la-switch_core_asr.o libfreeswitch_la-switch_core_event_hook.o libfreeswitch_la-switch_core_speech.o libfreeswitch_la-switch_core_memory.o libfreeswitch_la-switch_core_codec.o libfreeswitch_la-switch_core_file.o libfreeswitch_la-switch_core_hash.o libfreeswitch_la-switch_core_sqldb.o libfreeswitch_la-switch_core_session.o libfreeswitch_la-switch_core_directory.o libfreeswitch_la-switch_core_state_machine.o libfreeswitch_la-switch_core_io.o libfreeswitch_la-switch_core_rwlock.o libfreeswitch_la-switch_core_port_allocator.o libfreeswitch_la-switch_core.o libfreeswitch_la-switch_scheduler.o libfreeswitch_la-switch_core_db.o libfreeswitch_la-switch_dso.o libfreeswitch_la-switch_loadable_module.o libfreeswitch_la-switch_utils.o libfreeswitch_la-switch_event.o libfreeswitch_la-switch_resample.o libfreeswitch_la-switch_regex.o libfreeswitch_la-switch_rtp.o libfreeswitch_la-switch_ivr_bridge.o libfreeswitch_la-switch_ivr_originate.o libfreeswitch_la-switch_ivr_async.o libfreeswitch_la-switch_ivr_play_say.o libfreeswitch_la-switch_ivr_say.o libfreeswitch_la-switch_ivr_menu.o libfreeswitch_la-switch_ivr.o libfreeswitch_la-switch_stun.o libfreeswitch_la-switch_nat.o libfreeswitch_la-switch_log.o libfreeswitch_la-switch_xml.o libfreeswitch_la-switch_xml_config.o libfreeswitch_la-switch_config.o libfreeswitch_la-switch_time.o libfreeswitch_la-switch_odbc.o libfreeswitch_la-switch_pgsql.o libfreeswitch_la-switch_limit.o libfreeswitch_la-g711.o libfreeswitch_la-switch_pcm.o libfreeswitch_la-switch_profile.o libfreeswitch_la-switch_json.o libfreeswitch_la-switch_curl.o libfreeswitch_la-tpl.o libfreeswitch_la-stfu.o libfreeswitch_la-libteletone_detect.o libfreeswitch_la-libteletone_generate.o libfreeswitch_la-miniwget.o libfreeswitch_la-minixml.o libfreeswitch_la-igd_desc_parse.o libfreeswitch_la-minisoap.o libfreeswitch_la-miniupnpc.o libfreeswitch_la-upnpreplyparse.o libfreeswitch_la-upnpcommands.o libfreeswitch_la-minissdpc.o libfreeswitch_la-upnperrors.o libfreeswitch_la-natpmp.o libfreeswitch_la-getgateway.o libfreeswitch_la-plc.o libfreeswitch_la-alloc.o libfreeswitch_la-bit_operations.o switch_cpp.o quiet_libtool: link: ranlib .libs/libfreeswitch.a quiet_libtool: link: ( cd ".libs" && rm -f "libfreeswitch.la" && ln -s "../libfreeswitch.la" "libfreeswitch.la" ) quiet_libtool: link: gcc -I/home/ubuntu/freeswitch/libs/curl/include -I/usr/include/uuid -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/libs/libteletone/src -I/home/ubuntu/freeswitch/libs/stfu -fPIC -Werror -fvisibility=hidden -DSWITCH_API_VISIBILITY=1 -DHAVE_VISIBILITY=1 -g -ggdb -DHAVE_OPENSSL -Wall -std=c99 -pedantic -Wdeclaration-after-statement -pthread -D_REENTRANT -D_GNU_SOURCE -I/home/ubuntu/freeswitch/libs/apr/include -I/home/ubuntu/freeswitch/libs/apr-util/include -I/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -I/home/ubuntu/freeswitch/libs/libtpl-1.5/src -I/home/ubuntu/freeswitch/libs/stfu -I/home/ubuntu/freeswitch/libs/sqlite -I/home/ubuntu/freeswitch/libs/pcre -I/home/ubuntu/freeswitch/libs/speex/include -Ilibs/speex/include -I/home/ubuntu/freeswitch/libs/srtp/include -I/home/ubuntu/freeswitch/libs/srtp/crypto/include -Ilibs/srtp/crypto/include -I/home/ubuntu/freeswitch/libs/spandsp/src -I/home/ubuntu/freeswitch/libs/tiff-4.0.2/libtiff -DENABLE_SRTP -DSWITCH_HAVE_ODBC -I/usr/include -I/home/ubuntu/freeswitch/libs/libedit/src -DSWITCH_HAVE_LIBEDIT -Ilibs/libedit/src -DSWITCH_HAVE_LIBEDIT -I/usr/openssl101f/include -o .libs/freeswitch freeswitch-switch.o -Wl,-lodbc -lm -lz -L/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -L/usr/openssl101f/lib ./.libs/libfreeswitch.so libs/apr/.libs/libapr-1.a -luuid -lrt -ldl -lcrypt -lpthread libs/libedit/src/.libs/libedit.a -lssl -lcrypto -lncurses /usr/lib/x86_64-linux-gnu/libjpeg.so -pthread -Wl,-rpath -Wl,/usr/local/freeswitch/lib ./.libs/libfreeswitch.so: undefined reference to `zlibVersion' ./.libs/libfreeswitch.so: undefined reference to `inflate' ./.libs/libfreeswitch.so: undefined reference to `inflateInit2_' ./.libs/libfreeswitch.so: undefined reference to `inflateInit_' ./.libs/libfreeswitch.so: undefined reference to `inflateEnd' ./.libs/libfreeswitch.so: undefined reference to `inflateReset' collect2: ld returned 1 exit status make[1]: *** [freeswitch] Error 1 make: *** [all] Error 2 make "OUR_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-all ; done )"; echo $mods )" "OUR_CLEAN_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-clean ; done )"; echo $mods )" "OUR_INSTALL_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-install ; done)"; echo $mods )" "OUR_UNINSTALL_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-uninstall ; done)"; echo $mods )" "OUR_DISABLED_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-all ; done )"; echo $mods )" "OUR_DISABLED_CLEAN_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-clean ; done )"; echo $mods )" "OUR_DISABLED_INSTALL_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-install ; done)"; echo $mods )" "OUR_DISABLED_UNINSTALL_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-uninstall ; done)"; echo $mods )" `test -n "" || echo -s` install-recursive quiet_libtool: link: gcc -I/home/ubuntu/freeswitch/libs/curl/include -I/usr/include/uuid -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/libs/libteletone/src -I/home/ubuntu/freeswitch/libs/stfu -fPIC -Werror -fvisibility=hidden -DSWITCH_API_VISIBILITY=1 -DHAVE_VISIBILITY=1 -g -ggdb -DHAVE_OPENSSL -Wall -std=c99 -pedantic -Wdeclaration-after-statement -pthread -D_REENTRANT -D_GNU_SOURCE -I/home/ubuntu/freeswitch/libs/apr/include -I/home/ubuntu/freeswitch/libs/apr-util/include -I/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -I/home/ubuntu/freeswitch/libs/libtpl-1.5/src -I/home/ubuntu/freeswitch/libs/stfu -I/home/ubuntu/freeswitch/libs/sqlite -I/home/ubuntu/freeswitch/libs/pcre -I/home/ubuntu/freeswitch/libs/speex/include -Ilibs/speex/include -I/home/ubuntu/freeswitch/libs/srtp/include -I/home/ubuntu/freeswitch/libs/srtp/crypto/include -Ilibs/srtp/crypto/include -I/home/ubuntu/freeswitch/libs/spandsp/src -I/home/ubuntu/freeswitch/libs/tiff-4.0.2/libtiff -DENABLE_SRTP -DSWITCH_HAVE_ODBC -I/usr/include -I/home/ubuntu/freeswitch/libs/libedit/src -DSWITCH_HAVE_LIBEDIT -Ilibs/libedit/src -DSWITCH_HAVE_LIBEDIT -I/usr/openssl101f/include -o .libs/freeswitch freeswitch-switch.o -Wl,-lodbc -lm -lz -L/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -L/usr/openssl101f/lib ./.libs/libfreeswitch.so libs/apr/.libs/libapr-1.a -luuid -lrt -ldl -lcrypt -lpthread libs/libedit/src/.libs/libedit.a -lssl -lcrypto -lncurses /usr/lib/x86_64-linux-gnu/libjpeg.so -pthread -Wl,-rpath -Wl,/usr/local/freeswitch/lib ./.libs/libfreeswitch.so: undefined reference to `zlibVersion' ./.libs/libfreeswitch.so: undefined reference to `inflate' ./.libs/libfreeswitch.so: undefined reference to `inflateInit2_' ./.libs/libfreeswitch.so: undefined reference to `inflateInit_' ./.libs/libfreeswitch.so: undefined reference to `inflateEnd' ./.libs/libfreeswitch.so: undefined reference to `inflateReset' collect2: ld returned 1 exit status make[1]: *** [freeswitch] Error 1 make: *** [install] Error 2 test -d /usr/local/freeswitch/conf || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/conf for conffile in `cd /home/ubuntu/freeswitch/conf/vanilla && find . -name \*.xml && find . -name \*.conf && find . -name \*.tpl && find . -name \*.ttml && find . -name mime.types` ; do \ dir=`echo $conffile | sed -e 's|^\.||' | sed -e 's|/[^/]*$||'`; \ filename=`echo $conffile | sed -e 's|^\.||' | sed -e 's|^.*/||'`; \ test -d /usr/local/freeswitch/conf$dir || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/conf$dir ; \ test -f /usr/local/freeswitch/conf$dir/$filename || \ test -f /usr/local/freeswitch/conf$dir/$filename.noload || \ /usr/bin/install -c -m 644 /home/ubuntu/freeswitch/conf/vanilla/$dir/$filename /usr/local/freeswitch/conf$dir; \ done test -d /usr/local/freeswitch/htdocs || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/htdocs for htdocsfile in `cd /home/ubuntu/freeswitch/htdocs && find . -type f -name \* | sed -e 's|^\.||'` ; do \ dir=`echo $htdocsfile | sed -e 's|/[^/]*$||'`; \ filename=`echo $htdocsfile | sed -e 's|^.*/||'`; \ test -d /usr/local/freeswitch/htdocs$dir || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/htdocs$dir ; \ test -f /usr/local/freeswitch/htdocs$dir/$filename || /usr/bin/install -c -m 644 /home/ubuntu/freeswitch/htdocs/$dir/$filename /usr/local/freeswitch/htdocs$dir 2>/dev/null; \ done
Additionally, it would probably be good for the freeswitch staff to update the wiki for installs on ubuntu, and give one authoritative method for installing on ubuntu. There are several paragraphs/scripts for installation on Ubuntu, and none of them seem to work for me.
That¹s a missing zlib On 2/5/14 1:14 PM, "Josh Nankin" <jnankin@gmail.com> wrote:
So, indeed when I took out the step for the new OpenSSL when building v1.2.stable on Ubuntu 11.10, the build went through fine. However, when I build v1.4.beta with the new OpenSSL, I'm still getting the following error:
*** Warning: Linking the shared library libfreeswitch.la <http://libfreeswitch.la> against the *** static library libs/libedit/src/.libs/libedit.a is not portable! quiet_libtool: link: g++ -fPIC -DPIC -shared -nostdlib /usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/4.6.1/crtbeginS.o .libs/libfreeswitch_la-switch_apr.o .libs/libfreeswitch_la-switch_buffer.o .libs/libfreeswitch_la-switch_caller.o .libs/libfreeswitch_la-switch_channel.o .libs/libfreeswitch_la-switch_console.o .libs/libfreeswitch_la-switch_mprintf.o .libs/libfreeswitch_la-switch_core_media_bug.o .libs/libfreeswitch_la-switch_core_timer.o .libs/libfreeswitch_la-switch_core_asr.o .libs/libfreeswitch_la-switch_core_event_hook.o .libs/libfreeswitch_la-switch_core_speech.o .libs/libfreeswitch_la-switch_core_memory.o .libs/libfreeswitch_la-switch_core_codec.o .libs/libfreeswitch_la-switch_core_file.o .libs/libfreeswitch_la-switch_core_hash.o .libs/libfreeswitch_la-switch_core_sqldb.o .libs/libfreeswitch_la-switch_core_session.o .libs/libfreeswitch_la-switch_core_directory.o .libs/libfreeswitch_la-switch_core_state_machine.o .libs/libfreeswitch_la-switch_core_io.o .libs/libfreeswitch_la-switch_core_rwlock.o .libs/libfreeswitch_la-switch_core_port_allocator.o .libs/libfreeswitch_la-switch_core.o .libs/libfreeswitch_la-switch_scheduler.o .libs/libfreeswitch_la-switch_core_db.o .libs/libfreeswitch_la-switch_dso.o .libs/libfreeswitch_la-switch_loadable_module.o .libs/libfreeswitch_la-switch_utils.o .libs/libfreeswitch_la-switch_event.o .libs/libfreeswitch_la-switch_resample.o .libs/libfreeswitch_la-switch_regex.o .libs/libfreeswitch_la-switch_rtp.o .libs/libfreeswitch_la-switch_ivr_bridge.o .libs/libfreeswitch_la-switch_ivr_originate.o .libs/libfreeswitch_la-switch_ivr_async.o .libs/libfreeswitch_la-switch_ivr_play_say.o .libs/libfreeswitch_la-switch_ivr_say.o .libs/libfreeswitch_la-switch_ivr_menu.o .libs/libfreeswitch_la-switch_ivr.o .libs/libfreeswitch_la-switch_stun.o .libs/libfreeswitch_la-switch_nat.o .libs/libfreeswitch_la-switch_log.o .libs/libfreeswitch_la-switch_xml.o .libs/libfreeswitch_la-switch_xml_config.o .libs/libfreeswitch_la-switch_config.o .libs/libfreeswitch_la-switch_time.o .libs/libfreeswitch_la-switch_odbc.o .libs/libfreeswitch_la-switch_pgsql.o .libs/libfreeswitch_la-switch_limit.o .libs/libfreeswitch_la-g711.o .libs/libfreeswitch_la-switch_pcm.o .libs/libfreeswitch_la-switch_profile.o .libs/libfreeswitch_la-switch_json.o .libs/libfreeswitch_la-switch_curl.o .libs/libfreeswitch_la-tpl.o .libs/libfreeswitch_la-stfu.o .libs/libfreeswitch_la-libteletone_detect.o .libs/libfreeswitch_la-libteletone_generate.o .libs/libfreeswitch_la-miniwget.o .libs/libfreeswitch_la-minixml.o .libs/libfreeswitch_la-igd_desc_parse.o .libs/libfreeswitch_la-minisoap.o .libs/libfreeswitch_la-miniupnpc.o .libs/libfreeswitch_la-upnpreplyparse.o .libs/libfreeswitch_la-upnpcommands.o .libs/libfreeswitch_la-minissdpc.o .libs/libfreeswitch_la-upnperrors.o .libs/libfreeswitch_la-natpmp.o .libs/libfreeswitch_la-getgateway.o .libs/libfreeswitch_la-plc.o .libs/libfreeswitch_la-alloc.o .libs/libfreeswitch_la-bit_operations.o .libs/switch_cpp.o -lz -L/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -L/usr/openssl101f/lib libs/apr-util/.libs/libaprutil-1.a libs/apr/.libs/libapr-1.a libs/sqlite/.libs/libsqlite3.a libs/pcre/.libs/libpcre.a libs/speex/libspeex/.libs/libspeexdsp.a libs/srtp/.libs/libsrtp.a libs/libedit/src/.libs/libedit.a libs/curl/lib/.libs/libcurl.a libs/apr-util/xml/expat/lib/.libs/libexpat.a -luuid -lpthread -ldl -lcrypt -lrt -lssl -lcrypto -lncurses /usr/lib/x86_64-linux-gnu/libjpeg.so -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1 -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-linux-gnu/4.6.1/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../x86_64-linux-gnu/crtn.o -O2 -Wl,-lodbc -pthread -Wl,-soname -Wl,libfreeswitch.so.1 -o .libs/libfreeswitch.so.1.0.0 quiet_libtool: link: (cd ".libs" && rm -f "libfreeswitch.so.1" && ln -s "libfreeswitch.so.1.0.0" "libfreeswitch.so.1") quiet_libtool: link: (cd ".libs" && rm -f "libfreeswitch.so" && ln -s "libfreeswitch.so.1.0.0" "libfreeswitch.so") quiet_libtool: link: ar cru .libs/libfreeswitch.a libs/libedit/src/.libs/libedit.a libfreeswitch_la-switch_apr.o libfreeswitch_la-switch_buffer.o libfreeswitch_la-switch_caller.o libfreeswitch_la-switch_channel.o libfreeswitch_la-switch_console.o libfreeswitch_la-switch_mprintf.o libfreeswitch_la-switch_core_media_bug.o libfreeswitch_la-switch_core_timer.o libfreeswitch_la-switch_core_asr.o libfreeswitch_la-switch_core_event_hook.o libfreeswitch_la-switch_core_speech.o libfreeswitch_la-switch_core_memory.o libfreeswitch_la-switch_core_codec.o libfreeswitch_la-switch_core_file.o libfreeswitch_la-switch_core_hash.o libfreeswitch_la-switch_core_sqldb.o libfreeswitch_la-switch_core_session.o libfreeswitch_la-switch_core_directory.o libfreeswitch_la-switch_core_state_machine.o libfreeswitch_la-switch_core_io.o libfreeswitch_la-switch_core_rwlock.o libfreeswitch_la-switch_core_port_allocator.o libfreeswitch_la-switch_core.o libfreeswitch_la-switch_scheduler.o libfreeswitch_la-switch_core_db.o libfreeswitch_la-switch_dso.o libfreeswitch_la-switch_loadable_module.o libfreeswitch_la-switch_utils.o libfreeswitch_la-switch_event.o libfreeswitch_la-switch_resample.o libfreeswitch_la-switch_regex.o libfreeswitch_la-switch_rtp.o libfreeswitch_la-switch_ivr_bridge.o libfreeswitch_la-switch_ivr_originate.o libfreeswitch_la-switch_ivr_async.o libfreeswitch_la-switch_ivr_play_say.o libfreeswitch_la-switch_ivr_say.o libfreeswitch_la-switch_ivr_menu.o libfreeswitch_la-switch_ivr.o libfreeswitch_la-switch_stun.o libfreeswitch_la-switch_nat.o libfreeswitch_la-switch_log.o libfreeswitch_la-switch_xml.o libfreeswitch_la-switch_xml_config.o libfreeswitch_la-switch_config.o libfreeswitch_la-switch_time.o libfreeswitch_la-switch_odbc.o libfreeswitch_la-switch_pgsql.o libfreeswitch_la-switch_limit.o libfreeswitch_la-g711.o libfreeswitch_la-switch_pcm.o libfreeswitch_la-switch_profile.o libfreeswitch_la-switch_json.o libfreeswitch_la-switch_curl.o libfreeswitch_la-tpl.o libfreeswitch_la-stfu.o libfreeswitch_la-libteletone_detect.o libfreeswitch_la-libteletone_generate.o libfreeswitch_la-miniwget.o libfreeswitch_la-minixml.o libfreeswitch_la-igd_desc_parse.o libfreeswitch_la-minisoap.o libfreeswitch_la-miniupnpc.o libfreeswitch_la-upnpreplyparse.o libfreeswitch_la-upnpcommands.o libfreeswitch_la-minissdpc.o libfreeswitch_la-upnperrors.o libfreeswitch_la-natpmp.o libfreeswitch_la-getgateway.o libfreeswitch_la-plc.o libfreeswitch_la-alloc.o libfreeswitch_la-bit_operations.o switch_cpp.o quiet_libtool: link: ranlib .libs/libfreeswitch.a quiet_libtool: link: ( cd ".libs" && rm -f "libfreeswitch.la <http://libfreeswitch.la> " && ln -s "../libfreeswitch.la <http://libfreeswitch.la> " "libfreeswitch.la <http://libfreeswitch.la> " ) quiet_libtool: link: gcc -I/home/ubuntu/freeswitch/libs/curl/include -I/usr/include/uuid -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/libs/libteletone/src -I/home/ubuntu/freeswitch/libs/stfu -fPIC -Werror -fvisibility=hidden -DSWITCH_API_VISIBILITY=1 -DHAVE_VISIBILITY=1 -g -ggdb -DHAVE_OPENSSL -Wall -std=c99 -pedantic -Wdeclaration-after-statement -pthread -D_REENTRANT -D_GNU_SOURCE -I/home/ubuntu/freeswitch/libs/apr/include -I/home/ubuntu/freeswitch/libs/apr-util/include -I/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -I/home/ubuntu/freeswitch/libs/libtpl-1.5/src -I/home/ubuntu/freeswitch/libs/stfu -I/home/ubuntu/freeswitch/libs/sqlite -I/home/ubuntu/freeswitch/libs/pcre -I/home/ubuntu/freeswitch/libs/speex/include -Ilibs/speex/include -I/home/ubuntu/freeswitch/libs/srtp/include -I/home/ubuntu/freeswitch/libs/srtp/crypto/include -Ilibs/srtp/crypto/include -I/home/ubuntu/freeswitch/libs/spandsp/src -I/home/ubuntu/freeswitch/libs/tiff-4.0.2/libtiff -DENABLE_SRTP -DSWITCH_HAVE_ODBC -I/usr/include -I/home/ubuntu/freeswitch/libs/libedit/src -DSWITCH_HAVE_LIBEDIT -Ilibs/libedit/src -DSWITCH_HAVE_LIBEDIT -I/usr/openssl101f/include -o .libs/freeswitch freeswitch-switch.o -Wl,-lodbc -lm -lz -L/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -L/usr/openssl101f/lib ./.libs/libfreeswitch.so libs/apr/.libs/libapr-1.a -luuid -lrt -ldl -lcrypt -lpthread libs/libedit/src/.libs/libedit.a -lssl -lcrypto -lncurses /usr/lib/x86_64-linux-gnu/libjpeg.so -pthread -Wl,-rpath -Wl,/usr/local/freeswitch/lib ./.libs/libfreeswitch.so: undefined reference to `zlibVersion' ./.libs/libfreeswitch.so: undefined reference to `inflate' ./.libs/libfreeswitch.so: undefined reference to `inflateInit2_' ./.libs/libfreeswitch.so: undefined reference to `inflateInit_' ./.libs/libfreeswitch.so: undefined reference to `inflateEnd' ./.libs/libfreeswitch.so: undefined reference to `inflateReset' collect2: ld returned 1 exit status make[1]: *** [freeswitch] Error 1 make: *** [all] Error 2 make "OUR_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-all ; done )"; echo $mods )" "OUR_CLEAN_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-clean ; done )"; echo $mods )" "OUR_INSTALL_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-install ; done)"; echo $mods )" "OUR_UNINSTALL_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-uninstall ; done)"; echo $mods )" "OUR_DISABLED_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-all ; done )"; echo $mods )" "OUR_DISABLED_CLEAN_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-clean ; done )"; echo $mods )" "OUR_DISABLED_INSTALL_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-install ; done)"; echo $mods )" "OUR_DISABLED_UNINSTALL_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-uninstall ; done)"; echo $mods )" `test -n "" || echo -s` install-recursive quiet_libtool: link: gcc -I/home/ubuntu/freeswitch/libs/curl/include -I/usr/include/uuid -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/libs/libteletone/src -I/home/ubuntu/freeswitch/libs/stfu -fPIC -Werror -fvisibility=hidden -DSWITCH_API_VISIBILITY=1 -DHAVE_VISIBILITY=1 -g -ggdb -DHAVE_OPENSSL -Wall -std=c99 -pedantic -Wdeclaration-after-statement -pthread -D_REENTRANT -D_GNU_SOURCE -I/home/ubuntu/freeswitch/libs/apr/include -I/home/ubuntu/freeswitch/libs/apr-util/include -I/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -I/home/ubuntu/freeswitch/libs/libtpl-1.5/src -I/home/ubuntu/freeswitch/libs/stfu -I/home/ubuntu/freeswitch/libs/sqlite -I/home/ubuntu/freeswitch/libs/pcre -I/home/ubuntu/freeswitch/libs/speex/include -Ilibs/speex/include -I/home/ubuntu/freeswitch/libs/srtp/include -I/home/ubuntu/freeswitch/libs/srtp/crypto/include -Ilibs/srtp/crypto/include -I/home/ubuntu/freeswitch/libs/spandsp/src -I/home/ubuntu/freeswitch/libs/tiff-4.0.2/libtiff -DENABLE_SRTP -DSWITCH_HAVE_ODBC -I/usr/include -I/home/ubuntu/freeswitch/libs/libedit/src -DSWITCH_HAVE_LIBEDIT -Ilibs/libedit/src -DSWITCH_HAVE_LIBEDIT -I/usr/openssl101f/include -o .libs/freeswitch freeswitch-switch.o -Wl,-lodbc -lm -lz -L/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -L/usr/openssl101f/lib ./.libs/libfreeswitch.so libs/apr/.libs/libapr-1.a -luuid -lrt -ldl -lcrypt -lpthread libs/libedit/src/.libs/libedit.a -lssl -lcrypto -lncurses /usr/lib/x86_64-linux-gnu/libjpeg.so -pthread -Wl,-rpath -Wl,/usr/local/freeswitch/lib ./.libs/libfreeswitch.so: undefined reference to `zlibVersion' ./.libs/libfreeswitch.so: undefined reference to `inflate' ./.libs/libfreeswitch.so: undefined reference to `inflateInit2_' ./.libs/libfreeswitch.so: undefined reference to `inflateInit_' ./.libs/libfreeswitch.so: undefined reference to `inflateEnd' ./.libs/libfreeswitch.so: undefined reference to `inflateReset' collect2: ld returned 1 exit status make[1]: *** [freeswitch] Error 1 make: *** [install] Error 2 test -d /usr/local/freeswitch/conf || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/conf for conffile in `cd /home/ubuntu/freeswitch/conf/vanilla && find . -name \*.xml && find . -name \*.conf && find . -name \*.tpl && find . -name \*.ttml && find . -name mime.types` ; do \ dir=`echo $conffile | sed -e 's|^\.||' | sed -e 's|/[^/]*$||'`; \ filename=`echo $conffile | sed -e 's|^\.||' | sed -e 's|^.*/||'`; \ test -d /usr/local/freeswitch/conf$dir || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/conf$dir ; \ test -f /usr/local/freeswitch/conf$dir/$filename || \ test -f /usr/local/freeswitch/conf$dir/$filename.noload || \ /usr/bin/install -c -m 644 /home/ubuntu/freeswitch/conf/vanilla/$dir/$filename /usr/local/freeswitch/conf$dir; \ done test -d /usr/local/freeswitch/htdocs || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/htdocs for htdocsfile in `cd /home/ubuntu/freeswitch/htdocs && find . -type f -name \* | sed -e 's|^\.||'` ; do \ dir=`echo $htdocsfile | sed -e 's|/[^/]*$||'`; \ filename=`echo $htdocsfile | sed -e 's|^.*/||'`; \ test -d /usr/local/freeswitch/htdocs$dir || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/htdocs$dir ; \ test -f /usr/local/freeswitch/htdocs$dir/$filename || /usr/bin/install -c -m 644 /home/ubuntu/freeswitch/htdocs/$dir/$filename /usr/local/freeswitch/htdocs$dir 2>/dev/null; \
Seems to be the same one I got with v1.2. Any ideas?
On Tue, Feb 4, 2014 at 5:51 PM, Josh Nankin <jnankin@gmail.com> wrote:
I've been using the following script for some time to build freeswitch on my machines. I recently edited the script to install openssl v1.0.1f, as that is now required it seems by this version of free switch.
Here's my script:
#!/bin/bash
test "$BRANCH" != "" || BRANCH=v1.2.stable
apt-get update apt-get install -y git-core subversion build-essential autoconf automake libtool libncurses5 libncurses5-dev make libjpeg-dev gawk apt-get install -y libcurl4-openssl-dev libexpat1-dev libgnutls-dev libtiff4-dev libx11-dev unixodbc-dev libssl-dev python2.6-dev \ zlib1g-dev libzrtpcpp-dev libasound2-dev libogg-dev libvorbis-dev libperl-dev libgdbm-dev libdb-dev python-dev \ uuid-dev update-alternatives --set awk /usr/bin/gawk git clone -b $BRANCH git://git.freeswitch.org/freeswitch.git <http://git.freeswitch.org/freeswitch.git>
############################################################### # INSTALL OPENSSL v1.0.1f ############################################################### wget http://www.linuxfromscratch.org/patches/blfs/svn/openssl-1.0.1f-fix_parallel... build-1.patch wget http://www.linuxfromscratch.org/patches/blfs/svn/openssl-1.0.1f-fix_pod_synt... x-1.patch wget http://www.openssl.org/source/openssl-1.0.1f.tar.gz tar -zxvf openssl-1.0.1f.tar.gz cd openssl-1.0.1f
patch -Np1 -i ../openssl-1.0.1f-fix_parallel_build-1.patch && patch -Np1 -i ../openssl-1.0.1f-fix_pod_syntax-1.patch && ./config --prefix=/usr/openssl101f -fPIC \ --openssldir=/etc/ssl \ --libdir=lib \ shared \ zlib-dynamic && make make install
############################################################## # INSTALL FREESWITCH ############################################################## cd .. cd freeswitch ./bootstrap.sh ./configure CFLAGS="-I/usr/openssl101f/include" LDFLAGS="-L/usr/openssl101f/lib"
cat >modules.conf <<'EOL' applications/mod_commands applications/mod_conference applications/mod_db applications/mod_dptools applications/mod_enum applications/mod_esf applications/mod_esl applications/mod_expr applications/mod_fifo applications/mod_fsv applications/mod_hash applications/mod_httapi applications/mod_spandsp codecs/mod_amr codecs/mod_bv codecs/mod_g723_1 codecs/mod_g729 codecs/mod_h26x codecs/mod_vp8 codecs/mod_speex dialplans/mod_dialplan_asterisk dialplans/mod_dialplan_xml endpoints/mod_loopback endpoints/mod_sofia event_handlers/mod_cdr_csv event_handlers/mod_cdr_sqlite event_handlers/mod_event_socket formats/mod_local_stream formats/mod_native_file formats/mod_sndfile formats/mod_tone_stream languages/mod_lua languages/mod_spidermonkey loggers/mod_console loggers/mod_logfile loggers/mod_syslog say/mod_say_en xml_int/mod_xml_cdr xml_int/mod_xml_rpc xml_int/mod_xml_scgi EOL make
cat >/etc/init.d/freeswitch <<'EOL' #!/bin/sh ### -*- mode:shell-script; indent-tabs-mode:nil; sh-basic-offset:2 -*- ### BEGIN INIT INFO # Provides: freeswitch # Required-Start: $network $remote_fs $local_fs # Required-Stop: $network $remote_fs $local_fs # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: FreeSWITCH Softswitch # Description: FreeSWITCH Softswitch ### END INIT INFO
# Author: Travis Cross <tc@traviscross.com>
PATH=/sbin:/usr/sbin:/bin:/usr/bin DESC=freeswitch NAME=freeswitch DAEMON=/usr/local/freeswitch/bin/freeswitch DAEMON_ARGS="-u freeswitch -g daemon -rp -nc -nonat" USER=freeswitch PIDFILE=/usr/local/freeswitch/run/freeswitch.pid SCRIPTNAME=/etc/init.d/$NAME WORKDIR=/usr/local/freeswitch/lib
[ -x $DAEMON ] || exit 0 [ -r /etc/default/$NAME ] && . /etc/default/$NAME . /lib/init/vars.sh . /lib/lsb/init-functions
do_start() { start-stop-daemon --start --quiet \ --pidfile $PIDFILE --exec $DAEMON --name $NAME --user $USER \ --test > /dev/null \ || return 1 ulimit -s 240 start-stop-daemon --start --quiet \ --pidfile $PIDFILE --exec $DAEMON --name $NAME --user $USER \ --chdir $WORKDIR -- $DAEMON_ARGS $DAEMON_OPTS \ || return 2 return 0 }
stop_fs() { start-stop-daemon --stop --quiet \ --pidfile $PIDFILE --name $NAME --user $USER \ --retry=TERM/30/KILL/5 }
stop_fs_children() { start-stop-daemon --stop --quiet \ --exec $DAEMON \ --oknodo --retry=0/30/KILL/5 }
do_stop() { stop_fs RETVAL="$?" [ "$RETVAL" -eq 2 ] && return 2 stop_fs_children [ "$?" -eq 2 ] && return 2 rm -f $PIDFILE return "$RETVAL" }
do_reload() { start-stop-daemon --stop --quiet \ --pidfile $PIDFILE --name $NAME --user $USER \ --signal HUP }
case "$1" in start) [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC " "$NAME" do_start case "$?" in 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac ;; stop) [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME" do_stop case "$?" in 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac ;; status) status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $? ;; reload|force-reload) log_daemon_msg "Reloading $DESC" "$NAME" do_reload log_end_msg $? ;; restart) log_daemon_msg "Restarting $DESC" "$NAME" do_stop case "$?" in 0|1) do_start case "$?" in 0) log_end_msg 0 ;; 1|*) log_end_msg 1 ;; esac ;; *) log_end_msg 1 ;; esac ;; *) echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2 exit 3 ;; esac
exit 0 EOL chmod a+x /etc/init.d/freeswitch
make install make samples adduser --disabled-password --quiet --system --gecos "FreeSWITCH Voice Platform" --ingroup daemon freeswitch chown -R freeswitch:daemon /usr/local/freeswitch/ chmod -R o-rwx /usr/local/freeswitch/
The build error I'm getting is the following:
*** Warning: Linking the shared library libfreeswitch.la <http://libfreeswitch.la> against the *** static library libs/libedit/src/.libs/libedit.a is not portable! quiet_libtool: link: g++ -fPIC -DPIC -shared -nostdlib /usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/4.6.1/crtbeginS.o .libs/libfreeswitch_la-switch_apr.o .libs/libfreeswitch_la-switch_buffer.o .libs/libfreeswitch_la-switch_caller.o .libs/libfreeswitch_la-switch_channel.o .libs/libfreeswitch_la-switch_console.o .libs/libfreeswitch_la-switch_mprintf.o .libs/libfreeswitch_la-switch_core_media_bug.o .libs/libfreeswitch_la-switch_core_timer.o .libs/libfreeswitch_la-switch_core_asr.o .libs/libfreeswitch_la-switch_core_event_hook.o .libs/libfreeswitch_la-switch_core_speech.o .libs/libfreeswitch_la-switch_core_memory.o .libs/libfreeswitch_la-switch_core_codec.o .libs/libfreeswitch_la-switch_core_file.o .libs/libfreeswitch_la-switch_core_hash.o .libs/libfreeswitch_la-switch_core_sqldb.o .libs/libfreeswitch_la-switch_core_session.o .libs/libfreeswitch_la-switch_core_directory.o .libs/libfreeswitch_la-switch_core_state_machine.o .libs/libfreeswitch_la-switch_core_io.o .libs/libfreeswitch_la-switch_core_rwlock.o .libs/libfreeswitch_la-switch_core_port_allocator.o .libs/libfreeswitch_la-switch_core.o .libs/libfreeswitch_la-switch_scheduler.o .libs/libfreeswitch_la-switch_core_db.o .libs/libfreeswitch_la-switch_dso.o .libs/libfreeswitch_la-switch_loadable_module.o .libs/libfreeswitch_la-switch_utils.o .libs/libfreeswitch_la-switch_event.o .libs/libfreeswitch_la-switch_resample.o .libs/libfreeswitch_la-switch_regex.o .libs/libfreeswitch_la-switch_rtp.o .libs/libfreeswitch_la-switch_ivr_bridge.o .libs/libfreeswitch_la-switch_ivr_originate.o .libs/libfreeswitch_la-switch_ivr_async.o .libs/libfreeswitch_la-switch_ivr_play_say.o .libs/libfreeswitch_la-switch_ivr_say.o .libs/libfreeswitch_la-switch_ivr_menu.o .libs/libfreeswitch_la-switch_ivr.o .libs/libfreeswitch_la-switch_stun.o .libs/libfreeswitch_la-switch_nat.o .libs/libfreeswitch_la-switch_log.o .libs/libfreeswitch_la-switch_xml.o .libs/libfreeswitch_la-switch_xml_config.o .libs/libfreeswitch_la-switch_config.o .libs/libfreeswitch_la-switch_time.o .libs/libfreeswitch_la-switch_odbc.o .libs/libfreeswitch_la-switch_pgsql.o .libs/libfreeswitch_la-switch_limit.o .libs/libfreeswitch_la-g711.o .libs/libfreeswitch_la-switch_pcm.o .libs/libfreeswitch_la-switch_profile.o .libs/libfreeswitch_la-switch_json.o .libs/libfreeswitch_la-switch_curl.o .libs/libfreeswitch_la-tpl.o .libs/libfreeswitch_la-stfu.o .libs/libfreeswitch_la-libteletone_detect.o .libs/libfreeswitch_la-libteletone_generate.o .libs/libfreeswitch_la-miniwget.o .libs/libfreeswitch_la-minixml.o .libs/libfreeswitch_la-igd_desc_parse.o .libs/libfreeswitch_la-minisoap.o .libs/libfreeswitch_la-miniupnpc.o .libs/libfreeswitch_la-upnpreplyparse.o .libs/libfreeswitch_la-upnpcommands.o .libs/libfreeswitch_la-minissdpc.o .libs/libfreeswitch_la-upnperrors.o .libs/libfreeswitch_la-natpmp.o .libs/libfreeswitch_la-getgateway.o .libs/libfreeswitch_la-plc.o .libs/libfreeswitch_la-alloc.o .libs/libfreeswitch_la-bit_operations.o .libs/switch_cpp.o -lz -L/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -L/usr/openssl101f/lib libs/apr-util/.libs/libaprutil-1.a libs/apr/.libs/libapr-1.a libs/sqlite/.libs/libsqlite3.a libs/pcre/.libs/libpcre.a libs/speex/libspeex/.libs/libspeexdsp.a libs/srtp/.libs/libsrtp.a libs/libedit/src/.libs/libedit.a libs/curl/lib/.libs/libcurl.a libs/apr-util/xml/expat/lib/.libs/libexpat.a -luuid -lpthread -ldl -lcrypt -lrt -lssl -lcrypto -lncurses /usr/lib/x86_64-linux-gnu/libjpeg.so -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1 -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-linux-gnu/4.6.1/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../x86_64-linux-gnu/crtn.o -O2 -Wl,-lodbc -pthread -Wl,-soname -Wl,libfreeswitch.so.1 -o .libs/libfreeswitch.so.1.0.0 quiet_libtool: link: (cd ".libs" && rm -f "libfreeswitch.so.1" && ln -s "libfreeswitch.so.1.0.0" "libfreeswitch.so.1") quiet_libtool: link: (cd ".libs" && rm -f "libfreeswitch.so" && ln -s "libfreeswitch.so.1.0.0" "libfreeswitch.so") quiet_libtool: link: ar cru .libs/libfreeswitch.a libs/libedit/src/.libs/libedit.a libfreeswitch_la-switch_apr.o libfreeswitch_la-switch_buffer.o libfreeswitch_la-switch_caller.o libfreeswitch_la-switch_channel.o libfreeswitch_la-switch_console.o libfreeswitch_la-switch_mprintf.o libfreeswitch_la-switch_core_media_bug.o libfreeswitch_la-switch_core_timer.o libfreeswitch_la-switch_core_asr.o libfreeswitch_la-switch_core_event_hook.o libfreeswitch_la-switch_core_speech.o libfreeswitch_la-switch_core_memory.o libfreeswitch_la-switch_core_codec.o libfreeswitch_la-switch_core_file.o libfreeswitch_la-switch_core_hash.o libfreeswitch_la-switch_core_sqldb.o libfreeswitch_la-switch_core_session.o libfreeswitch_la-switch_core_directory.o libfreeswitch_la-switch_core_state_machine.o libfreeswitch_la-switch_core_io.o libfreeswitch_la-switch_core_rwlock.o libfreeswitch_la-switch_core_port_allocator.o libfreeswitch_la-switch_core.o libfreeswitch_la-switch_scheduler.o libfreeswitch_la-switch_core_db.o libfreeswitch_la-switch_dso.o libfreeswitch_la-switch_loadable_module.o libfreeswitch_la-switch_utils.o libfreeswitch_la-switch_event.o libfreeswitch_la-switch_resample.o libfreeswitch_la-switch_regex.o libfreeswitch_la-switch_rtp.o libfreeswitch_la-switch_ivr_bridge.o libfreeswitch_la-switch_ivr_originate.o libfreeswitch_la-switch_ivr_async.o libfreeswitch_la-switch_ivr_play_say.o libfreeswitch_la-switch_ivr_say.o libfreeswitch_la-switch_ivr_menu.o libfreeswitch_la-switch_ivr.o libfreeswitch_la-switch_stun.o libfreeswitch_la-switch_nat.o libfreeswitch_la-switch_log.o libfreeswitch_la-switch_xml.o libfreeswitch_la-switch_xml_config.o libfreeswitch_la-switch_config.o libfreeswitch_la-switch_time.o libfreeswitch_la-switch_odbc.o libfreeswitch_la-switch_pgsql.o libfreeswitch_la-switch_limit.o libfreeswitch_la-g711.o libfreeswitch_la-switch_pcm.o libfreeswitch_la-switch_profile.o libfreeswitch_la-switch_json.o libfreeswitch_la-switch_curl.o libfreeswitch_la-tpl.o libfreeswitch_la-stfu.o libfreeswitch_la-libteletone_detect.o libfreeswitch_la-libteletone_generate.o libfreeswitch_la-miniwget.o libfreeswitch_la-minixml.o libfreeswitch_la-igd_desc_parse.o libfreeswitch_la-minisoap.o libfreeswitch_la-miniupnpc.o libfreeswitch_la-upnpreplyparse.o libfreeswitch_la-upnpcommands.o libfreeswitch_la-minissdpc.o libfreeswitch_la-upnperrors.o libfreeswitch_la-natpmp.o libfreeswitch_la-getgateway.o libfreeswitch_la-plc.o libfreeswitch_la-alloc.o libfreeswitch_la-bit_operations.o switch_cpp.o quiet_libtool: link: ranlib .libs/libfreeswitch.a quiet_libtool: link: ( cd ".libs" && rm -f "libfreeswitch.la <http://libfreeswitch.la> " && ln -s "../libfreeswitch.la <http://libfreeswitch.la> " "libfreeswitch.la <http://libfreeswitch.la> " ) quiet_libtool: link: gcc -I/home/ubuntu/freeswitch/libs/curl/include -I/usr/include/uuid -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/libs/libteletone/src -I/home/ubuntu/freeswitch/libs/stfu -fPIC -Werror -fvisibility=hidden -DSWITCH_API_VISIBILITY=1 -DHAVE_VISIBILITY=1 -g -ggdb -DHAVE_OPENSSL -Wall -std=c99 -pedantic -Wdeclaration-after-statement -pthread -D_REENTRANT -D_GNU_SOURCE -I/home/ubuntu/freeswitch/libs/apr/include -I/home/ubuntu/freeswitch/libs/apr-util/include -I/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -I/home/ubuntu/freeswitch/libs/libtpl-1.5/src -I/home/ubuntu/freeswitch/libs/stfu -I/home/ubuntu/freeswitch/libs/sqlite -I/home/ubuntu/freeswitch/libs/pcre -I/home/ubuntu/freeswitch/libs/speex/include -Ilibs/speex/include -I/home/ubuntu/freeswitch/libs/srtp/include -I/home/ubuntu/freeswitch/libs/srtp/crypto/include -Ilibs/srtp/crypto/include -I/home/ubuntu/freeswitch/libs/spandsp/src -I/home/ubuntu/freeswitch/libs/tiff-4.0.2/libtiff -DENABLE_SRTP -DSWITCH_HAVE_ODBC -I/usr/include -I/home/ubuntu/freeswitch/libs/libedit/src -DSWITCH_HAVE_LIBEDIT -Ilibs/libedit/src -DSWITCH_HAVE_LIBEDIT -I/usr/openssl101f/include -o .libs/freeswitch freeswitch-switch.o -Wl,-lodbc -lm -lz -L/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -L/usr/openssl101f/lib ./.libs/libfreeswitch.so libs/apr/.libs/libapr-1.a -luuid -lrt -ldl -lcrypt -lpthread libs/libedit/src/.libs/libedit.a -lssl -lcrypto -lncurses /usr/lib/x86_64-linux-gnu/libjpeg.so -pthread -Wl,-rpath -Wl,/usr/local/freeswitch/lib ./.libs/libfreeswitch.so: undefined reference to `zlibVersion' ./.libs/libfreeswitch.so: undefined reference to `inflate' ./.libs/libfreeswitch.so: undefined reference to `inflateInit2_' ./.libs/libfreeswitch.so: undefined reference to `inflateInit_' ./.libs/libfreeswitch.so: undefined reference to `inflateEnd' ./.libs/libfreeswitch.so: undefined reference to `inflateReset' collect2: ld returned 1 exit status make[1]: *** [freeswitch] Error 1 make: *** [all] Error 2 make "OUR_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-all ; done )"; echo $mods )" "OUR_CLEAN_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-clean ; done )"; echo $mods )" "OUR_INSTALL_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-install ; done)"; echo $mods )" "OUR_UNINSTALL_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-uninstall ; done)"; echo $mods )" "OUR_DISABLED_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-all ; done )"; echo $mods )" "OUR_DISABLED_CLEAN_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-clean ; done )"; echo $mods )" "OUR_DISABLED_INSTALL_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-install ; done)"; echo $mods )" "OUR_DISABLED_UNINSTALL_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-uninstall ; done)"; echo $mods )" `test -n "" || echo -s` install-recursive quiet_libtool: link: gcc -I/home/ubuntu/freeswitch/libs/curl/include -I/usr/include/uuid -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/libs/libteletone/src -I/home/ubuntu/freeswitch/libs/stfu -fPIC -Werror -fvisibility=hidden -DSWITCH_API_VISIBILITY=1 -DHAVE_VISIBILITY=1 -g -ggdb -DHAVE_OPENSSL -Wall -std=c99 -pedantic -Wdeclaration-after-statement -pthread -D_REENTRANT -D_GNU_SOURCE -I/home/ubuntu/freeswitch/libs/apr/include -I/home/ubuntu/freeswitch/libs/apr-util/include -I/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -I/home/ubuntu/freeswitch/libs/libtpl-1.5/src -I/home/ubuntu/freeswitch/libs/stfu -I/home/ubuntu/freeswitch/libs/sqlite -I/home/ubuntu/freeswitch/libs/pcre -I/home/ubuntu/freeswitch/libs/speex/include -Ilibs/speex/include -I/home/ubuntu/freeswitch/libs/srtp/include -I/home/ubuntu/freeswitch/libs/srtp/crypto/include -Ilibs/srtp/crypto/include -I/home/ubuntu/freeswitch/libs/spandsp/src -I/home/ubuntu/freeswitch/libs/tiff-4.0.2/libtiff -DENABLE_SRTP -DSWITCH_HAVE_ODBC -I/usr/include -I/home/ubuntu/freeswitch/libs/libedit/src -DSWITCH_HAVE_LIBEDIT -Ilibs/libedit/src -DSWITCH_HAVE_LIBEDIT -I/usr/openssl101f/include -o .libs/freeswitch freeswitch-switch.o -Wl,-lodbc -lm -lz -L/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -L/usr/openssl101f/lib ./.libs/libfreeswitch.so libs/apr/.libs/libapr-1.a -luuid -lrt -ldl -lcrypt -lpthread libs/libedit/src/.libs/libedit.a -lssl -lcrypto -lncurses /usr/lib/x86_64-linux-gnu/libjpeg.so -pthread -Wl,-rpath -Wl,/usr/local/freeswitch/lib ./.libs/libfreeswitch.so: undefined reference to `zlibVersion' ./.libs/libfreeswitch.so: undefined reference to `inflate' ./.libs/libfreeswitch.so: undefined reference to `inflateInit2_' ./.libs/libfreeswitch.so: undefined reference to `inflateInit_' ./.libs/libfreeswitch.so: undefined reference to `inflateEnd' ./.libs/libfreeswitch.so: undefined reference to `inflateReset' collect2: ld returned 1 exit status make[1]: *** [freeswitch] Error 1 make: *** [install] Error 2 test -d /usr/local/freeswitch/conf || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/conf for conffile in `cd /home/ubuntu/freeswitch/conf/vanilla && find . -name \*.xml && find . -name \*.conf && find . -name \*.tpl && find . -name \*.ttml && find . -name mime.types` ; do \ dir=`echo $conffile | sed -e 's|^\.||' | sed -e 's|/[^/]*$||'`; \ filename=`echo $conffile | sed -e 's|^\.||' | sed -e 's|^.*/||'`; \ test -d /usr/local/freeswitch/conf$dir || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/conf$dir ; \ test -f /usr/local/freeswitch/conf$dir/$filename || \ test -f /usr/local/freeswitch/conf$dir/$filename.noload || \ /usr/bin/install -c -m 644 /home/ubuntu/freeswitch/conf/vanilla/$dir/$filename /usr/local/freeswitch/conf$dir; \ done test -d /usr/local/freeswitch/htdocs || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/htdocs for htdocsfile in `cd /home/ubuntu/freeswitch/htdocs && find . -type f -name \* | sed -e 's|^\.||'` ; do \ dir=`echo $htdocsfile | sed -e 's|/[^/]*$||'`; \ filename=`echo $htdocsfile | sed -e 's|^.*/||'`; \ test -d /usr/local/freeswitch/htdocs$dir || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/htdocs$dir ; \ test -f /usr/local/freeswitch/htdocs$dir/$filename || /usr/bin/install -c -m 644 /home/ubuntu/freeswitch/htdocs/$dir/$filename /usr/local/freeswitch/htdocs$dir 2>/dev/null; \ done
Additionally, it would probably be good for the freeswitch staff to update the wiki for installs on ubuntu, and give one authoritative method for installing on ubuntu. There are several paragraphs/scripts for installation on Ubuntu, and none of them seem to work for me.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Ken http://www.FreeSWITCH.org http://www.ClueCon.com http://www.OSTAG.org irc.freenode.net #freeswitch Twitter: @FreeSWITCH
I installed every zlib package I could find: sudo apt-get install zlib1g zlib1g-dbg zlib1g-dev zlib-bin zlibc zlib-gst But I'm still getting that build error... On Tue, Feb 4, 2014 at 5:51 PM, Josh Nankin <jnankin@gmail.com> wrote:
I've been using the following script for some time to build freeswitch on my machines. I recently edited the script to install openssl v1.0.1f, as that is now required it seems by this version of free switch.
Here's my script:
#!/bin/bash
test "$BRANCH" != "" || BRANCH=v1.2.stable
apt-get update apt-get install -y git-core subversion build-essential autoconf automake libtool libncurses5 libncurses5-dev make libjpeg-dev gawk apt-get install -y libcurl4-openssl-dev libexpat1-dev libgnutls-dev libtiff4-dev libx11-dev unixodbc-dev libssl-dev python2.6-dev \ zlib1g-dev libzrtpcpp-dev libasound2-dev libogg-dev libvorbis-dev libperl-dev libgdbm-dev libdb-dev python-dev \ uuid-dev update-alternatives --set awk /usr/bin/gawk git clone -b $BRANCH git://git.freeswitch.org/freeswitch.git
############################################################### # INSTALL OPENSSL v1.0.1f ############################################################### wget http://www.linuxfromscratch.org/patches/blfs/svn/openssl-1.0.1f-fix_parallel... wget http://www.linuxfromscratch.org/patches/blfs/svn/openssl-1.0.1f-fix_pod_synt... wget http://www.openssl.org/source/openssl-1.0.1f.tar.gz tar -zxvf openssl-1.0.1f.tar.gz cd openssl-1.0.1f
patch -Np1 -i ../openssl-1.0.1f-fix_parallel_build-1.patch && patch -Np1 -i ../openssl-1.0.1f-fix_pod_syntax-1.patch && ./config --prefix=/usr/openssl101f -fPIC \ --openssldir=/etc/ssl \ --libdir=lib \ shared \ zlib-dynamic && make make install
############################################################## # INSTALL FREESWITCH ############################################################## cd .. cd freeswitch ./bootstrap.sh ./configure CFLAGS="-I/usr/openssl101f/include" LDFLAGS="-L/usr/openssl101f/lib"
cat >modules.conf <<'EOL' applications/mod_commands applications/mod_conference applications/mod_db applications/mod_dptools applications/mod_enum applications/mod_esf applications/mod_esl applications/mod_expr applications/mod_fifo applications/mod_fsv applications/mod_hash applications/mod_httapi applications/mod_spandsp codecs/mod_amr codecs/mod_bv codecs/mod_g723_1 codecs/mod_g729 codecs/mod_h26x codecs/mod_vp8 codecs/mod_speex dialplans/mod_dialplan_asterisk dialplans/mod_dialplan_xml endpoints/mod_loopback endpoints/mod_sofia event_handlers/mod_cdr_csv event_handlers/mod_cdr_sqlite event_handlers/mod_event_socket formats/mod_local_stream formats/mod_native_file formats/mod_sndfile formats/mod_tone_stream languages/mod_lua languages/mod_spidermonkey loggers/mod_console loggers/mod_logfile loggers/mod_syslog say/mod_say_en xml_int/mod_xml_cdr xml_int/mod_xml_rpc xml_int/mod_xml_scgi EOL make
cat >/etc/init.d/freeswitch <<'EOL' #!/bin/sh ### -*- mode:shell-script; indent-tabs-mode:nil; sh-basic-offset:2 -*- ### BEGIN INIT INFO # Provides: freeswitch # Required-Start: $network $remote_fs $local_fs # Required-Stop: $network $remote_fs $local_fs # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: FreeSWITCH Softswitch # Description: FreeSWITCH Softswitch ### END INIT INFO
# Author: Travis Cross <tc@traviscross.com>
PATH=/sbin:/usr/sbin:/bin:/usr/bin DESC=freeswitch NAME=freeswitch DAEMON=/usr/local/freeswitch/bin/freeswitch DAEMON_ARGS="-u freeswitch -g daemon -rp -nc -nonat" USER=freeswitch PIDFILE=/usr/local/freeswitch/run/freeswitch.pid SCRIPTNAME=/etc/init.d/$NAME WORKDIR=/usr/local/freeswitch/lib
[ -x $DAEMON ] || exit 0 [ -r /etc/default/$NAME ] && . /etc/default/$NAME . /lib/init/vars.sh . /lib/lsb/init-functions
do_start() { start-stop-daemon --start --quiet \ --pidfile $PIDFILE --exec $DAEMON --name $NAME --user $USER \ --test > /dev/null \ || return 1 ulimit -s 240 start-stop-daemon --start --quiet \ --pidfile $PIDFILE --exec $DAEMON --name $NAME --user $USER \ --chdir $WORKDIR -- $DAEMON_ARGS $DAEMON_OPTS \ || return 2 return 0 }
stop_fs() { start-stop-daemon --stop --quiet \ --pidfile $PIDFILE --name $NAME --user $USER \ --retry=TERM/30/KILL/5 }
stop_fs_children() { start-stop-daemon --stop --quiet \ --exec $DAEMON \ --oknodo --retry=0/30/KILL/5 }
do_stop() { stop_fs RETVAL="$?" [ "$RETVAL" -eq 2 ] && return 2 stop_fs_children [ "$?" -eq 2 ] && return 2 rm -f $PIDFILE return "$RETVAL" }
do_reload() { start-stop-daemon --stop --quiet \ --pidfile $PIDFILE --name $NAME --user $USER \ --signal HUP }
case "$1" in start) [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC " "$NAME" do_start case "$?" in 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac ;; stop) [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME" do_stop case "$?" in 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac ;; status) status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $? ;; reload|force-reload) log_daemon_msg "Reloading $DESC" "$NAME" do_reload log_end_msg $? ;; restart) log_daemon_msg "Restarting $DESC" "$NAME" do_stop case "$?" in 0|1) do_start case "$?" in 0) log_end_msg 0 ;; 1|*) log_end_msg 1 ;; esac ;; *) log_end_msg 1 ;; esac ;; *) echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2 exit 3 ;; esac
exit 0 EOL chmod a+x /etc/init.d/freeswitch
make install make samples adduser --disabled-password --quiet --system --gecos "FreeSWITCH Voice Platform" --ingroup daemon freeswitch chown -R freeswitch:daemon /usr/local/freeswitch/ chmod -R o-rwx /usr/local/freeswitch/
The build error I'm getting is the following:
*** Warning: Linking the shared library libfreeswitch.la against the *** static library libs/libedit/src/.libs/libedit.a is not portable! quiet_libtool: link: g++ -fPIC -DPIC -shared -nostdlib /usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/4.6.1/crtbeginS.o .libs/libfreeswitch_la-switch_apr.o .libs/libfreeswitch_la-switch_buffer.o .libs/libfreeswitch_la-switch_caller.o .libs/libfreeswitch_la-switch_channel.o .libs/libfreeswitch_la-switch_console.o .libs/libfreeswitch_la-switch_mprintf.o .libs/libfreeswitch_la-switch_core_media_bug.o .libs/libfreeswitch_la-switch_core_timer.o .libs/libfreeswitch_la-switch_core_asr.o .libs/libfreeswitch_la-switch_core_event_hook.o .libs/libfreeswitch_la-switch_core_speech.o .libs/libfreeswitch_la-switch_core_memory.o .libs/libfreeswitch_la-switch_core_codec.o .libs/libfreeswitch_la-switch_core_file.o .libs/libfreeswitch_la-switch_core_hash.o .libs/libfreeswitch_la-switch_core_sqldb.o .libs/libfreeswitch_la-switch_core_session.o .libs/libfreeswitch_la-switch_core_directory.o .libs/libfreeswitch_la-switch_core_state_machine.o .libs/libfreeswitch_la-switch_core_io.o .libs/libfreeswitch_la-switch_core_rwlock.o .libs/libfreeswitch_la-switch_core_port_allocator.o .libs/libfreeswitch_la-switch_core.o .libs/libfreeswitch_la-switch_scheduler.o .libs/libfreeswitch_la-switch_core_db.o .libs/libfreeswitch_la-switch_dso.o .libs/libfreeswitch_la-switch_loadable_module.o .libs/libfreeswitch_la-switch_utils.o .libs/libfreeswitch_la-switch_event.o .libs/libfreeswitch_la-switch_resample.o .libs/libfreeswitch_la-switch_regex.o .libs/libfreeswitch_la-switch_rtp.o .libs/libfreeswitch_la-switch_ivr_bridge.o .libs/libfreeswitch_la-switch_ivr_originate.o .libs/libfreeswitch_la-switch_ivr_async.o .libs/libfreeswitch_la-switch_ivr_play_say.o .libs/libfreeswitch_la-switch_ivr_say.o .libs/libfreeswitch_la-switch_ivr_menu.o .libs/libfreeswitch_la-switch_ivr.o .libs/libfreeswitch_la-switch_stun.o .libs/libfreeswitch_la-switch_nat.o .libs/libfreeswitch_la-switch_log.o .libs/libfreeswitch_la-switch_xml.o .libs/libfreeswitch_la-switch_xml_config.o .libs/libfreeswitch_la-switch_config.o .libs/libfreeswitch_la-switch_time.o .libs/libfreeswitch_la-switch_odbc.o .libs/libfreeswitch_la-switch_pgsql.o .libs/libfreeswitch_la-switch_limit.o .libs/libfreeswitch_la-g711.o .libs/libfreeswitch_la-switch_pcm.o .libs/libfreeswitch_la-switch_profile.o .libs/libfreeswitch_la-switch_json.o .libs/libfreeswitch_la-switch_curl.o .libs/libfreeswitch_la-tpl.o .libs/libfreeswitch_la-stfu.o .libs/libfreeswitch_la-libteletone_detect.o .libs/libfreeswitch_la-libteletone_generate.o .libs/libfreeswitch_la-miniwget.o .libs/libfreeswitch_la-minixml.o .libs/libfreeswitch_la-igd_desc_parse.o .libs/libfreeswitch_la-minisoap.o .libs/libfreeswitch_la-miniupnpc.o .libs/libfreeswitch_la-upnpreplyparse.o .libs/libfreeswitch_la-upnpcommands.o .libs/libfreeswitch_la-minissdpc.o .libs/libfreeswitch_la-upnperrors.o .libs/libfreeswitch_la-natpmp.o .libs/libfreeswitch_la-getgateway.o .libs/libfreeswitch_la-plc.o .libs/libfreeswitch_la-alloc.o .libs/libfreeswitch_la-bit_operations.o .libs/switch_cpp.o -lz -L/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -L/usr/openssl101f/lib libs/apr-util/.libs/libaprutil-1.a libs/apr/.libs/libapr-1.a libs/sqlite/.libs/libsqlite3.a libs/pcre/.libs/libpcre.a libs/speex/libspeex/.libs/libspeexdsp.a libs/srtp/.libs/libsrtp.a libs/libedit/src/.libs/libedit.a libs/curl/lib/.libs/libcurl.a libs/apr-util/xml/expat/lib/.libs/libexpat.a -luuid -lpthread -ldl -lcrypt -lrt -lssl -lcrypto -lncurses /usr/lib/x86_64-linux-gnu/libjpeg.so -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1 -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-linux-gnu/4.6.1/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../x86_64-linux-gnu/crtn.o -O2 -Wl,-lodbc -pthread -Wl,-soname -Wl,libfreeswitch.so.1 -o .libs/libfreeswitch.so.1.0.0 quiet_libtool: link: (cd ".libs" && rm -f "libfreeswitch.so.1" && ln -s "libfreeswitch.so.1.0.0" "libfreeswitch.so.1") quiet_libtool: link: (cd ".libs" && rm -f "libfreeswitch.so" && ln -s "libfreeswitch.so.1.0.0" "libfreeswitch.so") quiet_libtool: link: ar cru .libs/libfreeswitch.a libs/libedit/src/.libs/libedit.a libfreeswitch_la-switch_apr.o libfreeswitch_la-switch_buffer.o libfreeswitch_la-switch_caller.o libfreeswitch_la-switch_channel.o libfreeswitch_la-switch_console.o libfreeswitch_la-switch_mprintf.o libfreeswitch_la-switch_core_media_bug.o libfreeswitch_la-switch_core_timer.o libfreeswitch_la-switch_core_asr.o libfreeswitch_la-switch_core_event_hook.o libfreeswitch_la-switch_core_speech.o libfreeswitch_la-switch_core_memory.o libfreeswitch_la-switch_core_codec.o libfreeswitch_la-switch_core_file.o libfreeswitch_la-switch_core_hash.o libfreeswitch_la-switch_core_sqldb.o libfreeswitch_la-switch_core_session.o libfreeswitch_la-switch_core_directory.o libfreeswitch_la-switch_core_state_machine.o libfreeswitch_la-switch_core_io.o libfreeswitch_la-switch_core_rwlock.o libfreeswitch_la-switch_core_port_allocator.o libfreeswitch_la-switch_core.o libfreeswitch_la-switch_scheduler.o libfreeswitch_la-switch_core_db.o libfreeswitch_la-switch_dso.o libfreeswitch_la-switch_loadable_module.o libfreeswitch_la-switch_utils.o libfreeswitch_la-switch_event.o libfreeswitch_la-switch_resample.o libfreeswitch_la-switch_regex.o libfreeswitch_la-switch_rtp.o libfreeswitch_la-switch_ivr_bridge.o libfreeswitch_la-switch_ivr_originate.o libfreeswitch_la-switch_ivr_async.o libfreeswitch_la-switch_ivr_play_say.o libfreeswitch_la-switch_ivr_say.o libfreeswitch_la-switch_ivr_menu.o libfreeswitch_la-switch_ivr.o libfreeswitch_la-switch_stun.o libfreeswitch_la-switch_nat.o libfreeswitch_la-switch_log.o libfreeswitch_la-switch_xml.o libfreeswitch_la-switch_xml_config.o libfreeswitch_la-switch_config.o libfreeswitch_la-switch_time.o libfreeswitch_la-switch_odbc.o libfreeswitch_la-switch_pgsql.o libfreeswitch_la-switch_limit.o libfreeswitch_la-g711.o libfreeswitch_la-switch_pcm.o libfreeswitch_la-switch_profile.o libfreeswitch_la-switch_json.o libfreeswitch_la-switch_curl.o libfreeswitch_la-tpl.o libfreeswitch_la-stfu.o libfreeswitch_la-libteletone_detect.o libfreeswitch_la-libteletone_generate.o libfreeswitch_la-miniwget.o libfreeswitch_la-minixml.o libfreeswitch_la-igd_desc_parse.o libfreeswitch_la-minisoap.o libfreeswitch_la-miniupnpc.o libfreeswitch_la-upnpreplyparse.o libfreeswitch_la-upnpcommands.o libfreeswitch_la-minissdpc.o libfreeswitch_la-upnperrors.o libfreeswitch_la-natpmp.o libfreeswitch_la-getgateway.o libfreeswitch_la-plc.o libfreeswitch_la-alloc.o libfreeswitch_la-bit_operations.o switch_cpp.o quiet_libtool: link: ranlib .libs/libfreeswitch.a quiet_libtool: link: ( cd ".libs" && rm -f "libfreeswitch.la" && ln -s "../libfreeswitch.la" "libfreeswitch.la" ) quiet_libtool: link: gcc -I/home/ubuntu/freeswitch/libs/curl/include -I/usr/include/uuid -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/libs/libteletone/src -I/home/ubuntu/freeswitch/libs/stfu -fPIC -Werror -fvisibility=hidden -DSWITCH_API_VISIBILITY=1 -DHAVE_VISIBILITY=1 -g -ggdb -DHAVE_OPENSSL -Wall -std=c99 -pedantic -Wdeclaration-after-statement -pthread -D_REENTRANT -D_GNU_SOURCE -I/home/ubuntu/freeswitch/libs/apr/include -I/home/ubuntu/freeswitch/libs/apr-util/include -I/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -I/home/ubuntu/freeswitch/libs/libtpl-1.5/src -I/home/ubuntu/freeswitch/libs/stfu -I/home/ubuntu/freeswitch/libs/sqlite -I/home/ubuntu/freeswitch/libs/pcre -I/home/ubuntu/freeswitch/libs/speex/include -Ilibs/speex/include -I/home/ubuntu/freeswitch/libs/srtp/include -I/home/ubuntu/freeswitch/libs/srtp/crypto/include -Ilibs/srtp/crypto/include -I/home/ubuntu/freeswitch/libs/spandsp/src -I/home/ubuntu/freeswitch/libs/tiff-4.0.2/libtiff -DENABLE_SRTP -DSWITCH_HAVE_ODBC -I/usr/include -I/home/ubuntu/freeswitch/libs/libedit/src -DSWITCH_HAVE_LIBEDIT -Ilibs/libedit/src -DSWITCH_HAVE_LIBEDIT -I/usr/openssl101f/include -o .libs/freeswitch freeswitch-switch.o -Wl,-lodbc -lm -lz -L/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -L/usr/openssl101f/lib ./.libs/libfreeswitch.so libs/apr/.libs/libapr-1.a -luuid -lrt -ldl -lcrypt -lpthread libs/libedit/src/.libs/libedit.a -lssl -lcrypto -lncurses /usr/lib/x86_64-linux-gnu/libjpeg.so -pthread -Wl,-rpath -Wl,/usr/local/freeswitch/lib ./.libs/libfreeswitch.so: undefined reference to `zlibVersion' ./.libs/libfreeswitch.so: undefined reference to `inflate' ./.libs/libfreeswitch.so: undefined reference to `inflateInit2_' ./.libs/libfreeswitch.so: undefined reference to `inflateInit_' ./.libs/libfreeswitch.so: undefined reference to `inflateEnd' ./.libs/libfreeswitch.so: undefined reference to `inflateReset' collect2: ld returned 1 exit status make[1]: *** [freeswitch] Error 1 make: *** [all] Error 2 make "OUR_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-all ; done )"; echo $mods )" "OUR_CLEAN_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-clean ; done )"; echo $mods )" "OUR_INSTALL_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-install ; done)"; echo $mods )" "OUR_UNINSTALL_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-uninstall ; done)"; echo $mods )" "OUR_DISABLED_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-all ; done )"; echo $mods )" "OUR_DISABLED_CLEAN_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-clean ; done )"; echo $mods )" "OUR_DISABLED_INSTALL_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-install ; done)"; echo $mods )" "OUR_DISABLED_UNINSTALL_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-uninstall ; done)"; echo $mods )" `test -n "" || echo -s` install-recursive quiet_libtool: link: gcc -I/home/ubuntu/freeswitch/libs/curl/include -I/usr/include/uuid -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/libs/libteletone/src -I/home/ubuntu/freeswitch/libs/stfu -fPIC -Werror -fvisibility=hidden -DSWITCH_API_VISIBILITY=1 -DHAVE_VISIBILITY=1 -g -ggdb -DHAVE_OPENSSL -Wall -std=c99 -pedantic -Wdeclaration-after-statement -pthread -D_REENTRANT -D_GNU_SOURCE -I/home/ubuntu/freeswitch/libs/apr/include -I/home/ubuntu/freeswitch/libs/apr-util/include -I/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -I/home/ubuntu/freeswitch/libs/libtpl-1.5/src -I/home/ubuntu/freeswitch/libs/stfu -I/home/ubuntu/freeswitch/libs/sqlite -I/home/ubuntu/freeswitch/libs/pcre -I/home/ubuntu/freeswitch/libs/speex/include -Ilibs/speex/include -I/home/ubuntu/freeswitch/libs/srtp/include -I/home/ubuntu/freeswitch/libs/srtp/crypto/include -Ilibs/srtp/crypto/include -I/home/ubuntu/freeswitch/libs/spandsp/src -I/home/ubuntu/freeswitch/libs/tiff-4.0.2/libtiff -DENABLE_SRTP -DSWITCH_HAVE_ODBC -I/usr/include -I/home/ubuntu/freeswitch/libs/libedit/src -DSWITCH_HAVE_LIBEDIT -Ilibs/libedit/src -DSWITCH_HAVE_LIBEDIT -I/usr/openssl101f/include -o .libs/freeswitch freeswitch-switch.o -Wl,-lodbc -lm -lz -L/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -L/usr/openssl101f/lib ./.libs/libfreeswitch.so libs/apr/.libs/libapr-1.a -luuid -lrt -ldl -lcrypt -lpthread libs/libedit/src/.libs/libedit.a -lssl -lcrypto -lncurses /usr/lib/x86_64-linux-gnu/libjpeg.so -pthread -Wl,-rpath -Wl,/usr/local/freeswitch/lib ./.libs/libfreeswitch.so: undefined reference to `zlibVersion' ./.libs/libfreeswitch.so: undefined reference to `inflate' ./.libs/libfreeswitch.so: undefined reference to `inflateInit2_' ./.libs/libfreeswitch.so: undefined reference to `inflateInit_' ./.libs/libfreeswitch.so: undefined reference to `inflateEnd' ./.libs/libfreeswitch.so: undefined reference to `inflateReset' collect2: ld returned 1 exit status make[1]: *** [freeswitch] Error 1 make: *** [install] Error 2 test -d /usr/local/freeswitch/conf || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/conf for conffile in `cd /home/ubuntu/freeswitch/conf/vanilla && find . -name \*.xml && find . -name \*.conf && find . -name \*.tpl && find . -name \*.ttml && find . -name mime.types` ; do \ dir=`echo $conffile | sed -e 's|^\.||' | sed -e 's|/[^/]*$||'`; \ filename=`echo $conffile | sed -e 's|^\.||' | sed -e 's|^.*/||'`; \ test -d /usr/local/freeswitch/conf$dir || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/conf$dir ; \ test -f /usr/local/freeswitch/conf$dir/$filename || \ test -f /usr/local/freeswitch/conf$dir/$filename.noload || \ /usr/bin/install -c -m 644 /home/ubuntu/freeswitch/conf/vanilla/$dir/$filename /usr/local/freeswitch/conf$dir; \ done test -d /usr/local/freeswitch/htdocs || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/htdocs for htdocsfile in `cd /home/ubuntu/freeswitch/htdocs && find . -type f -name \* | sed -e 's|^\.||'` ; do \ dir=`echo $htdocsfile | sed -e 's|/[^/]*$||'`; \ filename=`echo $htdocsfile | sed -e 's|^.*/||'`; \ test -d /usr/local/freeswitch/htdocs$dir || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/htdocs$dir ; \ test -f /usr/local/freeswitch/htdocs$dir/$filename || /usr/bin/install -c -m 644 /home/ubuntu/freeswitch/htdocs/$dir/$filename /usr/local/freeswitch/htdocs$dir 2>/dev/null; \ done
Additionally, it would probably be good for the freeswitch staff to update the wiki for installs on ubuntu, and give one authoritative method for installing on ubuntu. There are several paragraphs/scripts for installation on Ubuntu, and none of them seem to work for me.
You may need to re-run the top level configure. If zlib is missing and it does not detect it, it should probably fail the build. On Wed, Feb 5, 2014 at 2:30 PM, Josh Nankin <jnankin@gmail.com> wrote:
I installed every zlib package I could find:
sudo apt-get install zlib1g zlib1g-dbg zlib1g-dev zlib-bin zlibc zlib-gst
But I'm still getting that build error...
On Tue, Feb 4, 2014 at 5:51 PM, Josh Nankin <jnankin@gmail.com> wrote:
I've been using the following script for some time to build freeswitch on my machines. I recently edited the script to install openssl v1.0.1f, as that is now required it seems by this version of free switch.
Here's my script:
#!/bin/bash
test "$BRANCH" != "" || BRANCH=v1.2.stable
apt-get update apt-get install -y git-core subversion build-essential autoconf automake libtool libncurses5 libncurses5-dev make libjpeg-dev gawk apt-get install -y libcurl4-openssl-dev libexpat1-dev libgnutls-dev libtiff4-dev libx11-dev unixodbc-dev libssl-dev python2.6-dev \ zlib1g-dev libzrtpcpp-dev libasound2-dev libogg-dev libvorbis-dev libperl-dev libgdbm-dev libdb-dev python-dev \ uuid-dev update-alternatives --set awk /usr/bin/gawk git clone -b $BRANCH git://git.freeswitch.org/freeswitch.git
############################################################### # INSTALL OPENSSL v1.0.1f ############################################################### wget http://www.linuxfromscratch.org/patches/blfs/svn/openssl-1.0.1f-fix_parallel... wget http://www.linuxfromscratch.org/patches/blfs/svn/openssl-1.0.1f-fix_pod_synt... wget http://www.openssl.org/source/openssl-1.0.1f.tar.gz tar -zxvf openssl-1.0.1f.tar.gz cd openssl-1.0.1f
patch -Np1 -i ../openssl-1.0.1f-fix_parallel_build-1.patch && patch -Np1 -i ../openssl-1.0.1f-fix_pod_syntax-1.patch && ./config --prefix=/usr/openssl101f -fPIC \ --openssldir=/etc/ssl \ --libdir=lib \ shared \ zlib-dynamic && make make install
############################################################## # INSTALL FREESWITCH ############################################################## cd .. cd freeswitch ./bootstrap.sh ./configure CFLAGS="-I/usr/openssl101f/include" LDFLAGS="-L/usr/openssl101f/lib"
cat >modules.conf <<'EOL' applications/mod_commands applications/mod_conference applications/mod_db applications/mod_dptools applications/mod_enum applications/mod_esf applications/mod_esl applications/mod_expr applications/mod_fifo applications/mod_fsv applications/mod_hash applications/mod_httapi applications/mod_spandsp codecs/mod_amr codecs/mod_bv codecs/mod_g723_1 codecs/mod_g729 codecs/mod_h26x codecs/mod_vp8 codecs/mod_speex dialplans/mod_dialplan_asterisk dialplans/mod_dialplan_xml endpoints/mod_loopback endpoints/mod_sofia event_handlers/mod_cdr_csv event_handlers/mod_cdr_sqlite event_handlers/mod_event_socket formats/mod_local_stream formats/mod_native_file formats/mod_sndfile formats/mod_tone_stream languages/mod_lua languages/mod_spidermonkey loggers/mod_console loggers/mod_logfile loggers/mod_syslog say/mod_say_en xml_int/mod_xml_cdr xml_int/mod_xml_rpc xml_int/mod_xml_scgi EOL make
cat >/etc/init.d/freeswitch <<'EOL' #!/bin/sh ### -*- mode:shell-script; indent-tabs-mode:nil; sh-basic-offset:2 -*- ### BEGIN INIT INFO # Provides: freeswitch # Required-Start: $network $remote_fs $local_fs # Required-Stop: $network $remote_fs $local_fs # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: FreeSWITCH Softswitch # Description: FreeSWITCH Softswitch ### END INIT INFO
# Author: Travis Cross <tc@traviscross.com>
PATH=/sbin:/usr/sbin:/bin:/usr/bin DESC=freeswitch NAME=freeswitch DAEMON=/usr/local/freeswitch/bin/freeswitch DAEMON_ARGS="-u freeswitch -g daemon -rp -nc -nonat" USER=freeswitch PIDFILE=/usr/local/freeswitch/run/freeswitch.pid SCRIPTNAME=/etc/init.d/$NAME WORKDIR=/usr/local/freeswitch/lib
[ -x $DAEMON ] || exit 0 [ -r /etc/default/$NAME ] && . /etc/default/$NAME . /lib/init/vars.sh . /lib/lsb/init-functions
do_start() { start-stop-daemon --start --quiet \ --pidfile $PIDFILE --exec $DAEMON --name $NAME --user $USER \ --test > /dev/null \ || return 1 ulimit -s 240 start-stop-daemon --start --quiet \ --pidfile $PIDFILE --exec $DAEMON --name $NAME --user $USER \ --chdir $WORKDIR -- $DAEMON_ARGS $DAEMON_OPTS \ || return 2 return 0 }
stop_fs() { start-stop-daemon --stop --quiet \ --pidfile $PIDFILE --name $NAME --user $USER \ --retry=TERM/30/KILL/5 }
stop_fs_children() { start-stop-daemon --stop --quiet \ --exec $DAEMON \ --oknodo --retry=0/30/KILL/5 }
do_stop() { stop_fs RETVAL="$?" [ "$RETVAL" -eq 2 ] && return 2 stop_fs_children [ "$?" -eq 2 ] && return 2 rm -f $PIDFILE return "$RETVAL" }
do_reload() { start-stop-daemon --stop --quiet \ --pidfile $PIDFILE --name $NAME --user $USER \ --signal HUP }
case "$1" in start) [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC " "$NAME" do_start case "$?" in 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac ;; stop) [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME" do_stop case "$?" in 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;; 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;; esac ;; status) status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $? ;; reload|force-reload) log_daemon_msg "Reloading $DESC" "$NAME" do_reload log_end_msg $? ;; restart) log_daemon_msg "Restarting $DESC" "$NAME" do_stop case "$?" in 0|1) do_start case "$?" in 0) log_end_msg 0 ;; 1|*) log_end_msg 1 ;; esac ;; *) log_end_msg 1 ;; esac ;; *) echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2 exit 3 ;; esac
exit 0 EOL chmod a+x /etc/init.d/freeswitch
make install make samples adduser --disabled-password --quiet --system --gecos "FreeSWITCH Voice Platform" --ingroup daemon freeswitch chown -R freeswitch:daemon /usr/local/freeswitch/ chmod -R o-rwx /usr/local/freeswitch/
The build error I'm getting is the following:
*** Warning: Linking the shared library libfreeswitch.la against the *** static library libs/libedit/src/.libs/libedit.a is not portable! quiet_libtool: link: g++ -fPIC -DPIC -shared -nostdlib /usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/4.6.1/crtbeginS.o .libs/libfreeswitch_la-switch_apr.o .libs/libfreeswitch_la-switch_buffer.o .libs/libfreeswitch_la-switch_caller.o .libs/libfreeswitch_la-switch_channel.o .libs/libfreeswitch_la-switch_console.o .libs/libfreeswitch_la-switch_mprintf.o .libs/libfreeswitch_la-switch_core_media_bug.o .libs/libfreeswitch_la-switch_core_timer.o .libs/libfreeswitch_la-switch_core_asr.o .libs/libfreeswitch_la-switch_core_event_hook.o .libs/libfreeswitch_la-switch_core_speech.o .libs/libfreeswitch_la-switch_core_memory.o .libs/libfreeswitch_la-switch_core_codec.o .libs/libfreeswitch_la-switch_core_file.o .libs/libfreeswitch_la-switch_core_hash.o .libs/libfreeswitch_la-switch_core_sqldb.o .libs/libfreeswitch_la-switch_core_session.o .libs/libfreeswitch_la-switch_core_directory.o .libs/libfreeswitch_la-switch_core_state_machine.o .libs/libfreeswitch_la-switch_core_io.o .libs/libfreeswitch_la-switch_core_rwlock.o .libs/libfreeswitch_la-switch_core_port_allocator.o .libs/libfreeswitch_la-switch_core.o .libs/libfreeswitch_la-switch_scheduler.o .libs/libfreeswitch_la-switch_core_db.o .libs/libfreeswitch_la-switch_dso.o .libs/libfreeswitch_la-switch_loadable_module.o .libs/libfreeswitch_la-switch_utils.o .libs/libfreeswitch_la-switch_event.o .libs/libfreeswitch_la-switch_resample.o .libs/libfreeswitch_la-switch_regex.o .libs/libfreeswitch_la-switch_rtp.o .libs/libfreeswitch_la-switch_ivr_bridge.o .libs/libfreeswitch_la-switch_ivr_originate.o .libs/libfreeswitch_la-switch_ivr_async.o .libs/libfreeswitch_la-switch_ivr_play_say.o .libs/libfreeswitch_la-switch_ivr_say.o .libs/libfreeswitch_la-switch_ivr_menu.o .libs/libfreeswitch_la-switch_ivr.o .libs/libfreeswitch_la-switch_stun.o .libs/libfreeswitch_la-switch_nat.o .libs/libfreeswitch_la-switch_log.o .libs/libfreeswitch_la-switch_xml.o .libs/libfreeswitch_la-switch_xml_config.o .libs/libfreeswitch_la-switch_config.o .libs/libfreeswitch_la-switch_time.o .libs/libfreeswitch_la-switch_odbc.o .libs/libfreeswitch_la-switch_pgsql.o .libs/libfreeswitch_la-switch_limit.o .libs/libfreeswitch_la-g711.o .libs/libfreeswitch_la-switch_pcm.o .libs/libfreeswitch_la-switch_profile.o .libs/libfreeswitch_la-switch_json.o .libs/libfreeswitch_la-switch_curl.o .libs/libfreeswitch_la-tpl.o .libs/libfreeswitch_la-stfu.o .libs/libfreeswitch_la-libteletone_detect.o .libs/libfreeswitch_la-libteletone_generate.o .libs/libfreeswitch_la-miniwget.o .libs/libfreeswitch_la-minixml.o .libs/libfreeswitch_la-igd_desc_parse.o .libs/libfreeswitch_la-minisoap.o .libs/libfreeswitch_la-miniupnpc.o .libs/libfreeswitch_la-upnpreplyparse.o .libs/libfreeswitch_la-upnpcommands.o .libs/libfreeswitch_la-minissdpc.o .libs/libfreeswitch_la-upnperrors.o .libs/libfreeswitch_la-natpmp.o .libs/libfreeswitch_la-getgateway.o .libs/libfreeswitch_la-plc.o .libs/libfreeswitch_la-alloc.o .libs/libfreeswitch_la-bit_operations.o .libs/switch_cpp.o -lz -L/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -L/usr/openssl101f/lib libs/apr-util/.libs/libaprutil-1.a libs/apr/.libs/libapr-1.a libs/sqlite/.libs/libsqlite3.a libs/pcre/.libs/libpcre.a libs/speex/libspeex/.libs/libspeexdsp.a libs/srtp/.libs/libsrtp.a libs/libedit/src/.libs/libedit.a libs/curl/lib/.libs/libcurl.a libs/apr-util/xml/expat/lib/.libs/libexpat.a -luuid -lpthread -ldl -lcrypt -lrt -lssl -lcrypto -lncurses /usr/lib/x86_64-linux-gnu/libjpeg.so -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1 -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-linux-gnu/4.6.1/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/4.6.1/../../../x86_64-linux-gnu/crtn.o -O2 -Wl,-lodbc -pthread -Wl,-soname -Wl,libfreeswitch.so.1 -o .libs/libfreeswitch.so.1.0.0 quiet_libtool: link: (cd ".libs" && rm -f "libfreeswitch.so.1" && ln -s "libfreeswitch.so.1.0.0" "libfreeswitch.so.1") quiet_libtool: link: (cd ".libs" && rm -f "libfreeswitch.so" && ln -s "libfreeswitch.so.1.0.0" "libfreeswitch.so") quiet_libtool: link: ar cru .libs/libfreeswitch.a libs/libedit/src/.libs/libedit.a libfreeswitch_la-switch_apr.o libfreeswitch_la-switch_buffer.o libfreeswitch_la-switch_caller.o libfreeswitch_la-switch_channel.o libfreeswitch_la-switch_console.o libfreeswitch_la-switch_mprintf.o libfreeswitch_la-switch_core_media_bug.o libfreeswitch_la-switch_core_timer.o libfreeswitch_la-switch_core_asr.o libfreeswitch_la-switch_core_event_hook.o libfreeswitch_la-switch_core_speech.o libfreeswitch_la-switch_core_memory.o libfreeswitch_la-switch_core_codec.o libfreeswitch_la-switch_core_file.o libfreeswitch_la-switch_core_hash.o libfreeswitch_la-switch_core_sqldb.o libfreeswitch_la-switch_core_session.o libfreeswitch_la-switch_core_directory.o libfreeswitch_la-switch_core_state_machine.o libfreeswitch_la-switch_core_io.o libfreeswitch_la-switch_core_rwlock.o libfreeswitch_la-switch_core_port_allocator.o libfreeswitch_la-switch_core.o libfreeswitch_la-switch_scheduler.o libfreeswitch_la-switch_core_db.o libfreeswitch_la-switch_dso.o libfreeswitch_la-switch_loadable_module.o libfreeswitch_la-switch_utils.o libfreeswitch_la-switch_event.o libfreeswitch_la-switch_resample.o libfreeswitch_la-switch_regex.o libfreeswitch_la-switch_rtp.o libfreeswitch_la-switch_ivr_bridge.o libfreeswitch_la-switch_ivr_originate.o libfreeswitch_la-switch_ivr_async.o libfreeswitch_la-switch_ivr_play_say.o libfreeswitch_la-switch_ivr_say.o libfreeswitch_la-switch_ivr_menu.o libfreeswitch_la-switch_ivr.o libfreeswitch_la-switch_stun.o libfreeswitch_la-switch_nat.o libfreeswitch_la-switch_log.o libfreeswitch_la-switch_xml.o libfreeswitch_la-switch_xml_config.o libfreeswitch_la-switch_config.o libfreeswitch_la-switch_time.o libfreeswitch_la-switch_odbc.o libfreeswitch_la-switch_pgsql.o libfreeswitch_la-switch_limit.o libfreeswitch_la-g711.o libfreeswitch_la-switch_pcm.o libfreeswitch_la-switch_profile.o libfreeswitch_la-switch_json.o libfreeswitch_la-switch_curl.o libfreeswitch_la-tpl.o libfreeswitch_la-stfu.o libfreeswitch_la-libteletone_detect.o libfreeswitch_la-libteletone_generate.o libfreeswitch_la-miniwget.o libfreeswitch_la-minixml.o libfreeswitch_la-igd_desc_parse.o libfreeswitch_la-minisoap.o libfreeswitch_la-miniupnpc.o libfreeswitch_la-upnpreplyparse.o libfreeswitch_la-upnpcommands.o libfreeswitch_la-minissdpc.o libfreeswitch_la-upnperrors.o libfreeswitch_la-natpmp.o libfreeswitch_la-getgateway.o libfreeswitch_la-plc.o libfreeswitch_la-alloc.o libfreeswitch_la-bit_operations.o switch_cpp.o quiet_libtool: link: ranlib .libs/libfreeswitch.a quiet_libtool: link: ( cd ".libs" && rm -f "libfreeswitch.la" && ln -s "../libfreeswitch.la" "libfreeswitch.la" ) quiet_libtool: link: gcc -I/home/ubuntu/freeswitch/libs/curl/include -I/usr/include/uuid -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/libs/libteletone/src -I/home/ubuntu/freeswitch/libs/stfu -fPIC -Werror -fvisibility=hidden -DSWITCH_API_VISIBILITY=1 -DHAVE_VISIBILITY=1 -g -ggdb -DHAVE_OPENSSL -Wall -std=c99 -pedantic -Wdeclaration-after-statement -pthread -D_REENTRANT -D_GNU_SOURCE -I/home/ubuntu/freeswitch/libs/apr/include -I/home/ubuntu/freeswitch/libs/apr-util/include -I/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -I/home/ubuntu/freeswitch/libs/libtpl-1.5/src -I/home/ubuntu/freeswitch/libs/stfu -I/home/ubuntu/freeswitch/libs/sqlite -I/home/ubuntu/freeswitch/libs/pcre -I/home/ubuntu/freeswitch/libs/speex/include -Ilibs/speex/include -I/home/ubuntu/freeswitch/libs/srtp/include -I/home/ubuntu/freeswitch/libs/srtp/crypto/include -Ilibs/srtp/crypto/include -I/home/ubuntu/freeswitch/libs/spandsp/src -I/home/ubuntu/freeswitch/libs/tiff-4.0.2/libtiff -DENABLE_SRTP -DSWITCH_HAVE_ODBC -I/usr/include -I/home/ubuntu/freeswitch/libs/libedit/src -DSWITCH_HAVE_LIBEDIT -Ilibs/libedit/src -DSWITCH_HAVE_LIBEDIT -I/usr/openssl101f/include -o .libs/freeswitch freeswitch-switch.o -Wl,-lodbc -lm -lz -L/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -L/usr/openssl101f/lib ./.libs/libfreeswitch.so libs/apr/.libs/libapr-1.a -luuid -lrt -ldl -lcrypt -lpthread libs/libedit/src/.libs/libedit.a -lssl -lcrypto -lncurses /usr/lib/x86_64-linux-gnu/libjpeg.so -pthread -Wl,-rpath -Wl,/usr/local/freeswitch/lib ./.libs/libfreeswitch.so: undefined reference to `zlibVersion' ./.libs/libfreeswitch.so: undefined reference to `inflate' ./.libs/libfreeswitch.so: undefined reference to `inflateInit2_' ./.libs/libfreeswitch.so: undefined reference to `inflateInit_' ./.libs/libfreeswitch.so: undefined reference to `inflateEnd' ./.libs/libfreeswitch.so: undefined reference to `inflateReset' collect2: ld returned 1 exit status make[1]: *** [freeswitch] Error 1 make: *** [all] Error 2 make "OUR_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-all ; done )"; echo $mods )" "OUR_CLEAN_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-clean ; done )"; echo $mods )" "OUR_INSTALL_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-install ; done)"; echo $mods )" "OUR_UNINSTALL_MODULES=$(if test -z "" ; then tmp_mods="$(grep -v "#" /home/ubuntu/freeswitch/modules.conf | sed -e "s|^.*/||" | sort | uniq )"; else tmp_mods="" ; fi ; mods="$(for i in $tmp_mods ; do echo $i-uninstall ; done)"; echo $mods )" "OUR_DISABLED_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-all ; done )"; echo $mods )" "OUR_DISABLED_CLEAN_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-clean ; done )"; echo $mods )" "OUR_DISABLED_INSTALL_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-install ; done)"; echo $mods )" "OUR_DISABLED_UNINSTALL_MODULES=$(tmp_mods="$(grep "#" /home/ubuntu/freeswitch/modules.conf | grep -v "##" | sed -e "s|^.*/||" | sort | uniq )"; mods="$(for i in $tmp_mods ; do echo $i-uninstall ; done)"; echo $mods )" `test -n "" || echo -s` install-recursive quiet_libtool: link: gcc -I/home/ubuntu/freeswitch/libs/curl/include -I/usr/include/uuid -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/src/include -I/home/ubuntu/freeswitch/libs/libteletone/src -I/home/ubuntu/freeswitch/libs/stfu -fPIC -Werror -fvisibility=hidden -DSWITCH_API_VISIBILITY=1 -DHAVE_VISIBILITY=1 -g -ggdb -DHAVE_OPENSSL -Wall -std=c99 -pedantic -Wdeclaration-after-statement -pthread -D_REENTRANT -D_GNU_SOURCE -I/home/ubuntu/freeswitch/libs/apr/include -I/home/ubuntu/freeswitch/libs/apr-util/include -I/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -I/home/ubuntu/freeswitch/libs/libtpl-1.5/src -I/home/ubuntu/freeswitch/libs/stfu -I/home/ubuntu/freeswitch/libs/sqlite -I/home/ubuntu/freeswitch/libs/pcre -I/home/ubuntu/freeswitch/libs/speex/include -Ilibs/speex/include -I/home/ubuntu/freeswitch/libs/srtp/include -I/home/ubuntu/freeswitch/libs/srtp/crypto/include -Ilibs/srtp/crypto/include -I/home/ubuntu/freeswitch/libs/spandsp/src -I/home/ubuntu/freeswitch/libs/tiff-4.0.2/libtiff -DENABLE_SRTP -DSWITCH_HAVE_ODBC -I/usr/include -I/home/ubuntu/freeswitch/libs/libedit/src -DSWITCH_HAVE_LIBEDIT -Ilibs/libedit/src -DSWITCH_HAVE_LIBEDIT -I/usr/openssl101f/include -o .libs/freeswitch freeswitch-switch.o -Wl,-lodbc -lm -lz -L/home/ubuntu/freeswitch/libs/apr-util/xml/expat/lib -L/usr/openssl101f/lib ./.libs/libfreeswitch.so libs/apr/.libs/libapr-1.a -luuid -lrt -ldl -lcrypt -lpthread libs/libedit/src/.libs/libedit.a -lssl -lcrypto -lncurses /usr/lib/x86_64-linux-gnu/libjpeg.so -pthread -Wl,-rpath -Wl,/usr/local/freeswitch/lib ./.libs/libfreeswitch.so: undefined reference to `zlibVersion' ./.libs/libfreeswitch.so: undefined reference to `inflate' ./.libs/libfreeswitch.so: undefined reference to `inflateInit2_' ./.libs/libfreeswitch.so: undefined reference to `inflateInit_' ./.libs/libfreeswitch.so: undefined reference to `inflateEnd' ./.libs/libfreeswitch.so: undefined reference to `inflateReset' collect2: ld returned 1 exit status make[1]: *** [freeswitch] Error 1 make: *** [install] Error 2 test -d /usr/local/freeswitch/conf || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/conf for conffile in `cd /home/ubuntu/freeswitch/conf/vanilla && find . -name \*.xml && find . -name \*.conf && find . -name \*.tpl && find . -name \*.ttml && find . -name mime.types` ; do \ dir=`echo $conffile | sed -e 's|^\.||' | sed -e 's|/[^/]*$||'`; \ filename=`echo $conffile | sed -e 's|^\.||' | sed -e 's|^.*/||'`; \ test -d /usr/local/freeswitch/conf$dir || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/conf$dir ; \ test -f /usr/local/freeswitch/conf$dir/$filename || \ test -f /usr/local/freeswitch/conf$dir/$filename.noload || \ /usr/bin/install -c -m 644 /home/ubuntu/freeswitch/conf/vanilla/$dir/$filename /usr/local/freeswitch/conf$dir; \ done test -d /usr/local/freeswitch/htdocs || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/htdocs for htdocsfile in `cd /home/ubuntu/freeswitch/htdocs && find . -type f -name \* | sed -e 's|^\.||'` ; do \ dir=`echo $htdocsfile | sed -e 's|/[^/]*$||'`; \ filename=`echo $htdocsfile | sed -e 's|^.*/||'`; \ test -d /usr/local/freeswitch/htdocs$dir || /bin/bash /home/ubuntu/freeswitch/build/config/install-sh -d /usr/local/freeswitch/htdocs$dir ; \ test -f /usr/local/freeswitch/htdocs$dir/$filename || /usr/bin/install -c -m 644 /home/ubuntu/freeswitch/htdocs/$dir/$filename /usr/local/freeswitch/htdocs$dir 2>/dev/null; \ done
Additionally, it would probably be good for the freeswitch staff to update the wiki for installs on ubuntu, and give one authoritative method for installing on ubuntu. There are several paragraphs/scripts for installation on Ubuntu, and none of them seem to work for me.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Anthony Minessale II ♬ @anthmfs ♬ @FreeSWITCH ♬ ☞ http://freeswitch.org/ ☞ http://cluecon.com/ ☞ http://twitter.com/FreeSWITCH ☞ irc.freenode.net #freeswitch ☞ *http://freeswitch.org/g+ <http://freeswitch.org/g+>* ClueCon Weekly Development Call ☎ sip:888@conference.freeswitch.org ☎ +19193869900
participants (3)
-
Anthony Minessale
-
Josh Nankin
-
Ken Rice