Hi, I would like to compile the new dssi external because of the ladspa support. It's the first time that I try to compile pure-data sources and I'm having some problems. I've checked already in the mailing list, and I understand that my issue is somehow related with path setting, but I don't know how to solve it.
I'm using the last pd-extended on mac os 10.4
First I've downloaded pure data and the externals with the commands: cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/pure-data co externals cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/pure-data co pd,
After I cd to the folder where dssi external is, and I edited the makefile writing pd_darwin in the "current" field and typed "make". Here is the beginning of the long error message that I get:
c84-230-161-130:/puredatacvs/externals/postlude/dssi libero$ make cc -DPD -O3 -Wall -W -Wshadow -Wstrict-prototypes -Wno-unused -Wno-parentheses -Wno-switch -L/usr/local/lib/ -I ./ -I ../src -I/usr/local/include/ -I ./include -I/usr/local/include/dssi/ -o dssi~.o -c src/dssi~.c In file included from src/dssi~.c:29: src/dssi~.h:27:18: error: m_pd.h: No such file or directory src/dssi~.h:28:18: error: dssi.h: No such file or directory src/dssi~.h:30:20: error: lo/lo.h: No such file or directory
I've understood that I should edit the makefile to specify where m_pd.h is, and actually it's in the application in the "include" folder, but I don't know where to write this path in the makefile.
Thank you for any help.
Libero
Hi,
I would like to compile the new dssi external because of the ladspa support. It's the first time that I try to compile pure-data sources and I'm having some problems.
<snip>
In file included from src/dssi~.c:29: src/dssi~.h:27:18: error: m_pd.h: No such file or directory src/dssi~.h:28:18: error: dssi.h: No such file or directory src/dssi~.h:30:20: error: lo/lo.h: No such file or directory
I've understood that I should edit the makefile to specify where m_pd.h is, and actually it's in the application in the "include" folder, but I don't know where to write this path in the makefile.
That's my fault for not keeping the makefile in the CVS up-to-date. I'll fix it tonight. If you wan't to sort it yourself, try adding '-I ./include' to the 'DARWININCLUDE =' section.
Let me know if this doesn't work.
Jamie
On 3/23/06, Jamie Bullock jamie@postlude.co.uk wrote:
Hi,
I would like to compile the new dssi external because of the ladspa support. It's the first time that I try to compile pure-data sources and I'm having some problems.
<snip>
In file included from src/dssi~.c:29: src/dssi~.h:27:18: error: m_pd.h: No such file or directory src/dssi~.h:28:18: error: dssi.h: No such file or directory src/dssi~.h:30:20: error: lo/lo.h: No such file or directory
I've understood that I should edit the makefile to specify where m_pd.h is, and actually it's in the application in the "include" folder, but I don't know where to write this path in the makefile.
That's my fault for not keeping the makefile in the CVS up-to-date. I'll fix it tonight. If you wan't to sort it yourself, try adding '-I ./include' to the 'DARWININCLUDE =' section.
Hi, actually -I ./include was already present in the makefile, in any case I've written it again, but it ends up with the same error.
Libero
Let me know if this doesn't work.
Jamie
Hi,
On Thu, 23 Mar 2006 13:46:13 +0200 "Libero Mureddu" libero.mureddu@gmail.com wrote:
<snip> > Hi, > actually -I ./include was already present in the makefile, in any case > I've written it again, but it ends up with the same error. > > Libero
Did you read the README file?
In it there is a list of dssi~ dependencies. Only seq_event.h is included in the include dir included with the external, the others you have to get yourself (from Sourceforge). For PD, DSSI, and LADSPA you only need the headers (dssi.h, ladspa.h, m_pd.h), but liblo, you will actually need to compile and install. At http://www.puredata.org/Members/jb there is now a tarball with Linux and OS X binaries in it, so you might want to try that. You will still need to install liblo though.
BTW, there is currently a problem with sending control data to LADSPA plugin instances > 1, so you might want to wait until I've fixed that, and I'll announce the release.
Jamie
On 3/24/06, Jamie Bullock jamie@postlude.co.uk wrote:
Hi,
On Thu, 23 Mar 2006 13:46:13 +0200 "Libero Mureddu" libero.mureddu@gmail.com wrote:
<snip> > Hi, > actually -I ./include was already present in the makefile, in any case > I've written it again, but it ends up with the same error. > > Libero
Did you read the README file?
In it there is a list of dssi~ dependencies. Only seq_event.h is included in the include dir included with the external, the others you have to get yourself (from Sourceforge). For PD, DSSI, and LADSPA you only need the headers (dssi.h, ladspa.h, m_pd.h), but liblo, you will actually need to compile and install. At http://www.puredata.org/Members/jb there is now a tarball with Linux and OS X binaries in it, so you might want to try that. You will still need to install liblo though.
BTW, there is currently a problem with sending control data to LADSPA plugin instances > 1, so you might want to wait until I've fixed that, and I'll announce the release.
Jamie
Hi, yes, I've read the README, the problem is that is my first compilation and that I didn't know that I had to copy the header files in the include folder. Anyway, I would like to continue try compile, because I have the impression that with pure data it's quite useful to learn how to do it. Sorry for the many newbie mistakes!
So I copied all the files in the include folder, but now, during make, I get this error about seq_event.h:
Computer-di-Libero-Mureddu:/puredatacvs/externals/postlude/dssi libero$ make cc -DPD -O3 -Wall -W -Wshadow -Wstrict-prototypes -Wno-unused -Wno-parentheses -Wno-switch -L/usr/local/lib/ -I ./ -I ../src -I/usr/local/include/ -I ./include -I/usr/local/include/dssi/ -o dssi~.o -c src/dssi~.c In file included from src/dssi~.h:28, from src/dssi~.c:29: ./include/dssi.h:28:28: error: alsa/seq_event.h: No such file or directory
but the seq_event.h is present in the "include" folder.
I've also tried to use the dssi~ binary, the object loads, but as soon as I give a path to the plugin, it crashes. Here is the report from console. My ladspa plugins are installed in /usr/local/lib/ladspa.
Warning: no LADSPA_PATH and DSSI_PATH, assuming /usr/lib/ladspa:/usr/local/lib/ladspa:/usr/lib/dssi:/usr/local/lib/dssi pd_gui: pd process exited Mar 24 16:19:02 Computer-di-Libero-Mureddu crashdump[16343]: pd crashed Mar 24 16:19:08 Computer-di-Libero-Mureddu crashdump[16343]: crash report written to: /Volumes/scripta/Users/libero/Library/Logs/CrashReporter/pd.crash.log
Thank you very much for your help.
Libero
Hi,
On Fri, 24 Mar 2006 16:21:06 +0200 "Libero Mureddu" libero.mureddu@gmail.com wrote:
<snip> > Hi, > yes, I've read the README, the problem is that is my first compilation > and that I didn't know that I had to copy the header files in the > include folder. Anyway, I would like to continue try compile, because > I have the impression that with pure data it's quite useful to learn > how to do it. Sorry for the many newbie mistakes! > You're right, it is a good idea to learn about compiling code if you're going to get on in the PD world!
So I copied all the files in the include folder, but now, during make, I get this error about seq_event.h:
Computer-di-Libero-Mureddu:/puredatacvs/externals/postlude/dssi libero$ make cc -DPD -O3 -Wall -W -Wshadow -Wstrict-prototypes -Wno-unused -Wno-parentheses -Wno-switch -L/usr/local/lib/ -I ./ -I ../src -I/usr/local/include/ -I ./include -I/usr/local/include/dssi/ -o dssi~.o -c src/dssi~.c In file included from src/dssi~.h:28, from src/dssi~.c:29: ./include/dssi.h:28:28: error: alsa/seq_event.h: No such file or directory
but the seq_event.h is present in the "include" folder.
What the error message is telling you is that the compiler can't find alsa/seq_event.h in its include path (all the -I <directory> paths). To fix this, you should create a directory called alsa inside dssi/include and move seq_event.h into it. I have now updated the CVS to reflect this.
In general you should keep header files in some standard location, so other build systems can find them. /usr/local/include is the usual place on *n*x systems.
I've also tried to use the dssi~ binary, the object loads, but as soon as I give a path to the plugin, it crashes. Here is the report from console. My ladspa plugins are installed in /usr/local/lib/ladspa.
Warning: no LADSPA_PATH and DSSI_PATH, assuming /usr/lib/ladspa:/usr/local/lib/ladspa:/usr/lib/dssi:/usr/local/lib/dssi pd_gui: pd process exited Mar 24 16:19:02 Computer-di-Libero-Mureddu crashdump[16343]: pd crashed Mar 24 16:19:08 Computer-di-Libero-Mureddu crashdump[16343]: crash report written to: /Volumes/scripta/Users/libero/Library/Logs/CrashReporter/pd.crash.log
Sorry about that; I haven't got around to making a new help patch to reflect the changes since version 0.8. These include a new mechanism for loading plugins and a new inlet/outlet structure.
To load a plugin, just type its name (easier), e.g. sine_faaa, or type the path to the library (faster) followed by the plugin name .e.g /usr/local/lib/ladspa/sine.so:sine_faaa. To list all plugins and locations send a |listplugins( message
At any rate, an incorrect argument shouldn't crash PD, so I need to fix that. Could you send me the file pd.crash.log
Jamie
On 3/24/06, Jamie Bullock jamie@postlude.co.uk wrote:
Hi,
On Fri, 24 Mar 2006 16:21:06 +0200 "Libero Mureddu" libero.mureddu@gmail.com wrote:
<snip> > Hi, > yes, I've read the README, the problem is that is my first compilation > and that I didn't know that I had to copy the header files in the > include folder. Anyway, I would like to continue try compile, because > I have the impression that with pure data it's quite useful to learn > how to do it. Sorry for the many newbie mistakes! > You're right, it is a good idea to learn about compiling code if you're going to get on in the PD world!
So I copied all the files in the include folder, but now, during make, I get this error about seq_event.h:
Computer-di-Libero-Mureddu:/puredatacvs/externals/postlude/dssi libero$ make cc -DPD -O3 -Wall -W -Wshadow -Wstrict-prototypes -Wno-unused -Wno-parentheses -Wno-switch -L/usr/local/lib/ -I ./ -I ../src -I/usr/local/include/ -I ./include -I/usr/local/include/dssi/ -o dssi~.o -c src/dssi~.c In file included from src/dssi~.h:28, from src/dssi~.c:29: ./include/dssi.h:28:28: error: alsa/seq_event.h: No such file or directory
but the seq_event.h is present in the "include" folder.
What the error message is telling you is that the compiler can't find alsa/seq_event.h in its include path (all the -I <directory> paths). To fix this, you should create a directory called alsa inside dssi/include and move seq_event.h into it. I have now updated the CVS to reflect this.
In general you should keep header files in some standard location, so other build >systems can find them. /usr/local/include is the usual place on *n*x systems.
Hi, thank you for your help. I'm still getting errors, but the list gets shorter and shorter! Now make complains in this way:
Computer-di-Libero-Mureddu:/puredatacvs/externals/postlude/dssi libero$ make cc -DPD -O3 -Wall -W -Wshadow -Wstrict-prototypes -Wno-unused -Wno-parentheses -Wno-switch -L/usr/local/lib/ -I ./ -I ../src -I/usr/local/include/ -I ./include -I/usr/local/include/dssi/ -o dssi~.o -c src/dssi~.c src/dssi~.c: In function 'dssi_tilde_init_plugin': src/dssi~.c:2019: error: 'struct _dssi_tilde' has no member named 'dsp_loop' src/dssi~.c: In function 'dssi_tilde_plug_plugin': src/dssi~.c:2202: error: 'struct _dssi_tilde' has no member named 'dsp_loop' make: *** [src/dssi~.pd_darwin] Error 1
I've also tried to use the dssi~ binary, the object loads, but as soon as I give a path to the plugin, it crashes. Here is the report from console. My ladspa plugins are installed in /usr/local/lib/ladspa.
Warning: no LADSPA_PATH and DSSI_PATH, assuming /usr/lib/ladspa:/usr/local/lib/ladspa:/usr/lib/dssi:/usr/local/lib/dssi pd_gui: pd process exited Mar 24 16:19:02 Computer-di-Libero-Mureddu crashdump[16343]: pd crashed Mar 24 16:19:08 Computer-di-Libero-Mureddu crashdump[16343]: crash report written to: /Volumes/scripta/Users/libero/Library/Logs/CrashReporter/pd.crash.log
Sorry about that; I haven't got around to making a new help patch to reflect the changes since version 0.8. These include a new mechanism for loading plugins and a new inlet/outlet structure.
To load a plugin, just type its name (easier), e.g. sine_faaa, or type the path to the library (faster) followed by the plugin name .e.g /usr/local/lib/ladspa/sine.so:sine_faaa. To list all plugins and locations send a |listplugins( message
I'm still having some problems: if I type "dssi~ plugin_name" pd crashes. The second system works. But I get errors when I send the message: should it be a message box with the message "|listplugins(" connected with the dssi~ object? In this case I get the error message: error: dssi~: no method for '|listplugins('
At any rate, an incorrect argument shouldn't crash PD, so I need to fix that. Could you send me the file pd.crash.log
Here it is. Thank you
Libero
Jamie
Hi,
On Fri, 24 Mar 2006 18:03:57 +0200 "Libero Mureddu" libero.mureddu@gmail.com wrote:
<snip> > Hi, thank you for your help. I'm still getting errors, but the list > gets shorter and shorter! > Now make complains in this way: > > Computer-di-Libero-Mureddu:/puredatacvs/externals/postlude/dssi libero$ make > cc -DPD -O3 -Wall -W -Wshadow -Wstrict-prototypes -Wno-unused > -Wno-parentheses -Wno-switch -L/usr/local/lib/ -I ./ -I ../src > -I/usr/local/include/ -I ./include -I/usr/local/include/dssi/ -o > dssi~.o -c src/dssi~.c > src/dssi~.c: In function 'dssi_tilde_init_plugin': > src/dssi~.c:2019: error: 'struct _dssi_tilde' has no member named 'dsp_loop' > src/dssi~.c: In function 'dssi_tilde_plug_plugin': > src/dssi~.c:2202: error: 'struct _dssi_tilde' has no member named 'dsp_loop' > make: *** [src/dssi~.pd_darwin] Error 1 > > That's my fault as well - I updated dssi~.c without updating dssi~.h. I've updated the CVS version now, so please download dssi~.h from the dssi/src directory. Hopefully that should work now.
<snip>
I'm still having some problems: if I type "dssi~ plugin_name" pd crashes. The second system works. But I get errors when I send the message: should it be a message box with the message "|listplugins(" connected with the dssi~ object? In this case I get the error message: error: dssi~: no method for '|listplugins('
Hehe.. No, the notation '|' and '(' is used to give a visual representation of a message box using ASCII. For example, you could write the call to the listplugins method:
|listplugins( | [dssi~]
... but it is just 'listplugins' (without the quotes) that goes in the message box.
Let me know how you get on.
Jamie
On 3/25/06, Jamie Bullock jamie@postlude.co.uk wrote:
202: error: 'struct _dssi_tilde' has no member named 'dsp_loop'
make: *** [src/dssi~.pd_darwin] Error 1
That's my fault as well - I updated dssi~.c without updating dssi~.h. I've updated the CVS version now, so please download dssi~.h from the dssi/src directory. Hopefully that should work now.
I think the compilation phase went well: here is the result, and I've got a brand new dssi~.pd_darwin in the dssi folder. Here follow the compilation message from the terminal.
cc -DPD -O3 -Wall -W -Wshadow -Wstrict-prototypes -Wno-unused -Wno-parentheses -Wno-switch -L/usr/local/lib/ -I ./ -I ../src -I/usr/local/include/ -I ./include -I/usr/local/include/dssi/ -o dssi~.o -c src/dssi~.c cc -bundle -undefined suppress -flat_namespace -llo -o dssi~.pd_darwin dssi~.o rm -f *.o
But, when I try to load the dssi~ object, differently from your binary, I get from pd the following error:
/Applications/Pd-extended.app/Contents/Resources/Scripts/../extra/dssi~.pd_darwin: dlopen (/Applications/Pd-extended.app/Contents/Resources/Scripts/../extra/dssi~.pd_darwin, 10): Symbol not found: _LADSPAPluginSearch Referenced from: /Applications/Pd-extended.app/Contents/Resources/Scripts/../extra/dssi~.pd_darwin Expected in: flat namespace
dssi~ ... couldn't create
(BTW, is there a way on pd on mac to copy and paste the messages from Pd window?)
<snip>
I'm still having some problems: if I type "dssi~ plugin_name" pd crashes. The second system works. But I get errors when I send the message: should it be a message box with the message "|listplugins(" connected with the dssi~ object? In this case I get the error message: error: dssi~: no method for '|listplugins('
Hehe.. No, the notation '|' and '(' is used to give a visual representation of a message box using ASCII. For example, you could write the call to the listplugins method:
|listplugins( | [dssi~]
Well... I had the doubt that the |...( was a kind of conventional way to write something...but I didn't realize that was about the message box!
Anyway, with your binary, if I send the listplugins message, pd crashes. Here is the message that I get:
===== domenica 26 marzo 2006 17:22:32 Europe/Helsinki ===== Warning: no LADSPA_PATH and DSSI_PATH, assuming /usr/lib/ladspa:/usr/local/lib/ladspa:/usr/lib/dssi:/usr/local/lib/dssi pd_gui: pd process exited Mar 26 17:23:18 Computer-di-Libero-Mureddu crashdump[16333]: pd crashed Mar 26 17:23:25 Computer-di-Libero-Mureddu crashdump[16333]: crash report written to: /Volumes/scripta/Users/libero/Library/Logs/CrashReporter/pd.crash.log
Attached to this mail there is the crashlog.
ciao
Libero
... but it is just 'listplugins' (without the quotes) that goes in the message box.
Let me know how you get on.
Jamie
Libero,
On Sun, 26 Mar 2006 17:24:28 +0300 "Libero Mureddu" libero.mureddu@gmail.com wrote:
<snip> > > I think the compilation phase went well: here is the result, and I've > got a brand new dssi~.pd_darwin in the dssi folder. Here follow the > compilation message from the terminal. > > cc -DPD -O3 -Wall -W -Wshadow -Wstrict-prototypes -Wno-unused > -Wno-parentheses -Wno-switch -L/usr/local/lib/ -I ./ -I ../src > -I/usr/local/include/ -I ./include -I/usr/local/include/dssi/ -o > dssi~.o -c src/dssi~.c > cc -bundle -undefined suppress -flat_namespace -llo -o dssi~.pd_darwin dssi~.o > rm -f *.o > > But, when I try to load the dssi~ object, differently from your > binary, I get from pd the following error: > > /Applications/Pd-extended.app/Contents/Resources/Scripts/../extra/dssi~.pd_darwin: > dlopen (/Applications/Pd-extended.app/Contents/Resources/Scripts/../extra/dssi~.pd_darwin, > 10): Symbol not found: _LADSPAPluginSearch > Referenced from: > /Applications/Pd-extended.app/Contents/Resources/Scripts/../extra/dssi~.pd_darwin > Expected in: flat namespace > > dssi~ > ... couldn't create >
This is my fault again! I haven't updated the CVS makefile for a while. I've now put the 'correct' makefile in CVS.
Thanks for your patience with this.
(BTW, is there a way on pd on mac to copy and paste the messages from Pd window?)
Have you tried ctrl-V instead of Apple-V. Other than that - I'm a mainly a Linux user, so I couldn't tell you.
Jamie
On 3/27/06, Jamie Bullock jamie@postlude.co.uk wrote:
Libero,
On Sun, 26 Mar 2006 17:24:28 +0300 "Libero Mureddu" libero.mureddu@gmail.com wrote:
<snip> > > I think the compilation phase went well: here is the result, and I've > got a brand new dssi~.pd_darwin in the dssi folder. Here follow the > compilation message from the terminal. > > cc -DPD -O3 -Wall -W -Wshadow -Wstrict-prototypes -Wno-unused > -Wno-parentheses -Wno-switch -L/usr/local/lib/ -I ./ -I ../src > -I/usr/local/include/ -I ./include -I/usr/local/include/dssi/ -o > dssi~.o -c src/dssi~.c > cc -bundle -undefined suppress -flat_namespace -llo -o dssi~.pd_darwin dssi~.o > rm -f *.o > > But, when I try to load the dssi~ object, differently from your > binary, I get from pd the following error: > > /Applications/Pd-extended.app/Contents/Resources/Scripts/../extra/dssi~.pd_darwin: > dlopen (/Applications/Pd-extended.app/Contents/Resources/Scripts/../extra/dssi~.pd_darwin, > 10): Symbol not found: _LADSPAPluginSearch > Referenced from: > /Applications/Pd-extended.app/Contents/Resources/Scripts/../extra/dssi~.pd_darwin > Expected in: flat namespace > > dssi~ > ... couldn't create >
This is my fault again! I haven't updated the CVS makefile for a while. I've now put the 'correct' makefile in CVS.
Thanks for your patience with this.
Hi, I'm an happy tester, don't worry :-) Unfortunately, I get the same error as above. I just briefly resume what I did: cd to the external folder, cvs update -d, in the list of updated items there is a line with: M postlude/dssi/makefile, and again, make and copied the dssi~pd_darwin to the extra folder in the pd.app.
(BTW, is there a way on pd on mac to copy and paste the messages from Pd window?)
Have you tried ctrl-V instead of Apple-V. Other than that - I'm a mainly a Linux user, so I couldn't tell you.
Unfortunately it doesn't work.
Libero
Jamie
Hi,
On Mon, 27 Mar 2006 16:10:51 +0300 "Libero Mureddu" libero.mureddu@gmail.com wrote:
<snip> > Hi, I'm an happy tester, don't worry :-) > Unfortunately, I get the same error as above. I just briefly resume what I did: > cd to the external folder, > cvs update -d, > in the list of updated items there is a line with: M > postlude/dssi/makefile, and again, make and copied the dssi~pd_darwin > to the extra folder in the pd.app. > >
Have you tried 'make clean' then 'make'. It sounds like when you tried to recompile, it didn't compile jutils. Doing 'make clean' will remove dssi~.pd_linux and force a recompile. the output should be something like:
cc -foo ... -bar -c src/jsearch.c cc -foo ... -bar -c src/jload,c cc -foo ... -bar -c src/dssi~.c cc -bundle -foo ... -bar -o dssi~.pd_darwin dssi~.o jload.o jsearch.o
Jamie