I now decided to gather pre-built externals here. I won't rebuild old ones, but any I will build or rebuild in the future will go there.
Compiling puredata externals
- Edited
Hello!
I'm trying to install the ipoke~ external. I tried the above examples for ggee and cyclone, and also helmhotz~ (thank you for these step by step!), which were successful. I tried to apply the same process for ipoke~ with its specific makefile but i cannot find the way to make it work. I'm new using Bela, i'm good with puredata but the rest... Still a bit confusing with my poor coding skills...
I got the source code here: http://puredata.info/Members/ipoke/ipoke_v.3_test1.zip/view
I tried copying the pd_linux only on pd-externals (in the IDE) but didn't made my objects work. i don't find the right way to compile it. Here is what I get when I try the "cyclone" way in the src file.
I tried to replace the parameters with LINUXFLAGS like in the helmholtz~ example, but this became very complicated.. I'm gonna try again, in between, would you have any clue? or is there another way? Thank you so much for your help!
marylougarou I tried copying the pd_linux only on pd-externals (in the IDE) but didn't made my objects work
that wouldn't work: it's probably a .pd_linux
file for x86 architecture, not for ARM.
marylougarou Here is what I get when I try the "cyclone" way in the src file.
the issue here is that the -Wall
and -Werror
flags mean, respectively "show all warnings" and "treat all warnings as fatal errors". In turn this causes the compilation to fail. The easiest fix is to edit the Makefile
and remove -Werror
from LINUXCFLAGS
. I would also remove them_pd.h
that is in that folder and add to LINUXCFLAGS
: -I/usr/local/lib/include
: the PD_INCLUDE
variable you are passing at the command line is ignored in this Makefile
. At the end you'd have the following in LINUXCFLAGS:
LINUXCFLAGS = -DPD -DUNIX -DICECAST -O3 -funroll-loops -fomit-frame-pointer \
-Wall -W -Wshadow -Wstrict-prototypes -fno-strict-aliasing -I/usr/local/include/libpd \
-Wno-unused -Wno-parentheses -Wno-switch -fPIC
With this, it builds fine for me.
is it possible that you pasted all the lines in one line? Then you should remove the \
. like this:
LINUXCFLAGS = -DPD -DUNIX -DICECAST -O3 -funroll-loops -fomit-frame-pointer -Wall -W -Wshadow -Wstrict-prototypes -fno-strict-aliasing -I/usr/local/include/libpd -Wno-unused -Wno-parentheses -Wno-switch -fPIC
Thanks a lot! It works PERFECTLY !
giuliomoro yes actually it was that + some typo!
for future records, I am uploading here the externals I build, including all build instructions. If you don't find your favourite external there, hopefully the instructions I used to build the others will help you building the ones you are interested in.
- Edited
Hello giuliomoro! First of all, many thanks for your great support here!
Please, is there a way for you to share the compiled libpd with all the Pd-l2ork externals?
I'm pretty interested on the fluid~ object so I could play SF2 soundfonts on Bela.
I went here https://github.com/BelaPlatform/Bela/issues/621 but I'm not sure all the externals from l2ork are there.
Thank you in advance!
evilplaymobil but I'm not sure all the externals from l2ork are there.
No they are not there, only the ones I built manually.
evilplaymobil I'm pretty interested on the fluid~ object so I could play SF2 soundfonts on Bela.
Link to the source code for it?
[unknown] Link to the source code for it?
The source code is here:
https://github.com/pd-l2ork/pd/tree/master/externals
The object [fluid~] seems to be part of the folder:
[ pd/externals/footils/ ].
is that the most recent version? It's like 8 years old ...
giuliomoro Oooh man, so sorry!
This is the one pointed by their site:
https://git.purrdata.net/jwilkes/purr-data/-/tree/master/externals
Hey
Just bought a second hand Bela and look forward for it to arrive in a near future.
So now I am doing some research.
One thing I use a lot in pd is list-abs. But yeah not really externals, as they are all abstractions.
List-abs work fine for Bela, right, since it's abstractions?
Thanks!
as long as none of those abstractions use any non-vanilla objects, i guess you should be fine
never heard of that collection, looks interesting.
externals work as well, i just found it a bit more involved compiling libraries - abstractions are easier to use.
just load them into the same folder that _main.pd is in, if i recall correctly.
yes, you can put them in the project folder, or create a dummy project pd-externals and put them all there so that they are accessible from all projects without having to duplicate them.
List abs are very good for list and table manipulation.
I often use "array get" to get table data and make a list out of it and then use list-abs to do some manipulation, like reverse, invert, replace, add elements and then "array set" to put it back in the table. So many options with that library
I did find a couple of already compiled externals, like sexy, cyclone ans else. Sexy I used to use a lot.
But these days, I try to make everything vanilla, for ease of use.
For reverb I really like Freeverb. I found this, but it seems like it's not compiled specifically for Bela, but "just" for Linux:
https://github.com/noizhardware/bela-projects
Maybe I'll try to follow the compile instructions for Bela and see if I can compile it sometime
Thanks!
Nice, so it works pretty much like Organelle. I think I like the common folder idea the most, which I use in both Organelle and my rpi/Pisound box.
Thanks
Hey guys
I am using the phasorshot~ from TOF external library a lot in my patches on my Macbook. From this library:
https://github.com/electrickery/pd-tof
I would love to be able to use that external for Bela too. I did try to make a Vanilla version, but it just doesn't work as great as the hardcoded version from TOF library.
I was wondering if anyone compiled it already? Or is it possible to use a Linux version? I got it for Organelle.
If not, I guess I need to try compiling it myself, which I do not have a lot of experience with, to be honest, so if anyone already compiled I would be pretty grateful
Thanks in advance!
I got it for Organelle.
this one should work.
Otherwise, building it from source is straightforward. I added build instructions and a binary download here
Thanks, I think I will start with the Organelle version for simplicity and go on from there