Introjucer menu buttons seem to not work - Projucer segmentation fault


#1

I'm using Arch Linux. 

I downloaded the source from github and compiled the introjucer, it runs fine, it can carete a project, but when I try to add files E.g "Add new CPP and Header File.." it does nothing, it shows the pop to write a name but nothing more, same goes for all other options. Some don't even show the pop up. I ran it from cl  didn't see any messages to help get why this happens. 

 

Then I downloaded the source from this site, .zip I tried to run Projucer, there were some so files missing, I installed them and then I got segmentation fault. 

 

This kinda sucks so I would really appreciate it if I could get a solution fast, I decided to get seriously into JUCE but all the hasle at startup is not helping much. Thank you in advance. 


#2

I think it's failing to show the file chooser dialog box. JUCE uses a command line app called 'zenity' for this. So you need to have this installed. Try, for example, 'zenity --file-selection'. If this works then JUCE should also work.

Let me know if this works for you.


#3

I installed zenity

zenity --file-selection 

works but when I try to add a file with Introjucer it freezes now. That wasn't the case before.

It would just not do anything. Also selecting files wasn't the problem, adding new files was.

Adding new hearder file, cpp file, split class e.t.c e.t.c. 

Maybe I should mention that I'm using a tile window manager (Tried with i3 and awesome) 

 but I had Introjucer working fine a while back when I first tried it. 


#4

Ahh yes. The Introjucer doesn't work on a tiling window manager (although twm seems to be ok). Sorry!


#5

And do you happen to know why it doesn't work? Is it something that I could fix? Or is it like some features of JUCE in general d not work  on tiling window managers?

 


#6

Sorry. I haven't really looked into this. Some people on the forum have suggested some patches which you may want to try. Unfortunately, the patches make the popup windows appear behind the main window on standard Ubuntu.


#7

The thing is that I installed ubuntu yesterday and it worked just fine there...

Also in arch linux it's not the tiled window manager that is the problem, I installed KDE just now and I get the same behavior

introjucer menu buttons don't work and if zenity is installed it freezes completely.

 


#8

Juce can work in arch linx (duh) and juce does work with tiling window managers... just forget about the native dialogs, I don't know why a developer would mind using juce's File chooser in Introjucer or in general. Better than not being able to use Introjucer at all.

 

I tried to debug it but it's not like I'm an expert... I couldn't find why when trying to use zenity it halts.

 

So, go to the source directory of Introjucer:

Do

grep -r FileChooser .

See in which files it exists and then edit each file to use Juce's file chooser.

FileChooser (const String &dialogBoxTitle, const File &initialFileOrDirectory=File::nonexistent, const String &filePatternsAllowed=String::empty, bool useOSNativeDialogBox=true)

Just make sure to add any missing parameters until you can add "false" to the last parameter.

 

Cheers.

 

I got it working in i3 and awesome.

 

 


#9

I remember a juce crash when starting a process for a unexisting binary/script.

I believe it is caused by a 'exit(-1)' instead of '_exit(-1)'.
The first 'exit' causes the full application to quit, while '_exit()' only does it for the forked proccess.

I never got to test that theory.

@Chris do you mind testing this patch?
https://raw.githubusercontent.com/DISTRHO/DISTRHO-Ports/master/libs/juce/patches/use-vfork%2Bconsistency.patch

It has a few extra things, but the new stuff is not enabled unless you set the new macro.

@Fabian: does that patch look ok to you?
If you want to know why to use vfork read this: https://github.com/Ardour/ardour/blob/master/libs/vfork/README


#10

Zenity is installed on my system, and while debuggin I made sure to collect the command that Juce generates, I had to do some tweaking there too actually to get a working command, but even tho I could run the generated command in my terminal (meaning that the exe is there) it wouldn't run through juce and juce freeze Introjucer.

 

Also the application doesn't just exit, it halts there and sometimes I have to pkill python2.7 and introjucer to fully close it.

If you still think that this patch is relevant let me know and I'll test it.

 

--Edit--

And I tested your patch, it doesn't help with the problem I'm experiencing.