[ecasound] linking programs against libecasound dumps core

New Message Reply Date view Thread view Subject view Author view Other groups

Subject: [ecasound] linking programs against libecasound dumps core
From: MULLER Miklos (mmuller@lbcons.net)
Date: Mon Mar 05 2001 - 11:58:19 EET


Hello ecasounders,

Recently i ran into this really *wonderful* program. All my compliments,
really. I was looking for such a program for years, and now my dream came
true! I primarily use ecasound as a real-time guitar effect processor.
I was amazed, that i can apply effects with almost unnoticable latency.

I decided to write a small program to control the effect settings
via a small GUI, which would display a few basic knobs to play with.

I copied the ecidoc_example.c to my working folder and compiled with the
following command line:

  cc -c -o ecidoc_example.o ecidoc_example.c
  cc -lecasoundc ecidoc_example.o -o ecidoc_example

I tried to run it, but it exited immediately with a

  Segmentation fault (core dumped)

message. So I compiled ecasound again with --enable-debug, stripped down
the ecidoc_example.c to: "int main() { return(0); }", and it still dumped
core. (the only difference was that i linked against "ecasoundc_debug").
I ran gdb to see what is happening, and got the following results:

  $ gdb ./ecidoc_example core
  [...]
  Core was generated by `./ecidoc_example'.
  Program terminated with signal 11, Segmentation fault.
  Reading symbols from /usr/local/lib/libecasoundc_debug.so.0...done.
  Reading symbols from /lib/libc.so.6...done.
  Reading symbols from /usr/local/lib/libecasound_debug.so.7...done.
  Reading symbols from /usr/local/lib/libkvutils.so.2...done.
  Reading symbols from /lib/libdl.so.2...done.
  Reading symbols from /lib/libpthread.so.0...done.
  Reading symbols from /usr/lib/libstdc++-libc6.1-1.so.2...done.
  Reading symbols from /lib/libm.so.6...done.
  Reading symbols from /lib/ld-linux.so.2...done.
  #0 0x403749a4 in basic_string<char, string_char_traits<char>, __default_alloc_template<true, 0> >::basic_string (this=0xbffff5f8, s=0x0)
      at ../../../libstdc++/std/straits.h:125
  125 ../../../libstdc++/std/straits.h: No such file or directory.

I did a stack print:

  (gdb) bt
  #0 0x403749a4 in basic_string<char, string_char_traits<char>, __default_alloc_template<true, 0> >::basic_string (this=0xbffff5f8, s=0x0)
      at ../../../libstdc++/std/straits.h:125
  #1 0x4021a671 in ECA_RESOURCES::ECA_RESOURCES (this=0xbffff678)
      at eca-resources.cpp:26
  #2 0x4024fba0 in ECA_PRESET_MAP::ECA_PRESET_MAP (this=0x40328640)
      at eca-preset-map.cpp:29
  #3 0x4024cf41 in global constructors keyed to register_default_objects ()
      at eca-static-object-maps.cpp:94
  #4 0x40250e14 in __do_global_ctors_aux ()
      at /usr/include/g++-2/stl_vector.h:150
  #5 0x401cdbba in ?? () at /usr/include/g++-2/stl_alloc.h:504
     from /usr/local/lib/libecasound_debug.so.7
  Current language: auto; currently c++

Any clue on what can the problem be? I read the docs, and fixed .ecasoundrc
so that midi-device points to the correct device. ecasound -c runs without
any problems on both two machines I tried. I won't go in too much details
in hardware, since the problem exists on two different machines.

Software I run:

  - Stock RedHat 6.2 on two different machines,
  - Stock 2.2.14 kernel on the 1st machine,
  - 2.2.18 kernel on the other machine
  - gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)
  - ecasound-1.9dev3

Thanks in advance:
MULLER Miklos
http://lbcons.net

--
To unsubscribe send message 'unsubscribe' in the body of the
message to <ecasound-list-request@wakkanet.fi>.


New Message Reply Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : Mon Mar 05 2001 - 12:10:37 EET