Skip to content
Porting WeAreROLI/JUCE to FreeBSD
C++ C Objective-C++ Makefile
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
3rd_party
console_app Use juce code in console_app example Sep 14, 2019
gui_app Add gui_app example Sep 15, 2019
patches
.gitignore
.gitmodules
README.md

README.md

JUCE FreeBSD Port

Tests projects for my fork/port of JUCE to FreeBSD.

What's working?

The following has been succesfully compiled on FreeBSD:

  • juce_audio_basics
  • juce_audio_formats
  • juce_core
  • juce_data_structures
  • juce_dsp
  • juce_events

What's not working?

  • DBG() macro

    • Using this macro in a debug build crashes the build.
  • juce_core

    • sys/timeb.h deprecated since FreeBSD 11.1
    • Process::openDocument (linux environ is missing on FreeBSD)
    • MACAddress::findAllAddresses
    • SystemStats::getMemorySizeInMegabytes
    • String SystemStats::getUserLanguage (Missing: _NL_IDENTIFICATION_LANGUAGE)
    • String SystemStats::getUserRegion (Missing: _NL_IDENTIFICATION_TERRITORY)

Clone

Clone this repository recursively, so you get the forked version of JUCE.

git clone --recursive https://github.com/tobanteAudio/juce-freebsd-example.git

Dependencies

  • FreeBSD 12
  • C++17 compiler
    • clang 6.0.1 & 8.0 tested
sudo pkg install freetype2 alsa-lib pkgconf gtk3

Build

Each example project can be build using make. Native BSD make, not GNU make. See here for basic differences:

cd $PROJECT_ROOT/console_app
# or
cd $PROJECT_ROOT/gui_app

make -j4
make clean

Development

You can’t perform that action at this time.