On 9/12/24 17:32, Alexandros Drymonitis wrote:
Working on an object of mine, I copied code from snake_in~ and snake_out~ to enable multi-channel I/Os, but I get errors on s_length and s_nchans. More specifically, I get the following:
Is it likely that the Makefile is looking at an m_pd.h older than 0-54.0?
yes.
I have installed 0-55.1 by compiling it.
so, where does the header come from?
assuming you are running a Debian(derivative), you probably also have the "puredata-dev" package installed, which installs the headers to /usr/include/pd/ - and Makefile.pdlibbuilder uses this path as the default (if available).
to quote from the Makefile.pdlibbuilder:
# Default search path for m_pd.h and other API header files is platform
# dependent, and overridable by PDINCLUDEDIR:
#
# Linux: /usr/include/pd
Is there something I need to do to point the compiler to the correct m_pd.h file?
since the Makefile.pdlibbuilder is the canonical documentation of itself (it has plenty of comments explaining its workings), i guess this is just the answer.
make PDINCLUDEDIR=/usr/local/include/pd
(i guess pd-lib-bulider could prefer /usr/local/include/pd over /usr/include/pd, you could create an issue)
gfadsmnr IOhannes