Hi,
I think the problem is due to the fact that the output
of yacc and (f)lex are part of the distribution of
saolc. These outputs may be OK for some platforms, but
they don't work on Linux. The 'outputs' I am talking
about are:
sa_encode.yy.c
saol.tab.c
saol.tab.h
saol.yy.c
The solution is to remove these files and to use the
following settings in the Makefile (of course you must
remove or comment out the settings for other operating
systems):
Use these for optimized mode on Linux:
--------------------------------------
YACC = yacc
LEX = flex
CXX = g++
CC = gcc
CFLAGS = -c -O3
C2FLAGS = $(CFLAGS)
C++FLAGS = $(CFLAGS) -DCPP_MEMORY
LDFLAGS = -lm
Use these for debug mode on Linux:
----------------------------------
YACC = yacc
LEX = flex -d
CXX = g++
CC = gcc
CFLAGS = -c -g -O0 -DYYDEBUG=1
C2FLAGS = $(CFLAGS)
C++FLAGS = $(CFLAGS) -DCPP_MEMORY
LDFLAGS = -lm
You can also modify the 'clean' rule:
clean:
rm -f *.o saolc saolc_no_sbf saenc sa_decoder ac
*.tab.* *.yy.*
Then execute a 'make clean' followed by a 'make' and
everything should work fine (apart from a bunch
warnings perhaps).
Hope this helps.
Koen Dejonghe.
"reculer pour mieux sauter"
--- Richard Dobson <rwd@cableinet.co.uk> wrote:
> I have reached the stage of needing to test my WAV
> file input routines,
> only to hit an unexpected problem; it does not
> ~seem~ to be related to
> my Win32 build, as I have not changed anything other
> than to add WAV
> support.
>
> I used a watered-down version of in.saol (without
> the flange), and have
> hit an error which suggests that the infile
> properties are not getting
> written to the context structure. I get the message:
>
> "Not that many input channels to instrument..."
> [saol_interp.c]
>
> reporting channels = 0, whereas I am inputting a
> stereo file. This also
> happens with aif input, which I have not touched.
> Under the debugger,
> the context seems to be missing most information
> about it.
>
> Is this a known saolc bug/feature, or is it likely
> to be specific to my
> build?
>
> I had hoped to run saolc on Linux, but my attempts
> to defeat the
> objections of gcc (specifically to the line:
>
> FILE *yyin = {stdin}, *yyout = {stdout};
>
> in saol.yy.c, which throws an error about not
> initializing with a
> constant)
>
> have so far been unsuccessful, so I can't run saolc
> on my Linux system
> as a reference. I am an expert neither on gcc nor on
> make; if anyone has
> a magic makefile which is RedHat-6 friendly, I will
> be very glad to see
> it!
>
>
> Richard Dobson
>
>
>
> --
> Test your DAW with my Soundcard Attrition Page!
> http://wkweb5.cableinet.co.uk/rwd (LU: 23rd August
> 1999)
> CDP: http://www.bath.ac.uk/~masjpf/CDP/CDP.htm (LU:
> 14th June 1999)
>
__________________________________________________
Do You Yahoo!?
Bid and sell for free at http://auctions.yahoo.com
This archive was generated by hypermail 2b29 : Wed May 10 2000 - 12:15:33 EDT