OSX build probs

Official support for: distrho.sourceforge.net
danboid
KVRist
321 posts since 14 Nov, 2011

Post Fri May 25, 2012 3:21 pm

I had an initial attempt at getting DISTRHO (LV2s at least) to compile under OSX tonight but it never got that far as (your patched version of) JUCE fails to compile. I'm trying to build it under 10.5.6 i686 using premake 3.7 and xcode 3.1.4 which includes these two versions of GCC:

i686-apple-darwin9-gcc-4.0.1 (GCC) 4.0.1 (Apple Inc. build 5493)

i686-apple-darwin9-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5577)

Both versions of GCC get to the same point before the build fails:

==== Building juce-graphics ====
juce_graphics.cpp
../source/modules/juce_graphics/native/juce_mac_Fonts.mm: In constructor 'juce::CoreTextTypeLayout::Advances::Advances(const __CTRun*, CFIndex)':
../source/modules/juce_graphics/native/juce_mac_Fonts.mm:97: error: 'CTRunGetAdvancesPtr' was not declared in this scope
../source/modules/juce_graphics/native/juce_mac_Fonts.mm:102: error: 'CTRunGetAdvances' was not declared in this scope
../source/modules/juce_graphics/native/juce_mac_Fonts.mm: In static member function 'static juce::StringArray juce::Font::findAllTypefaceNames()':
../source/modules/juce_graphics/native/juce_mac_Fonts.mm:565: error: 'CTFontManagerCopyAvailableFontFamilyNames' was not declared in this scope
make[3]: *** [intermediate/Release/juce_graphics.o] Error 1
make[2]: *** [juce-graphics] Error 2
make[1]: *** [graphics] Error 2
make: *** [lv2] Error 2

Any ideas?

xcode 3.1.4 and those GCC versions are the very latest (official) versions for this version of OSX (10.5.x)

danboid
KVRist
321 posts since 14 Nov, 2011

Post Sat May 26, 2012 1:23 am

I spoke to Paul Davis about OSX compilers last night and he tells me the Apple GCC builds are heavily modified and there aren't really any other options so if you can't get distrho to compile under (Apple) GCC 4.2 I'd prob have to forget about running distrho under Leopard. Of course you can get new versions of xcode/gcc for snow leopard and lion but I've not had any success installing SL (10.6) on my machines yet and Lion sounds like a dud to me going off other peoples/devs reports.

The new beta of Ardour 3 was recently released which means OSX now has a powerful LV2 host thats compliant with the stable spec. I know you can get many of the distrho ports such as noisemaker and Highlife as either VST or AU plugins under OSX and I could use the AU plugin versions (if not the VSTs yet) under Ardour OSX but any such sessions are then restricted to being used under OSX only. I want to compile these ports as LV2 under OSX so that I can create portable Ardour 3 sessions that will run under any platform Ardour supports because my band is still running under OSX but I run Linux at home (and in work).

Having DISTRHO available as LV2 plugins for the Mac will also be very helpful once OpenOctave gets ported to OSX.

falkTX
KVRist
103 posts since 19 Sep, 2007 from Viseu, Portugal

Post Sat May 26, 2012 12:15 pm

Compiling DISTRHO on OSX (with GCC) is possible, I've done it before and will do it again later.
I'll release the DISTRHO Mini-Series for OSX in due time, but for now I need to focus on Linux.

and *please* consult the distrho-ports upstream authors before trying to compile binaries.
TAL Noisemaker IS available for OSX, both AU and VST versions, here - http://kunz.corrupt.ch/products/tal-noisemaker

I said it before and will say it again - I won't release any pre-built win32/osx binaries of "ports". "ports" here mean Linux Ports, the original plugins already have osx support so please use the official versions.

danboid
KVRist
321 posts since 14 Nov, 2011

Post Sat May 26, 2012 1:20 pm

Hi FalkTX!

Can you remember what version of OSX and xcode you got distrho to compile with?

I said in my OP I'm aware that most plugins support at least VST if not VST and AU. Neither of these formats are much use to anyone hoping to go both open source and cross platform, at least not if they're looking at using Ardour.

Although A3 Linux supports VST, Paul has decided not to support VST at all in the OSX version. On top of this, Mixbus 2 for Linux also lacks VST support as does the official builds of A2 so VST is not a good choice for cross-platform use of Ardour right now, likely it never will be. AU will never be a cross platform option as I understand it so that leads us with LV2 as the only choice of plugin format for creating portable, MIDI instrument plugin using Ardour 3 sessions.

I would love it if there were official ports to LV2 of Noisemaker and HL but thats not happening as Noisemakers author has never used Linux and DiscoDSP have stated they no longer support HighLife open source so they are very unlikely to take over maintenance of your build fixes and LV2 port.

My build error here is actually with a version of JUCE you say you've custom patched so you were my first port of call before the JUCE devs, who I'm sure would've sent me back to you! :)

I'll be happy to let you SSH into my Leopard install if that would help resolve this?

falkTX
KVRist
103 posts since 19 Sep, 2007 from Viseu, Portugal

Post Sat May 26, 2012 1:36 pm

well, I won't support macos builds at all.
I will build the plugins myself in my own confined system, and nothing besides that. The main target platform is Linux.


I'm not sure what is your problem with VSTs, but I believe that is certainly the best choice for cross-platform plugins right now. LV2 still has a long way to go before being accepted into Windows and Mac as a serious standard.

afaik, the new Mixbus (as in latest release) does have VST support in his Windows version.
From their website:
Industry standard plugin support: Mixbus loads VST plugins on Windows, AudioUnit plugins on OSX, and LV2 plugins on Linux.

When the main juce dev accepts my juce-lv2 wrapper, we might beginning to see some Windows LV2 plugins (not from distrho). Pianoteq might be the first.

Return to “DISTRHO”