Building Blocks application on embedded device


Hello there,
trying to build my BlocksDrawing on a BeagleBone Black running headless. I have to include the juce_graphics module, which provides, e.g.: Colours and also juce_gui_basics was needed in order for the project to link appropriately. Among the dependencies of these modules there are xinerama, freetype2 , libxrandr, xcursor, which are not necessary to run the application and are in general useless on an embedded, headless system. It would be helpful to have these dependencies removed for console applications which want to use Blocks on an embedded device.


No… you don’t need to include any of those modules!

We used some other juce stuff in the example code to make things readable, but the actual blocks module itself only requires juce_events and juce_audio_devices.


Currently, juce_events still has a dependency on libx11 which we really need to remove when we find some time.


Can I come back on that topic to remove the dependency of juce_events on libX11 (in a general context, non blocks related)?
We try to build our backend for an offline task on a docker container, and it would be really nice, if we didn’t have to install X11 on the server…

Or is that already resolved, maybe?


…just realising, that juce_audio_utils depends on juce_gui_extra, so it is not possible anyway…
These module dependencies are probably a long term goal for the next major release…

Thanks anyway for the attention… :wink:


Yes, juce_events no longer depends on an X11 server. But sure juce_gui_extra obviously depends on juce_gui_basics which will always depend on X11. What part of juce_audio_utils are you using? Maybe we can move it to another module?


Oh thanks, that’s music to my ears, but I think it is a bigger task anyway:

IMHO there should be a new juce_audio_gui module, so that the gui requirement could be removed from these:

juce_audio_utils -> the gui folder would go there
juce_audio_devices -> the AudioDeviceManagerComponent would go there
juce_audio_processors -> the hardest part, the AudioProcessors, that don’t implement an AudioProcessorEditor, could also work without the gui modules…

But the last one will probably lead to a lot of additional preprocessor code, that depends on if the gui modules are included in the project or not…

We just added the X11 on our server, it is just an in-house process anyway…