Jump to content

MIOS Studio build on RPi 2 B+ Raspbian Jessie


yogi

Recommended Posts

So just got MIOS Studio to build on RPi2 B+ with latest Raspbian Jessie 

Found Borfo's thread;

and this on the JUCE forum:

https://forum.juce.com/t/juce-on-the-raspberry-pi-opengl/9921

Following these for the most part, I installed:

	sudo apt-get -y install libfreetype6-dev
	sudo apt-get -y install libx11-dev
	sudo apt-get -y install libxinerama-dev
	sudo apt-get -y install libxcursor-dev
	sudo apt-get -y install mesa-common-dev
	sudo apt-get -y install libasound2-dev
	sudo apt-get -y install freeglut3-dev
	sudo apt-get -y install libxcomposite-dev
	sudo apt-get -y install libjack-jackd2-dev  

The libjack-dev that was originally listed will not install under Jessie, so found libjack-jackd2-dev which includes the first.

Then installed Gcc 4.7

	sudo apt-get install gcc-4.7 g++-4.7

I ended up with both the /juce folder (from the SVN Repo) and the /mios_studio source folder in the /home/pi/tools folder. I had tried with /mios_studio and /tools in /home/pi and with /tools in the /home/pi/mios_studio folder; it might work fine with the /juce and the /mios_studio folders in /home/pi but I got this working so...

At this point 'plan A' was to download  JUCE and use Projucer to edit the mios_studio project but could not run it on both an XP and Win8 machine. So 'plan B' it is.

Using the notes from the JUCE fourm above, 

Edited the Makefile in two places

First here:

	ifndef CONFIG
		CONFIG=Release
	endif

And then changed TARGET_ARCH here:

	ifeq ($(TARGET_ARCH),)
	# TK: leads to segfault if the processor is older than the one the program was compiled with
	# I got this info from forum user Musical
	TARGET_ARCH := -march=armv6
	endif

Then in /mios_studio/JuceLibraryCode/modules/juce_gui_basics/ juce_gui_basics.h I added this #define:

	// This is an auto-generated file to redirect any included
	// module headers to the correct external folder.

	#include "../../../../juce/modules/juce_gui_basics/juce_gui_basics.h"

	#define JUCE_USE_XINERAMA 0

And last, in /mios_studio/JuceLibraryCode/AppConfig.h I added the last two #defines.

	//==============================================================================
	#define JUCE_MODULE_AVAILABLE_juce_audio_basics          1
	#define JUCE_MODULE_AVAILABLE_juce_audio_devices         1
	#define JUCE_MODULE_AVAILABLE_juce_audio_formats         1
	#define JUCE_MODULE_AVAILABLE_juce_audio_processors      1
	#define JUCE_MODULE_AVAILABLE_juce_audio_utils           1
	#define JUCE_MODULE_AVAILABLE_juce_core                  1
	#define JUCE_MODULE_AVAILABLE_juce_data_structures       1
	#define JUCE_MODULE_AVAILABLE_juce_events                1
	#define JUCE_MODULE_AVAILABLE_juce_graphics              1
	#define JUCE_MODULE_AVAILABLE_juce_gui_basics            1
	#define JUCE_MODULE_AVAILABLE_juce_gui_extra             1
	#define JUCE_USE_XSHM 0
	#define JUCE_USE_XINERAMA 0

	//==============================================================================

Finally, with these changes in place cd into ~/mios_studio/Builds/Linux and run make

The build took ~20mins (forgot to enable mulit cores). It threw this Warning on a lot of  the packages.

"warning: ‘void juce::ResizableWindow::setContentComponent(juce
::Component*, bool, bool)’ is deprecated (declared at ...."

Finished and launches fine, but the window isn't resizable :)) The Studio detects all my midi interfaces and sends note messages fine. I haven't tested much else, just opened the other tools and they seem fine so far. Added a shortcut to the desktop and cracked a beer!

Yogi

Link to comment
Share on other sites

Just now, Psykhaze said:

Great compilation work,enjoy your beer :)
Bests,
Jerome

Thanks. Actually, I was a little wrong above- the window IS resizable. I was trying to 'pull' the frame (bad MSWin habit). But there is a resize handle in the lower right corner. Works but a bit laggy but does work.

Yogi

Link to comment
Share on other sites

  • 6 months later...

So after many months and a little testing I ran into a problem with the build, hex upload doesn't work right. But it seems to be a general Linux issue. The issue is already reported in this thread,

And a work around

Midi In/Out and File browser works fine; haven't tested any other tools.  Still to test the Hex upload work around so time will tell.

Yogi

EDIT: Tested upload with work around, direct entry of file path works fine. Yea!

 

Edited by yogi
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...