Open alignwaivers opened 4 years ago
Hi,
-msse
and -msse2
are enabled only if your compiler reports your machine as having an x86 architecture, which is determined by parsing the output of cc -dumpmachine
. Could you please give me the output of that command run on your RPi ?
Thank you, Jules
pi@raspberrypi:~ $ cc -dumpmachine arm-linux-gnueabihf
Thanks! glad to do whatever I can to make it work
Hey, I looked it up in detail, it should have been fixed now. It was an issue from DPF that was resolved but not merged in the master branch of the DPF fork used by ninjas2.
https://github.com/DISTRHO/DPF/issues/190
I believe the submodule was updated in ninjas2 because the Makefile for dpf I get when I git clone --recursive
is the right one now.
tl;dr: the submodule you cloned in january was outdated, just do a fresh clone and you should be fine!
Hmm thanks for looking into this. unfortunately it looks like there's still a failure of recognition of the architecture? For reference @rghvdberg had suggested using the system aubio (not sure if helpful but this thread does some more info about the problem)
$ make USE_SYSTEM_AUBIO=true make -C dpf/dgl make[1]: Entering directory '/home/pi/installed_local/ninjas2/dpf/dgl' Compiling src/Application.cpp cc1plus: error: unrecognized -mtune target: generic cc1plus: note: valid arguments are: arm2 arm250 arm3 arm6 arm60 arm600 arm610 arm620 arm7 arm7d arm7di arm70 arm700 arm700i arm710 arm720 arm710c arm7100 arm7500 arm7500fe arm7m arm7dm arm7dmi arm8 arm810 strongarm strongarm110 strongarm1100 strongarm1110 fa526 fa626 arm7tdmi arm7tdmi-s arm710t arm720t arm740t arm9 arm9tdmi arm920 arm920t arm922t arm940t ep9312 arm10tdmi arm1020t arm9e arm946e-s arm966e-s arm968e-s arm10e arm1020e arm1022e xscale iwmmxt iwmmxt2 fa606te fa626te fmp626 fa726te arm926ej-s arm1026ej-s arm1136j-s arm1136jf-s arm1176jz-s arm1176jzf-s mpcorenovfp mpcore arm1156t2-s arm1156t2f-s cortex-m1 cortex-m0 cortex-m0plus cortex-m1.small-multiply cortex-m0.small-multiply cortex-m0plus.small-multiply generic-armv7-a cortex-a5 cortex-a7 cortex-a8 cortex-a9 cortex-a12 cortex-a15 cortex-a17 cortex-r4 cortex-r4f cortex-r5 cortex-r7 cortex-r8 cortex-m7 cortex-m4 cortex-m3 marvell-pj4 cortex-a15.cortex-a7 cortex-a17.cortex-a7 cortex-a32 cortex-a35 cortex-a53 cortex-a57 cortex-a72 cortex-a73 exynos-m1 xgene1 cortex-a57.cortex-a53 cortex-a72.cortex-a53 cortex-a73.cortex-a35 cortex-a73.cortex-a53 cortex-a55 cortex-a75 cortex-a75.cortex-a55 cortex-m23 cortex-m33 cortex-r52 native make[1]: [Makefile:104: ../build/dgl/Application.cpp.o] Error 1 make[1]: Leaving directory '/home/pi/installed_local/ninjas2/dpf/dgl' make: [Makefile:33: libs] Error 2
even on a normal 'make' it ends up with the same error: cc1plus: error: unrecognized -mtune target: generic
Again that's a bug that originated in DPF, and it was fixed in January but not merged into the branch ninjas2 is using.
https://github.com/DISTRHO/DPF/commit/de8ace2f3057fc033ee0477be9d524d3a344cd85
I guess you could simply remove the dpf
folder and do a git pull https://github.com/DISTRHO/DPF
to compile it on your RPi.
@rghvdberg the fork of DPF you rely on isn't active anymore, would it be possible to switch back to the original one at https://github.com/DISTRHO/DPF ?
For lv2 this doesn't matter. Code in this from was edited to have sendNote() also work in vst and jack. Maybe in the meantime this is also in the main repo.
I've separately cloned DPF and replaced the dpf from ninjas2 with it as @rghvdberg which allows it to build the lv2 which does work to be loaded in carla as a host but the gui doesn't work which renders it useless (unless there's a alternate way of loading samples beyond using the gui that i'm unaware of).
but if I try to pull directly
$ git pull https://github.com/DISTRHO/DPF From https://github.com/DISTRHO/DPF
- branch HEAD -> FETCH_HEAD fatal: refusing to merge unrelated histories
I really REALLY appreciate the help, would be awesome to make this work, and I appreciate the efforts regardless
On Wed, Apr 8, 2020 at 11:54 AM rghvdberg notifications@github.com wrote:
For lv2 this doesn't matter. Code in this from was edited to have sendNote() also work in vst and jack. Maybe in the meantime this is also in the main repo.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/clearly-broken-software/ninjas2/issues/103#issuecomment-611131159, or unsubscribe https://github.com/notifications/unsubscribe-auth/AGGZPCVV5NP4GKNOZNBIILDRLTB5TANCNFSM4KFZ73XA .
dpf requires opengl, do you have the dependencies installed as described in the readme?
If you do make
in the dpf directory the dpf examples should be built. Check if these work ok.
Let me point out that ninjas2 is designed to work with a computer + monitor + mouse.
For other workflows you need a different solution.
$ git pull https://github.com/DISTRHO/DPF From https://github.com/DISTRHO/DPF * branch HEAD -> FETCH_HEAD fatal: refusing to merge unrelated histories
I'm sorry I did a mistake here, I meant clone
, not pull
EDIT:
git pull https://github.com/DISTRHO/DPF dpf
Sorry I thought I mentioned this more clearly: I've tried cloning the main DPF branch into it but that's the only thing that helped me build, and all seems to lead to the same place: I can load the lv2 but when I try to load the gui it doesn't work. So maybe a GUI issue, but pretty convoluted. Thanks for trying though. Here's the output from carla's debug (i'm not sure what else to try besides ardour which crashes when I try to load it)
assertion failure: “xWindow != 0” in file src/Window.cpp, line 288
Carla assertion failure: “fProcess != nullptr” in file CarlaPluginBridge.cpp, line 127
Carla assertion failure: “fProcess != nullptr” in file CarlaPluginBridge.cpp, line 127
and tried to run the standalone for kicks and giggles
assertion failure: “xWindow != 0” in file src/Window.cpp, line 288
Segmentation fault
and also @rghvdberg as I mentioned before built the DPF examples, but it's been a long process so I know it's hard to keep track of. Still awesome piece of software, just not looking great for my usage on the pi, oh well :)
We'll get it to work, no worries. It's not a hard thing to fix, just some compiler flags in a well written Makefile, nothing that can't be dealt with :)
I'll get myself a shower first then work on it
@alignwaivers I think something got fixed recently, the DPF fork no longer has sse flags hardcoded for all platforms in its makefile. The build went perfectly on my Raspberry Pi 3 with a fresh clone of ninjas2
, I think it should be OK for you as well
Sweet, I really appreciate that. I'm guessing you're not on raspbian buster then? Even if not that is still very useful info, thank you!
My RPi runs Arch, but it shouldn't matter at all :)
Hmm. My friends have been trying to get me to install that forever hah. Now I might have the incentive
I tried it last night just to check though, still having the same issue.
That's pretty weird, did you really make sure you have a fresh ninjas2 repo, and didn't barely touch it before running make ? Is it still because of the -msse2
flag when compiling aubio
? If that's the case you can simply remove the -msse -msse2
flags in dpf/Makefile.base.mk
and it should do the trick, but it's pretty weird that you still have build issues though
I just started setting up a Pi 4 for production yesterday (2gb with Raspian Buster), and just on a whim searched 'beat slicer for linux' -- wasn't sure if I'd find anything, but then I found this! It looks great.
Unfortunately, I'm having the same problem as above. When I try make
, I get "error: unrecognized -mtune target: generic" and the process fails. I get no binaries in ninjas2/bin/.
I have all the dependencies covered, and as I said, I just started setting this up yesterday so I think everything should be up to date.
Thought I would jump in here just to second alignwaivers' experience.
Hah, thanks - I knew I wouldn't be the only one wanting to make this work! I did try with a fresh clone as well, and then proceeded to start working on installing arch in order to get a working version on the pi (given @JPenuchot indicated it worked and my friends have been trying to get my arch for awhile) . It is a finicky of a setup process as I was informed, but hopefully it's worth the hassle (once I find the time to deal with whatever issue I was having), then I can finally have a sample/splicer on the pi.
It might be an issue related to the RPi 4 not having a compiler for the same architecture as the RPi 3, so you might run into the same issue even with Arch. What you can do right now however is tinker with the BASE_OPT
variable in dpf/Makefile.base.mk
at line 132, try to replace -mtune=generic
with -mtune=native
or simply remove it. It's just an optimization flag so removing it shouldn't affect you too much, especially considering the -O3
flag is already enabled.
Changing -mtune=generic
to -mtune=native
in dpf/Makefile.base.mk
worked! Got my binaries and dropped them into /usr/lib/lv2, opened Carla and re-scanned for plugins, and there it is! No issues launching it.
Thanks @JPenuchot
Hey, I've been trying to build on raspberry pi (4 b), and successfully got the distrho/dpf examples to work, but can't seem to build ninjas2 in any way. The standard instructions for build (all dependencies are installed and up-to-date
and after I run git clone --recursive https://github.com/rghvdberg/ninjas2.git and cd into dirrectory:
Alternatively, if I attempt to make from the autobuild release:
Any insights on this would be very helpful, even if I have to do some digging it'd be quite worth it for me get this software working on the pi!
Thanks!