Call Us Today! 877.742.2583

Page tree

Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.


This page describes the automated installation of FreeSWITCH™ using using the macOS FreeSWITCH™ Installer (macFI) that automates installation steps. It is . It is part of the macOS Installation guide for installing FreeSWITCH™the FreeSWITCH™ macOS documentation.

Table of Contents



Can 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.

  • Install FreeSWITCH™ from the latest public release or master/development source on macOS 10.15 Catalina, 10.14 Mojave, and 10.13 High Sierra.
  • 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?


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.


  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 Xcode and Xcode beta.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, launches web pages to install Xcode.
  14. If required, launches functions to install Command Line Utilities.
  15. If required, makes hidden files visible.
  16. If required, creates directories exists.
  17. If required, changes the ownership of the install directory.
  18. If required, downloads and installs Homebrew.
  19. If required, updates prerequisites supplied by Homebrew.
  20. If required, downloads and installs prerequisites supplied by Homebrew.
  21. If required, renames previous FreeSWITCH™ source and runtime libraries to prevent changes.
  22. Performs git clone of FreeSWITCH™.
  23. Performs bootstrap and configure.
  24. Adds FLITE to modules.conf.
  25. Performs make, make install, make install sounds, and make clean.
  26. Prompts for testing selection.
  27. If testing, opens web pages to FreeSWITCH™ information and displays IP address and port for phone configuration.
  28. If testing, launches FreeSWITCH™ to test.


  • 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


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


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



Running the macOS FreeSWITCH™ Installer

titleOne-Time macOS 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 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 macOS macFI to run macFI. The macFI can then be run anytime.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

January 4, 2017  Added speexdsp prerequisite.

September August 7, 2020           Add Sofia and Spandsp prerequisites. Allow Big Sur runs. 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. 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
                                   allow bypass of open test calls wiki. Minor fixes.
February 26, 2016    Remove   Remove libvpx libyuv, replace nasm with yasm, change remove brew cache command.
November 26, 2015  Replace   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