Subject: Re: [ecasound] sys-readline and -y
From: Kai Vehmanen (k_AT_eca.cx)
Date: Mon Mar 10 2003 - 23:53:44 EET
On Sun, 16 Feb 2003, raoul.megelas wrote:
>> what is exactly your sys-readline version?
> readline.h: !!! extern rl_library_version !!!
> and in the source file: rl_library_version = 4.2
Hmm, it seems that readline-4.2 does not define RL_READLINE_VERSION, which
is used by ecasound to select which function prototypes to use. Because of
this, you get the...
> eca-curses.cpp: In member function `void ECA_CURSES::init_readline_support()':
> eca-curses.cpp:114: invalid conversion from `char**(*)()' to `char**(*)(const
> char*, int, int)'
> eca-curses.cpp: In function `char** ecasound_completion(char*, int, int)':
> eca-curses.cpp:149: invalid conversion from `char*(*)()' to `char*(*)(const
> char*, int)'
... error. This was added to readline-4.2a:
b. New #defines in readline.h: RL_READLINE_VERSION, currently 0x0402,
RL_VERSION_MAJOR, currently 4, and RL_VERSION_MINOR, currently 2.
So readline-4.2 has a different API, but no API version info in the
headers. Ugh, this is just the reason why I've included my own version
of readline along with ecasound. ;)
> ecasound_debug -y:100 -o:/dev/dsp
> here the response is:
> Error! No audio object defined.
> this is correct, but after:
> segfault! core dump.
Hmm, can anyone else verify this? I don't get the segfault, but:
###| ~ |$ ecasound_debug -y:100 -o:/dev/dsp
Error! Non-existant last audio object.
(eca-chainsetup-parser) Warning! Only 0+0 of the expected 2 parameters
were recognized succesfully.
--- ecasound: ERROR: [ECA-SESSION] : "Invalid argument, unable to parse: '-y:100'" --cut--
Just a wild guess, you didn't happen to compile wit -fomit-frame-pointer? In the above case, ecasound reports the error using an C++ exception. Omitting the frame-pointer, while nice for C apps, while break exception handling in C++.
-- http://www.eca.cx Audio software for Linux!
This archive was generated by hypermail 2b28 : Mon Mar 10 2003 - 23:46:08 EET