Problems building HISE on linux
-
this is my first post here in the forum so first of all: hello all! :-)
i've got a problem building HISE on my laptop, running linux mint 19.2. i could build it on my pc running the same os without problems - and, by the way, i synchronized the packages on both computers with apt-clone.
my first problem (on both machines) was, that the precompiled Projucer binary seemed to be corrupted (terminal told me something like 'invalid machine command"), so i installed the latest JUCE from source and build HISE makefile with the fresh compiled Projucer.
while on my pc, i could run the makefile without issues, it didn't work on my laptop, spitting out the following lines in the terminal:mkdir: mkdir: fehlender Operandfehlender Operand „mkdir --help“ liefert weitere Informationen. „mkdir --help“ liefert weitere Informationen. Makefile:141: recipe for target '/DspUnitTests_8fd29654.o' failed make: [/DspUnitTests_8fd29654.o] Error 1 (ignoriert) Makefile:146: recipe for target '/HiseEventBufferUnitTests_fc3efacf.o' failed make: [/HiseEventBufferUnitTests_fc3efacf.o] Error 1 (ignoriert) Compiling DspUnitTests.cpp Compiling HiseEventBufferUnitTests.cpp ../../../../hi_core/hi_core/HiseEventBufferUnitTests.cpp:34:10: fatal error: AppConfig.h: Datei oder Verzeichnis nicht gefunden #include "AppConfig.h" ^~~~~~~~~~~~~ compilation terminated. ../../../../hi_scripting/scripting/api/DspUnitTests.cpp:33:10: fatal error: AppConfig.h: Datei oder Verzeichnis nicht gefunden #include "AppConfig.h" ^~~~~~~~~~~~~ compilation terminated. Makefile:146: recipe for target '/HiseEventBufferUnitTests_fc3efacf.o' failed make: *** [/HiseEventBufferUnitTests_fc3efacf.o] Error 1 make: *** Auf noch nicht beendete Prozesse wird gewartet … Makefile:141: recipe for target '/DspUnitTests_8fd29654.o' failed make: *** [/DspUnitTests_8fd29654.o] Error 1
can someone tell me, what i am missing?
thanks in advance! :-) -
no ideas? i know, my os runs in german, which reduces my chances for support, but i hoped someone knows a solution. could this be a problem with JUCE, regarding the message abt the "AppConfig.h" header file?
-
When you tried to build on your laptop were you using the same HISE source folder you were using on your PC (did you copy it across) or did you download it fresh from github?
-
i downloaded it from github. i tried it with 2.1.0, 2.0.0 and even with the master branch - always the same result. :-/
-
You should use the scriptnode branch for the latest version. Did you use the Projucer that came with the HISE source code or did you build Projucer yourself? I remember someone mentioned recently they were having trouble with the version that came with HISE.
-
i posted that issue on github, maybe that was me. yeah, the projucer that came with hise didn't work on any of my machines (both linux mint 19.2) - no matter which hise version. so i installed juce. i'll give the scriptnode branch version a chance, didn't even know about that, i'm very new in building software from source and github and such things... ;-)
-
@toxonic What do you mean when you say you installed JUCE?
-
@d-healey said in Problems building HISE on linux:
@toxonic What do you mean when you say you installed JUCE?
i installed juce on both machines with a shell-script, which first gets all dependencies before building juce (https://forum.juce.com/t/easy-juce-installation-on-ubuntu-linux-16-04/18159).
by the way, same problem with the scriptnode branch... :-/
-
all dependencies before building juce
Do you mean building Projucer?
-
@d-healey
yeah, Projucer seems only to be one part of JUCE, cdorrect me if i am wrong there. but the Projucer binary is in the JUCE folder. and indeed, there seems to be something wrong with the Projucer / JUCE installation, i tried to build one of the included example projects (PluckedStringsDemo) - the makefile was created after saving the project, but when i executed the make file i got an error message in the terminal again:mkdir: fehlender Operand „mkdir --help“ liefert weitere Informationen. mkdir: fehlender Operand „mkdir --help“ liefert weitere Informationen. Makefile:98: recipe for target '/Main_90ebc5c2.o' failed make: [/Main_90ebc5c2.o] Error 1 (ignoriert) Makefile:103: recipe for target '/include_juce_audio_basics_8a4e984a.o' failed make: [/include_juce_audio_basics_8a4e984a.o] Error 1 (ignoriert) Compiling Main.cpp Compiling include_juce_audio_basics.cpp In file included from ../../Source/Main.cpp:9:0: ../../Source/../JuceLibraryCode/JuceHeader.h:17:10: fatal error: juce_audio_basics/juce_audio_basics.h: Datei oder Verzeichnis nicht gefunden #include <juce_audio_basics/juce_audio_basics.h> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ compilation terminated. ../../JuceLibraryCode/include_juce_audio_basics.cpp:9:10: fatal error: juce_audio_basics/juce_audio_basics.cpp: Datei oder Verzeichnis nicht gefunden #include <juce_audio_basics/juce_audio_basics.cpp> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ compilation terminated. Makefile:98: recipe for target '/Main_90ebc5c2.o' failed make: *** [/Main_90ebc5c2.o] Error 1 make: *** Auf noch nicht beendete Prozesse wird gewartet … Makefile:103: recipe for target '/include_juce_audio_basics_8a4e984a.o' failed make: *** [/include_juce_audio_basics_8a4e984a.o] Error 1
-
Have you built Projucer?
-
yes, Projucer is in the JUCE folder (automatically build via the script, mentioned in one of my last posts). i tried to build the example project above within Projucer (like HISE standalone before). As mentioned, the Projucer that came with HISE didn't work on any of my machines (the terminals spits out something like "invalid machine command (core image written)"), thats why i installed the Projucer via the JUCE installation script.
-
@d-healey
on another partition of my laptop i have a kubuntu 18.04 istallation. i tried out the projucer came with hise scriptnode, an as i expected, it didn't start, because i didn't install the dependencies for projucer first, but surprisingly it seemed to try to run, telling me that libwebkit is missing. but after i installed all the dependencies mentioned on the hise github page, i got the same as on my laptop:
invalid machine command (core image written)
could there be a conflict with one of the installed dependencies? maybe i have to uninstall them and reinstall them one by one to find out, if there lies the problem.i hope you got me, sorry for my poor english and thank you for all your help. :-)
-
Have you seen my tutorial for building HISE on GNU/Linux?
-
@d-healey
Yes, sure, i did it like you shown in your video, but instead of using the Projucer, which came with hise (because of the issue i already mentioned) , i used the Projucer, that i've built via the installJuce.sh Script (mentioned above).
At least, this worked fine on my pc, but not on my Laptop (with the same os).
Ps: well, i first ran into problems regarding the --no-pie flag within the hise jucer file, which wouldn't compile. I compiled it the without that flag, but then, the compiled hise Binary was only executable via Terminal. After i renamed the flag to "-no-pie" (only one - sign) , the binary worked well on my pc. -
It's very strange. I just downloaded the latest scriptnode branch and the Projucer executable that comes with it works fine for me. I'm using Linux Mint 19.1
Could you try running the scriptnode version of Projucer from the terminal and tell me what error you get?
The other thing I'm unsure about is in the past I have built Projucer from source using the makefile but I've never "installed juce" so I don't know what that has added to your system.
-
@d-healey said in Problems building HISE on linux:
Could you try running the scriptnode version of Projucer from the terminal and tell me what error you get?
Yeah, i tried this already on my Kubuntu partition (which is a quite fresh Installation), i used the Projucer which came with hise scriptnode. After i installed the dependencies, i tried to run Projucer, the Terminal spits out the same error message:
invalid machine Command (core image written)
This occured on a system, wehre Mo juce is installed - but remember, the reason why i installed juce on my laptop was the fact, that the hise Projucer alteady didn't work (with the same error message).
-
I think I know what the problem is. Do the devices that it doesn't work on have an AMD processor?
-
@d-healey
Nope, the opposit is fact:
my pc (which runs hise) has an AMD CPU, my laptop runs with an old Intel i5 CPU. Could this be to outdated?
Ah, stop ... the hise Projucer don't run on any of my machines.
What was your idea, regarding AMD processors? -
HISE (not Projucer) needs a special setting to run on old AMD CPUs. But that doesn't look like the problem here since it works on your AMD PC.
Are you running 32bit or 64bit OS?
Is this message translated from German?
invalid machine Command (core image written)