Mail Archives: cygwin/2002/03/28/19:33:14
Chris,
If you're going to take the time to respond, the least you could do is give
a useful answer.
Since unlike Chris, I do not know the answer, I'll illustrate how I
discovered it.
Hans is correct that there is no prototype for this function in any file
under /usr/include, though there is a mention of it:
% cd /usr/include
% egrep cygwin_stackdump $(find -type f)
./cygwin/version.h: 16: Export cygwin_stackdump
Upon examination, it is seen that this is in a long comment listing
API_MINOR changes.
Hans, if you're not aware of it, you should learn about the "nm" command
which dumps the symbol table of an object file or library. In circumstances
like this, I usually write a shell loop to examine all the libraries in
/usr/lib, applying nm to each and piping the output through egrep. Egrep's
-q option helps:
cd /usr/lib
for libName in *.a; do
nm $libName | (egrep -s cygwin_stackdump && echo $libName)
done
Doing this shows me that cygwin_stackdump is present in libc.a, libcygwin.a
and libg.a. An "ls -l" on these shows that libg.a is a symlink to libc.a. I
don't know what libcygwin.a is for, but it's about 100K bigger than libc.a.
Assuming you're linking with libc.a, you should be able to just call the
function (that is, if you compile with gcc options that don't demand
function prototypes). If you need the prototype, then I'd take it from
Chris' first answer on this topic that the default prototype for this
function would work. Namely: "extern int cygwin_stackdump(void)".
Good luck.
Randall Schulz
Mountain View, CA USA
At 15:05 2002-03-28, Christopher Faylor wrote:
>On Thu, Mar 28, 2002 at 03:13:15PM -0800, Hans Horn wrote:
> >I'm afraid not, as I do not know what files to #include so the runtime will
> >find cygwin_stackdump().
>
>I guess you're out of luck then.
>
>cgf
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
- Raw text -