Freeswitch ultra-quickstart

This is based on reading of the freeswitch website and some experimentation

First, get an up-to-date Linux-based VM. My choice was the "Ubuntu 9.04 Desktop with VMware Tools" authored by Chrysaor (VMWare Appliances page here, author's page here). Obviously you'll need to get VMWare Player as well if you don't already have it (here).

Next, unzip/tar the VMWare images till you get a directory containing just the VM files.

Then, fire up VMPlayer and start your shiny new Ubuntu 9.04. (if you have used the one I linked to above, the default log-in is user and password chrysaor.info. Tip: As soon as you've logged in, create yourself a new Administrator account with user and password details you will remember! (System / Administration / Users and Groups).

While it's fresh, it's worth doing an update: Ensure you've got networking (VMWare Player menu / Devices / Network Adapter / Connect), then run the Update Manager (System Administration / Update Manager).

Now for Freeswitch....

But first, some dependancies need to be closed. The Freeswitch wiki (at http://wiki.freeswitch.org/wiki/Installation_Guide) lists a number of pre-requisites (http://wiki.freeswitch.org/wiki/Installation_Guide#Unix-like_systems) but doesn't give versions or explicit package names for Ubutu 9.04. Based on the Debian package list I added the following packages via apt-get:

$ sudo apt-get install build-essential subversion subversion-tools automake gcc autoconf make wget g++ libncurses5 libncurses5-dev libdb-dev

The last dependancy is for an old version of libtool. By default, libtool 2.x is install for Ubuntu but for some reason an older (pre 2.0) version is required for Freeswitch to build (I found a comment that it was being looked at, but that comment was a year old...). Again, the Freeswitch Wiki gives some help, this time for Ubuntu 8.10 users (http://wiki.freeswitch.org/wiki/Installation_Guide#Ubuntu_Intrepid_8.10) which I found worked also for Ubuntu 9.04:

copy http://launchpadlibrarian.net/14599325/libtool_1.5.26-4_i386.deb
the run $ dpkg -i libtool_1.5.26-4_i386.deb

Note, Ubuntu will now prompt you to upgrade libtool back to it's original, newer, version, which would undo this, so ignore -- though I'd imagine this may cause other issues for building software that's dependent on the new version...

So, with all the dependancies in place, time to get the source from SVN
$ mkdir ~/freeswitch_src_root
$ cd ~/freeswitch_src_root
$ svn checkout http://svn.freeswitch.org/svn/freeswitch/trunk freeswitch
$ cd freeswitch
$ ./bootstrap

This is the first moment of truth as it will tell you if you're missing any other dependancies! Providing it completes ok, continue to configure

$ ./configure

Again, providing no further dependancy hell,....

$ make
$ sudo make install
The sudo of course needed because you did run the rest till now as an unprivileged user didn't you....?!

Setup the init scripts
Again, based on the Debian example at http://wiki.freeswitch.org/wiki/Freeswitch_init, create a Freeswitch user and an init script to start freeswitch.

http://wiki.freeswitch.org/wiki/Freeswitch_init