This page describes the installation of FreeSWITCH™ using the macOS FreeSWITCH™ Installer (macFI) that automates installation steps. It is part of the macOS Installation guide for installing FreeSWITCH™.
What does the macOS FreeSWITCH™ Installer (macFI) do?
The macFI installs FreeSWITCH™ 1.6 production or FreeSWITCH™ master/development from source on macOS 10.12, OS X 10.11 El Capitan, 10.10 Yosemite and 10.9 Mavericks systems. Support for older systems are dropped as instructions for those systems are archived.
Why Use the macOS FreeSWITCH™ Installer?
There are lot's of advantages to using the macFI as seen below. The primary ones are:
- It eliminates the need to use Terminal commands and guides people through the whole process.
- It determines if steps were previously accomplished and performs only what's needed.
- It creates a folder of log files so it's easy to check for problems.
- It saves a lot of time during initial installation, updates and testing. In fact, this wiki takes a lot of testing to update, I developed this so I could click a couple of times then walk away!
What Steps are Performed?
The installer performs identical steps as described in Manual Installation. You can review the manual instructions before using the macFI to view most of the commands the macFI will execute.
Here is the sequence of functions performed:
- Determines if it can run on the macOS release.
- Asks what function is desired, install, test or remove.
- For installation, what version to download.
- Checks for presence of Xcode and Xcode beta.
- Checks for presence of Command Line Utilities.
- Checks if hidden files are visible.
- Checks if the required directories exists.
- Checks if the install directory has the correct ownership.
- Checks for presence of Homebrew.
- Checks for presence of prerequisites supplied by Homebrew.
- Checks for presence of previous FreeSWITCH™ source and runtime libraries.
- Produces a list of actions to take and requests verification to proceed.
- If required, launches web pages to install Xcode.
- If required, launches functions to install Command Line Utilities.
- If required, makes hidden files visible.
- If required, creates directories exists.
- If required, changes the ownership of the install directory.
- If required, downloads and installs Homebrew.
- If required, updates prerequisites supplied by Homebrew.
- If required, downloads and installs prerequisites supplied by Homebrew.
- If required, renames previous FreeSWITCH™ source and runtime libraries to prevent changes.
- Performs git clone of FreeSWITCH™.
- Performs bootstrap and configure.
- Adds FLITE to modules.conf.
- Performs make, make install, make install sounds, and make clean.
- Prompts for testing selection.
- If testing, opens web pages to FreeSWITCH™ information and displays IP address and port for phone configuration.
- If testing, launches FreeSWITCH™ to test.
Still not convinced to use the macFI? Here is a bonus: Output from most terminal commands are separated and placed into a folder created on the desktop using a date and time stamp. Each of the following commands are logged:
- Install or update Homebrew
- Install and/or update prerequisites
- Download and install FreeSWITCH™ source
- bootstrap command
- configure command
- make command
- make install command
- make install sounds command
Installing the macOS FreeSWITCH™ Installer
It's incredibly easy to install, just follow this single step:
- Click on this link: macOS FreeSWITCH™ Installer, macOS will automatically download and unzip the file.
January 4, 2017 Added speexdsp prerequisite.
September 15, 2016 Renamed, change path for new Homebrew, use active Xcode version, 10.11 get Xcode 7 from dev site. Sep 16/17 Update Xcode URLs.
July 17, 2016 Add testing only option, 10.10 get Xcode 7 from dev site, use Xcode beta if found, allow bypass of open test calls wiki. Minor fixes.
February 26, 2016 Remove libvpx libyuv, replace nasm with yasm, change remove brew cache command.
November 26, 2015 Replace non-homebrew packages with homebrew since they are now available.
October 22, 2015 List names of prereqs. Other minor fixes.
October 16, 2015 Add FreeSWITCH™1.6, remove 1.4, update prerequisites add installation of non-homebrew packages.
October 3, 2015 Add change ownership logic for /usr/local, change 10.9 Xcode 6 download, remove 10.8 and Xcode 5 support.
November 5, 2014 Add Xcode 6.1 and Yosemite support. November 22, 2014 change URLs.
Running the macOS FreeSWITCH™ Installer
Make sure to review the one-time Preparation steps first!
One-Time Security Setting
Due to macOS's tight security, there is a one-time security setting required because the macFI automates one keystroke (command-K in Terminal). The first time macFI is run macOS will state that it cannot run the app due to security restrictions. You must open System Preferences –> Security & Privacy and under General set to allow macOS to run macFI. The macFI can then be run anytime.
Double-click the installer to start it. Just follow the prompts and answer a few questions!
You should not perform other functions while the installer is running, although the macFI will run correctly, the Terminal window may not display as intended.
You can rerun the installer anytime, even it it was stopped or failed. It will determine what is already installed.
Where to go Next
Instructions for starting and stopping FreeSWITCH™ are at macOS Testing and Diagnostics.