Lyle Johnson edited this page Jan 27, 2017 · 17 revisions

The Polysync Transcoder is developed and tested specifically on the Ubuntu 16.04 distribution. It can work on most POSIX-compliant systems where the following dependencies can be satisfied.


CMake is used by polysync-transcode, the others are needed to build and install Mettle.

sudo apt-get install --yes cmake patchelf python-setuptools


Boost dependencies include both Hana and DLL; both of which appeared first in Boost-1.61.

Hana requires an up to date C++14 compiler, which include Clang >= 3.5.0 and GCC >=6.0.0.

GCC and Clang are both new enough on 16.10 by default. On 16.04, the default version of gcc (5.4) is too old to compile Hana, but the default Clang (3.8) works fine.

Using clang on either 16.10 or 16.04:

sudo apt-get install --yes clang


Ubuntu 16.10:

Both Hana and DLL are in the default boost package.

sudo apt-get install libboost-dev

Ubuntu 16.04:

The default version of boost on 16.04 is too old, so a newer version must be installed. Here, we show how this may be done from source. Because the transcoder uses dynamically loaded plugins, boost must be dynamically linked, so if you get fancier with the build here do not also disable the dynamic libraries.

The steps below were taken from the guide

tar xvzf boost_1_63_0.tar.gz
cd boost_1_63_0
./ --with-toolset=clang
./b2 -j2 cxxflags="-std=c++11"
... wait ...
sudo ./b2 install
... wait some more...

Boost should appear in /usr/local/, waiting to be found by CMake's FindBoost feature.


If you want to compile and run the unit tests, you must install the Mettle unit test framework.

Mettle also has strict requirements on C++14 compliance, but they are weaker than Hana so the clang >= 3.5 or gcc >= 6.0 installed prior to Boost is already sufficient. Mettle has it's own dependencies, which we also show.

sudo easy_install bfg9000
git clone
cd mettle/
9k build
cd build
sudo make install

Now /usr/local/bin/mettle should appear along with /usr/local/include/mettle.

Build polysync-transcode

git clone
mkdir polysync-transcoder/build
cd polysync-transcoder/build
CXX=clang++ cmake -DCMAKE_INSTALL_PREFIX=/usr/local ..
make -j4
sudo make install
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.