[Stk] New STK release (4.4.0)

Julius Smith jos at ccrma.Stanford.EDU
Sat May 2 12:23:07 PDT 2009


Hi Gary,

To get the three example programs to link (sine sineosc foursine), I 
needed to add "-flat_namespace" to the CFLAGS:

diff -cb Makefile0 Makefile
*** Makefile0   2009-05-02 12:05:22.000000000 -0700
--- Makefile    2009-05-02 12:18:18.000000000 -0700
***************
*** 18,23 ****
--- 18,24 ----
   DEFS    += -D__LITTLE_ENDIAN__
   CFLAGS   = -O3 -Wall
   CFLAGS  += -I$(INCLUDE) -I$(INCLUDE)/../src/include
+ CFLAGS  += -flat_namespace
   LIBRARY = -lpthread -lm  -framework CoreAudio -framework 
CoreFoundation -framework CoreMidi

-------------------

I don't know if this is the best way to fix the problem, but without 
it, the configure-generated Makefile gets tons of undefined globals 
when linking.  (There is no LDFLAGS, so I used CFLAGS.)

Julius

At 12:01 PM 5/2/2009, Julius Smith wrote:
>Hi Gary,
>
>Here's what I needed to get configure to work on Mac OS X:
>
>./configure CXX=gcc LDFLAGS=-L/opt/local/lib --with-core
>
>The "nonobvious" override was LDFLAGS.  If not specified, it is 
>autogenerated without the -L, leading to the following configure failure:
>
>   configure:2119: error: C++ compiler cannot create executables
>
>This is because it generated the compiler test as
>
>   configure:2068: g++   /opt/local/lib conftest.cpp  >&5
>
>I.e., LDFLAGS expands without an "-L" in front of it.  I tried to 
>see how to fix this in configure.ac, but it seems rather to be a bug 
>in autoconf.
>
>By the way, I hear good things about SCons.  Paul Davis switched 
>over to it for Ardour et al. some time ago.  The autoconf tools 
>appear unmaintainably complicated to me (though impressive).
>
>Cheers,
>Julius
>
>At 11:48 AM 4/30/2009, Gary Scavone wrote:
>>Dear STKers,
>>
>>I just finished a new release of STK.  This update has been "in the
>>works" for more than a year and a half.  The most pressing issue was
>>to get rid of the virtual tick() function structure, which made things
>>very much slower than they should have been.  That entailed some
>>significant restructuring of the code and it took a long time to
>>determine the best way to proceed.  The new distribution should be at
>>least 30-50% faster than before, achieved in large part by inlining
>>many of the tick() functions.
>>
>>Significant changes include:
>>
>>- All classes embedded in the "stk" namespace (except RtAudio, RtMidi,
>>and RtError).
>>- Class WaveLoop renamed FileLoop.
>>- Significant efficiency improvements via code restructuring and
>>inlining.
>>- Some class source (.cpp) files deleted as part of inlining
>>(Generator, Filter, Function, WvIn, WvOut, Effect, Instrmnt, BowTable,
>>ReedTable, JetTable, Vector3D).
>>- Updates to RtAudio and RtMidi.
>>- Previous "tickFrame()" functions renamed "tick" for more consistent
>>API.
>>- More consistent and scalable approach to multichannel data and
>>computations.
>>- Multichannel support added to Granulate class.
>>- Filter class made abstract. New Iir and Fir classes made for non-
>>order-specific filtering.
>>- New TapDelay class.
>>- SubNoise class deleted (same as sub-sampled "ticking" of Noise class).
>>
>>The easy way to deal with the namespace is to put a "using namespace
>>stk;" at the top of your program files.
>>
>>As usual, everything is detailed at the website:
>>
>>     http://ccrma.stanford.edu/software/stk/
>>
>>Happy programming!
>>
>>Regards,
>>
>>--gary
>>
>>_______________________________________________
>>Stk mailing list
>>Stk at ccrma.stanford.edu
>>http://ccrma-mail.stanford.edu/mailman/listinfo/stk
>
>
>Julius O. Smith III <jos at ccrma.stanford.edu>
>Prof. of Music and Assoc. Prof. (by courtesy) of Electrical Engineering
>CCRMA, Stanford University
>http://ccrma.stanford.edu/~jos/


Julius O. Smith III <jos at ccrma.stanford.edu>
Prof. of Music and Assoc. Prof. (by courtesy) of Electrical Engineering
CCRMA, Stanford University
http://ccrma.stanford.edu/~jos/  



More information about the Stk mailing list