Skip to content

GPAC Build Guide for OSX

jeanlf edited this page Oct 18, 2022 · 6 revisions
Clone this wiki locally

Since the OSX build is essentially the same as the Linux build, this doc will be succinct. Please refer to the Linux build guide for further details.

MP4Box only

Same as Linux:

git clone https://github.com/gpac/gpac.git gpac_public
cd gpac_public
./configure --static-bin
make
sudo make install

Full build

Set up

  1. Install Homebrew

  2. Install tools

$ brew install cmake scons coreutils gettext yasm git wget pkg-config
  1. Install dependencies
$ brew install freetype jpeg libpng openjpeg mad faad2 libogg libvorbis theora a52dec ffmpeg x264 aom xvid openssl@1.1 sdl2

For older MacOS versions: if Homebrew is unavailable, the same can be achieved with MacPorts with the following packages

# install build tools
port install cmake scons coreutils gettext yasm git wget pkgconfig

# install dependencies 
port install freetype jpeg libpng openjpeg libmad faad2 libogg libvorbis libtheora a52dec ffmpeg x264 aom xvid openssl libsdl2

Note: you can remove packages from this list if you don't need a particular feature, the configure script should pick-up what's available on your system and build accordingly.

Get code

git clone https://github.com/gpac/gpac.git gpac_public

git clone https://github.com/gpac/deps_unix
cd deps_unix
git submodule update --init --recursive --force --checkout

Build dependencies

deps_unix$ ./build_all.sh osx

If all went well, you should see something like this in the main repository:

mojave:deps_unix adavid$ ll ../gpac_public/extra_lib/lib/gcc/
total 42784
-rw-r--r--  1 adavid  staff   2.9M Apr  2 14:43 libNeptune.a
-rw-r--r--  1 adavid  staff   890K Apr  2 15:47 libOpenSVCDec.a
-rw-r--r--  1 adavid  staff   4.1M Apr  2 14:43 libPlatinum.a
-rw-r--r--  1 adavid  staff   383K Apr  2 14:43 libPltMediaConnect.a
-rw-r--r--  1 adavid  staff   530K Apr  2 14:43 libPltMediaRenderer.a
-rw-r--r--  1 adavid  staff   1.5M Apr  2 14:43 libPltMediaServer.a
-rw-r--r--  1 adavid  staff   192K Apr  2 14:43 libZlib.a
-rw-r--r--  1 adavid  staff   259K Apr  2 14:43 libaxTLS.a
-rw-r--r--  1 adavid  staff   3.3M Apr  2 15:15 libjs.a
-rw-r--r--  1 adavid  staff   4.3M Apr  2 15:50 libopenhevc.a
-rw-r--r--  1 adavid  staff   166K Apr  2 15:50 libopenjpeg.a

Build gpac

cd ../gpac_public
./configure --extra-cflags=-Wno-deprecated
make
sudo make install

Packaging

To make an installable package, use make dmg.