Centos 7: Can't launch Projucer

Hi,

as this is my first post, I want to start with a few words about me: I’m a master degree student in electrical engineering with a focus on audio signal processing. I’ve been a Mac user for long time and came across Juce when I was looking for a framework to get familiar with realtime audio processing. On my Mac, creating an Xcode based Juce Project with projucer works great. Now I want to use Juce on a university computer, running Centos 7. I have root rights on that machine, but I’m fixed to Centos 7 at the moment.

So I downloaded Juce for Linux, unpacked it and tried to run it. Unfortunately, it won’t open, instead I get:

Projucer: xcb_out.c:414: _xcb_out_flush_to: Assertion `((int64_t) ((request) - (c->out.request)) <= 0)' failed. Aborted (core dumped)

Is that a dependency problem? I found some hints referring to Ubuntu, but few referring to Centos 7. I would appreciate any hint on how to get Projucer running on that system!

Thank you in advance!

You should try compiling the Projucer yourself on Centos.

If change directory to extras/Projucer/Builds/LinuxMakefile/ and do

make

then you’ll start the build. It’s pretty likely that you will need to install some dependencies, so give this thread a look:

1 Like

What a great idea :smiley:

Compiling it myself pointed me to every missing dependency. I had to install the following ones:

yum install libX11-devel
yum install libXext-devel
yum install libXinerama-devel
yum install libXrandr-devel
yum install libXcursor-devel
yum install libcurl-devel
yum install freetype-devel

The compiled version now starts without problems. Now how should I handle this version? At the moment it is located in the extras/Projucer/Builds/LinuxMakefile/build folder. Should I move it to the top JUCE folder where the crashing version is located and replace the old Version with the new one or should I just leave it in that folder?

You can place the compiled executable wherever you want. When you create projects with the Projucer it doesn’t matter where the Projucer was launched from. I would just delete the old one and use the new one instead.

Now that things are working I would also suggest doing

CONFIG=Release make

which will compile the release version of the Projucer, which will run much faster.

Okay, answered the question of where to place the new built version by just trying to replace the old version with the new one. It was successful.

Now another question remains:
On OS X I’m used to have the button “Save Project and Open in IDE” and then Xcode pops up with the project. Am I right that there is no such thing with Code::Blocks on Linux (which is installed on my machine) as there are no such Buttons in my Linux Projucer Window? Or do I need to configure a link to the IDE somewhere?

If you’re going to be using Code::Blocks I would recommend that you clone JUCE from Github, https://github.com/julianstorer/JUCE, and use the “develop” branch (rather than “master”). We’ve recently made a few fixes to the Code::Blocks exporter which are only available here.

You’re correct that there is no way to automatically launch Code::Blocks - there are just too many different variants on Linux to get this to work reliably in all cases. However, if you have Code::Blocks open and you resave your project in the Projucer then Code::Blocks will prompt you to reload and you’ll see your changes.