[Stk] STK with Puredata

Gary Scavone gary at ccrma.Stanford.EDU
Fri Aug 27 15:33:32 PDT 2010


Hi Stephane,

I don't support that STK "distribution" ... it looks to be pretty old.  But the error messages appear to be related to the Stk namespace.  Maybe there is a flag you need to provide to the compiler to support namespaces?

--gary

On 2010-08-27, at 7:18 AM, Stephane Nguyen wrote:

> Hi all!
> 
> I saw the message from Pierre Massat in the archives from june, I just
> got the same problem with the clarinet build process from the tutorial
> "Embeding STK instruments in Pd" , it seems there is some trouble
> with stk in the build process.
> 
> (my OS is ubuntu lucid 64)
> 
> and from the procedures of this tuto,here is what i get :
> 
> steph at zik-station:~/Bureau/stk_test$ make
> g++ -c -O3 -march=core2 -DPD -I/home/steph/auto-build/pd-extended/pd/src -I/usr/include/stk -I/usr/local/include/flext clarinet.cpp -o pd-linux/clarinet.o
> clarinet.cpp:55: error: ISO C++ forbids declaration of ‘Instrmnt’ with no type
> clarinet.cpp:55: error: expected ‘;’ before ‘*’ token
> clarinet.cpp:56: error: ISO C++ forbids declaration of ‘Effect’ with no type
> clarinet.cpp:56: error: expected ‘;’ before ‘*’ token
> clarinet.cpp:57: error: ‘BiQuad’ does not name a type
> clarinet.cpp: In constructor ‘clarinet::clarinet(float)’:
> clarinet.cpp:88: error: ‘inst’ was not declared in this scope
> clarinet.cpp:89: error: ‘effect’ was not declared in this scope
> clarinet.cpp:92: error: ‘filter’ was not declared in this scope
> clarinet.cpp: In member function ‘void clarinet::setFreq(float)’:
> clarinet.cpp:112: error: ‘inst’ was not declared in this scope
> clarinet.cpp: In member function ‘void clarinet::setVolume(float)’:
> clarinet.cpp:119: error: ‘inst’ was not declared in this scope
> clarinet.cpp: In member function ‘virtual bool clarinet::NewObjs()’:
> clarinet.cpp:130: error: ‘inst’ was not declared in this scope
> clarinet.cpp:130: error: expected type-specifier before ‘Clarinet’
> clarinet.cpp:130: error: expected ‘;’ before ‘Clarinet’
> clarinet.cpp:135: error: expected type-specifier before ‘StkError’
> clarinet.cpp:135: error: expected ‘)’ before ‘&’ token
> clarinet.cpp:135: error: expected ‘{’ before ‘&’ token
> clarinet.cpp:135: error: expected primary-expression before ‘)’ token
> clarinet.cpp:135: error: expected ‘;’ before ‘)’ token
> clarinet.cpp: In member function ‘virtual void clarinet::ProcessObjs(int)’:
> clarinet.cpp:157: error: ‘inst’ was not declared in this scope
> clarinet.cpp: In member function ‘virtual void clarinet::m_signal(int, float* const*, float* const*)’:
> clarinet.cpp:170: error: ‘inst’ was not declared in this scope
> make: *** [pd-linux/clarinet.o] Erreur 1
> 
> 
> Then, just after this , I decided to
> try stk2pd from here :
> 
> https://ccrma.stanford.edu/wiki/Stk2pd
> 
> (on this page ,the binaries files in the file "stk2pd-externes-linux-07272007.tar.gz"
> are still working with PD-extended 0.42.5 under ubunutu lucid 32bits with stk 4.4.2 on my 
> netbook)
> 
> At first,autoconf didn't want to write a configure file :
> 
> steph at zik-station:~/src/stk2pd$ autoconf
> configure.ac:130: error: AC_SUBST: `pd_suffix ' is not a valid shell variable name
> 
> Removing the spaces near the parentheses in the configure.ac (line 130 to 137)resolved the
> problem. (^^)
> 
> Then :
> 
> steph at zik-station:~/src/stk2pd$ ./configure --with-pd-dir=/home/steph/auto-build/pd-extended/pd/src --with-stk-dir=/home/steph/src/stk-4.4.2/
> checking build system type... x86_64-unknown-linux-gnu
> checking host system type... x86_64-unknown-linux-gnu
> checking for gcc... gcc
> checking whether the C compiler works... yes
> checking for C compiler default output file name... a.out
> checking for suffix of executables... 
> checking whether we are cross compiling... no
> checking for suffix of object files... o
> checking whether we are using the GNU C compiler... yes
> checking whether gcc accepts -g... yes
> checking for gcc option to accept ISO C89... none needed
> checking whether ln -s works... yes
> checking for g++... g++
> checking whether we are using the GNU C++ compiler... yes
> checking whether g++ accepts -g... yes
> checking whether we are using the GNU C++ compiler... (cached) yes
> checking whether g++ accepts -g... (cached) yes
> cflags -g -O2
> ldflags 
> checking how to run the C preprocessor... gcc -E
> checking for grep that handles long lines and -e... /bin/grep
> checking for egrep... /bin/grep -E
> checking for ANSI C header files... yes
> checking for sys/types.h... yes
> checking for sys/stat.h... yes
> checking for stdlib.h... yes
> checking for string.h... yes
> checking for memory.h... yes
> checking for strings.h... yes
> checking for inttypes.h... yes
> checking for stdint.h... yes
> checking for unistd.h... yes
> checking fcntl.h usability... yes
> checking fcntl.h presence... yes
> checking for fcntl.h... yes
> checking sys/ioctl.h usability... yes
> checking sys/ioctl.h presence... yes
> checking for sys/ioctl.h... yes
> checking sys/time.h usability... yes
> checking sys/time.h presence... yes
> checking for sys/time.h... yes
> checking termio.h usability... yes
> checking termio.h presence... yes
> checking for termio.h... yes
> checking for unistd.h... (cached) yes
> checking for an ANSI C-conforming const... yes
> checking for size_t... yes
> checking whether time.h and sys/time.h may both be included... yes
> checking whether byte ordering is bigendian... no
> 
> pd dir is /home/steph/auto-build/pd-extended/pd/src
> 
> 
> pd binary dir is /home/steph/auto-build/pd-extended/pd/src/../bin/pd
> 
> checking m_pd.h usability... yes
> checking m_pd.h presence... yes
> checking for m_pd.h... yes
> 
> stk dir is /home/steph/src/stk-4.4.2/
> 
> checking for cos in -lm... yes
> checking for pthread_create in -lpthread... yes
> checking for main in -lstk... yes
> checking for audio API... checking for snd_pcm_open in -lasound... yes
> checking for jack_client_new in -ljack... yes
> checking whether gcc needs -traditional... no
> checking for strstr... no
> configure: creating ./config.status
> config.status: creating Makefile
> 
> 
> 
> 
> steph at zik-station:~/src/stk2pd$ make
> ./ProcessInstrument Clarinet
> g++ -export_dynamic -shared -g -O2 -Wall -D__GXX__ -Wshadow -Wno-unused -Wno-parentheses -Wno-switch -D_LANGUAGE_C_PLUS_PLUS -Woverloaded-virtual -I/home/steph/auto-build/pd-extended/pd/src -I/home/steph/src/stk-4.4.2//include -I/home/steph/src/stk-4.4.2/ -funroll-loops -fomit-frame-pointer -DPD -D__LITTLE_ENDIAN__  -D__LINUX_JACK__ -D__LINUX_ALSA__ -D__LINUX_ALSASEQ__ -DRAWWAVE_PATH=\"./rawwaves\" -o externs/Clarinet~.pd_linux cppfiles/Clarinet~.cpp -ljack -lasound -lstk -lpthread -lm  -L/home/steph/src/stk-4.4.2//src/Release -L/home/steph/src/stk-4.4.2//src -L/usr/lib
> cppfiles/Clarinet~.cpp:37: error: ISO C++ forbids declaration of ‘Clarinet’ with no type
> cppfiles/Clarinet~.cpp:37: error: expected ‘;’ before ‘*’ token
> cppfiles/Clarinet~.cpp: In function ‘t_int* Clarinet_perform(t_int*)’:
> cppfiles/Clarinet~.cpp:56: error: ‘struct _Clarinet’ has no member named ‘stk’
> cppfiles/Clarinet~.cpp: In function ‘void Clarinet_noteOn(t_Clarinet*, t_floatarg)’:
> cppfiles/Clarinet~.cpp:67: error: ‘struct _Clarinet’ has no member named ‘stk’
> cppfiles/Clarinet~.cpp: In function ‘void Clarinet_freq(t_Clarinet*, t_floatarg)’:
> cppfiles/Clarinet~.cpp:76: error: ‘struct _Clarinet’ has no member named ‘stk’
> cppfiles/Clarinet~.cpp: In function ‘void Clarinet_ctrl(t_Clarinet*, t_symbol*, int, t_atom*)’:
> cppfiles/Clarinet~.cpp:87: error: ‘struct _Clarinet’ has no member named ‘stk’
> cppfiles/Clarinet~.cpp: In function ‘void* Clarinet_new()’:
> cppfiles/Clarinet~.cpp:113: error: ‘struct _Clarinet’ has no member named ‘stk’
> cppfiles/Clarinet~.cpp:113: error: expected type-specifier before ‘Clarinet’
> cppfiles/Clarinet~.cpp:113: error: expected ‘;’ before ‘Clarinet’
> cppfiles/Clarinet~.cpp: In function ‘void Clarinet_free(t_Clarinet*)’:
> cppfiles/Clarinet~.cpp:121: error: ‘struct _Clarinet’ has no member named ‘stk’
> make: *** [all] Erreur 1
> 
> 
> Could you tell me what to do?
> 
> Best regards,
> 
> Stephane
> _______________________________________________
> Stk mailing list
> Stk at ccrma.stanford.edu
> http://ccrma-mail.stanford.edu/mailman/listinfo/stk




More information about the Stk mailing list