When trying to install fluid_libmanipulation library to the startup preferences, I get this error log:
invalid command name “.gui_preferences.content.frames.f1.listbox.box” invalid command name “.gui_preferences.content.frames.f1.listbox.box” while executing “$mytoplevel.listbox.box index active” (procedure “get_curidx” line 2) invoked from within “get_curidx $mytoplevel” (procedure “::scrollbox::add_item” line 7) invoked from within “::scrollbox::add_item .gui_preferences.content.frames.f1 {}” invoked from within “.gui_preferences.content.frames.f1.actions.add_path invoke” (“uplevel” body line 1) invoked from within “uplevel #0 [list $w invoke]” (procedure “tk::ButtonUp” line 22) invoked from within “tk::ButtonUp .gui_preferences.content.frames.f1.actions.add_path” (command bound to event)
From my understanding, these commands come from the file “fluid_libmanipulation.pd_linux”… Is it possible it is not adapted to my distribution ? Something like that happened to me with another PD library recently
I read this, and actually that looks like a tcltk error, which mean that would be your version of Pd. Are you using the official plain vanilla one, or anything else with another gui?
if yes, then we have made sure that compiling yourself is straightforward and that might sort the issue. I have ubuntu20 on my machine and it works from the download, and I know @rodrigo.constanzo has compiled for Bela so that is also possible. but i know there are binding issues with older OSes…
The pd/linux stuff I’ve done has been with @jarm’s compile, so it was a matter of getting those versions onto the Bela. I don’t really know much beyond that in terms of compilation and such.
Hello !
Thank you all for your answers. I must say I’m a bit lost between flucoma-pd, flocuma-core, etc.
Where do I start for compiling myself (I’m a relatively new Linux user) ? And yes, I’m on Linux 64-bit !
Regards
the beauty of the compilation process is that it will download everything for you (incuding core and docs and everything except what is on that list - cmake mostly
If you follow the instructions here, let me know where you get stalled, and I’ll help (and improve the instructions!)
So, I cloned the git repo for flucoma-pd, then created the “build” folder and cd to there, used cmake with the path where I cloned the repo, and finally used make install… And… nothing works haha !
I’m totally lost, I did it twice. First time I launched the install from the cloned repo, and not from build, so by doing it from the “build” folder I thought it might solve the issue, which well, wasn’t the case… Also I saw in the Readme file that I’m supposed to have a “release-packaging” after all that, and I’m not able to find it… I absolutely don’t understand the architecture I end up with, and also got 2 fatal errors at the end of make install (ofc I closed the terminal and forgot to copied them)…
So, what is meant by path to API is path to libpd ?
I located an empty libpd folder on my computer, and included it in -DPD_PATH… I still got this fatal error:
Building C object CMakeFiles/fluid.waveform.dir/src/fluid.waveform/fluid.waveform.c.o
cc1: warning: command-line option ‘-fpermissive’ is valid for C++/ObjC++ but not for C
/home/basile/flucoma-pd/src/fluid.waveform/fluid.waveform.c:21:10: fatal error: g_canvas.h: Aucun fichier ou dossier de ce type
21 | #include “g_canvas.h”
| ^~~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/fluid.waveform.dir/build.make:76 : CMakeFiles/fluid.waveform.dir/src/fluid.waveform/fluid.waveform.c.o] Erreur 1
make[1]: *** [CMakeFiles/Makefile2:2012 : CMakeFiles/fluid.waveform.dir/all] Erreur 2
make: *** [Makefile:136 : all] Erreur 2
Next to the libpd folder, there is a pd folder, where the file g_ganvas.h actually is. So I retried with -DPD_PATH targetting this folder instead… Still the same fatal error…
On my computer there are different places that contains stuff for PD. E.g. some things are in /usr/lib/, others like libpd are in /usr/local/include/, and libraries I install from Dekken go to Documents/pd/externals (and here only). As far as I can tell, I haven’t such thing as an API folder where “everything” is, like the /Content/Ressources/ you mention.
yes that is your problem - for any pd external one need to point at the Pd code so the external knows ‘how to speak’ to the application.
On Linux, I don’t have a running install now, so I cannot say off the top of my head where it lies. I think you have to download pd’s source (again a single git command) but maybe @weefuzzy remembers - otherwise I’ll be able to tell you tomorrow when I get back in front of my working linux…
Ok this time it worked perfectly So yeah, things would maybe be easier if it was mentioned somewhere that one needs the pd source code, which is then used for -DPD_PATH. The “<path/to/api>” thing doesn’t make it really obvious, at least for someone like me who rarely builds from scratch (especially pd libraries which are done more and more through dekken).
Oh by the way, I saw there’s a mistake in the examples: every sound files are searched in a “/help/media” folder which doesn’t exist. They all are in “/media/” (no “help” folder in the final constructed project).
It’s possible those docs might have been written in a bit of a hurry! We can definitely improve that!
(and yeah, there’s a bunch of stuff that one just starts taking for granted with the scar tissue of doing a lot of C/C++ building and forgets is non-obvious to start with…)