Call Us Today! 877.742.2583

Page tree
Skip to end of metadata
Go to start of metadata


This page describes automated installation using the macOS FreeSWITCH™ Installer (macFI). It is part of the FreeSWITCH™ macOS documentation.

What Can the macOS FreeSWITCH™ Installer (macFI) do?

  • Install FreeSWITCH™ from the latest public release or master/development source on macOS 11 Big Sur, 10.15 Catalina, and 10.14 Mojave.
  • Start FreeSWITCH™ for testing.
  • Update prerequisites and FreeSWITCH™.
  • Remove parts or all of the installation.
  • Show and hide macOS invisible files.
  • Open wiki pages,

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 InstallationYou 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:

  1. Determines if it can run on the macOS release.
  2. Locates and determines the latest public version of FreeSWITCH™ source.
  3. Asks what function is desired, install, test or remove.
  4. For installation, what version to download.
  5. Checks for presence of Command Line Utilities.
  6. Checks if hidden files are visible.
  7. Checks if the required directories exists.
  8. Checks if the install directory has the correct ownership.
  9. Checks for presence of Homebrew.
  10. Checks for presence of prerequisites supplied by Homebrew.
  11. Checks for presence of previous FreeSWITCH™ source and runtime libraries.
  12. Produces a list of actions to take and requests verification to proceed.
  13. If required, makes hidden files visible.
  14. If required, creates directories exists.
  15. If required, changes the ownership of the install directory.
  16. If required, downloads and installs Homebrew.
  17. If required, updates prerequisites supplied by Homebrew.
  18. If required, downloads and installs prerequisites supplied by Homebrew.
  19. If required, renames previous FreeSWITCH™ source and runtime libraries to prevent changes.
  20. Performs git clone of FreeSWITCH™.
  21. Performs bootstrap and configure.
  22. Adds FLITE to modules.conf.
  23. Performs make, make install, make install sounds, and make clean.
  24. Prompts for testing selection.
  25. If testing, opens web pages to FreeSWITCH™ information and displays IP address and port for phone configuration.
  26. 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
  • make clean


All of the software this procedure installs can be removed easily. However, to restore to a point where nothing was changed a backup is required.

Set Terminal Application Screen Size

macFI uses the macOS Terminal application extensively during installation. The default screen size is very small so it's recommended to increase it for readability by:

  1. Start the Terminal application in the Applications -> Utilities folder by double-clicking on it. Then open its preferences panel.
  2. In Settings–>Profiles–>Window change the Window Size to larger values such as 140x48 to reduce having to resize the window often.

If you plan to start FreeSWITCH™ from the Terminal command line often then you should place the Terminal application into the Dock for quick access.

Download and Install the macOS FreeSWITCH™ Installer

It's incredibly easy to install, just follow this single step:

  1. Click on this link: macOS FreeSWITCH™ Installer, macOS will automatically download and unzip the file.

Running the macOS FreeSWITCH™ Installer

One-Time macOS Security Setting

The first time macFI is launched, macOS security settings must be added. After the first attempt to run, go to System Preferences Security and General settings, click allow macFI to run. Restart macFI, additional System Preferences Security and Privacy settings are required as follows:

On macOS 10.14 Mojave and later: Under "Privacy" click Accessibility and set the MacFI on. Additional one-time authorization prompts are required.

Prior to Mohave: Open System Preferences –> Security & Privacy and under General set to allow macFI to run after the first time it's launched.

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.

Double-click the installer to start it. Just follow the prompts and answer a few questions!

Where to go Next

 Instructions for starting and stopping FreeSWITCH™ are at macOS Testing and Diagnostics.

macFI Change History

August 7, 2020           Add Sofia and Spandsp prerequisites. Big Sur support. Other minor changes.
June 20, 2020            Homebrew install command changed. Replaced ruby install homebrew with bash install.
March 20, 2020          Add CFLAGS="-Wno-unused-function" temporarily. See Issue #176 and #518.

October 5, 2019         Change master and branch download location from to GitHub.
August 20, 2019         Change "stable" and transcoding messages, remove -s from curl file download.
August 6, 2019           Replace download sed command with grep, handle file name change for FS 1.10.
July 27, 2019              Add ffmpeg and yasm prerequisite for video. Add option to exclude video transcoding and recording.
July 22, 2019             Add libpq prerequisite.
February 26, 2019     Add installation timers. Change download from .gz to .bz2. Minor message changes.
December 27, 2018    Add new libks and signalwire-c prerequisites. Change flite formula name.
September 30, 2018  Replace Terminal clear screen logic due to Mohave security. Update minimum macOS release support.
December 10, 2017    Remove Xcode, homebrew now installs Command Line Tools. Change remove Xcode option to remove CLT
July 13, 2017              Major update: Updates not required for FS release changes, auto find latest public release,
                                    place VRM in messages, add stable branch download, add unsupported message.
June 24, 2017            Change /usr/local logic for 10.13 and compatibility, add show/hide invisible files, redo intro dialogs and wiki options,
                                    add update function
March 24, 2017          Added libtiff prerequisite for spandsp.
January 4, 2017         Added speexdsp prerequisite.
September 17, 2016  Update Xcode URLs
September 15, 2016  Renamed, change path for new Homebrew, use active Xcode version, 10.11 get Xcode 7 from dev site. 
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.
April 5, 2014               First released to the Wiki