|
From: Alan W. I. <ir...@be...> - 2002-01-29 19:24:25
|
More information (hot off the presses). I hope you read all your mail
before responding to the previous messages in this thread.
If I add -ltclmatrixd to the link lines in the examples Makefile,
all C and Tk build and run without problems. So problem solved, and
thanks for listening as I worked through this.
Have you cross-platform guys tried all the examples? I wonder how many
other platforms demand the -ltclmatrixd link line? I wonder how Debian
woody works fine without requiring it?
Alan
email: ir...@be...
phone: 250-727-2902 FAX: 250-721-7715
snail-mail:
Dr. Alan W. Irwin
Department of Physics and Astronomy,
University of Victoria, P.O. Box 3055,
Victoria, British Columbia, Canada, V8W 3P6
__________________________
Linux-powered astrophysics
__________________________
On Tue, 29 Jan 2002, Alan W. Irwin wrote:
> I am now discovering more than I want to about atexit. I was wrong below,
> atexit is not obscure at all, but that leads to new questions.
>
> It appears in tek.c
> (and commented out in gnome.c). Here are the tek.c lines found by grep.
>
> tek.c:static void tty_atexit (void);
> tek.c:static void tty_atexit (void) {}
> tek.c: if (atexit(tty_atexit))
> tek.c: fprintf(stderr, "Unable to set up atexit handler.\n");
> tek.c:tty_atexit(void) /* exit handler */
>
> atexit (which I am sure you knew, but I didn't) is a standard K&R function
> (see p. 253 of the K&R book) defined like
>
> int atexit(void (*fcn)(void))
>
> from p. 119 the & operator is not needed on the function name in argument
> lists so
> if (atexit(tty_atexit)) above seems fine to me.
>
> Also, a simple test programme consisting of
>
> #include <stdio.h>
>
> main()
> {
>
> printf("Hello, World!\n");
> atexit();
> }
>
> compiles and links fine with the command
>
> gcc test.c
>
> on both my Debian ***and RH 7.1 systems***. (Of course it segfaults upon
> execution after printing out the Hello World! message since the argument is
> incorrect on atexit.) So as expected from the K&R book, atexit is just part
> of the standard library on both systems, and nothing special has to be done
> to link against it.
>
> So I am completely stumped why I am getting a linking error concerning
> atexit when I attempt to link either our C or tk examples, but not
> when I link our C++ or fortran examples.
>
> Alan
>
>
> email: ir...@be...
> phone: 250-727-2902 FAX: 250-721-7715
> snail-mail:
> Dr. Alan W. Irwin
> Department of Physics and Astronomy,
> University of Victoria, P.O. Box 3055,
> Victoria, British Columbia, Canada, V8W 3P6
> __________________________
>
> Linux-powered astrophysics
> __________________________
>
> On Tue, 29 Jan 2002, Alan W. Irwin wrote:
>
> > On my RedHat 7.1 system I cannot get either the C or tk examples to build
> >
> > a typical error message is
> >
> > gcc -c -O -I/usr/include/plplot/.. -I. -I/usr/include/gtk-1.2
> > -I/us
> > r/include/glib-1.2 -I/usr/lib/glib/include -I/usr/X11R6/include
> > -I/usr/include -
> > I/usr/lib/gnome-libs/include xtk01.c
> > gcc xtk01.o \
> > -L/usr/lib -lplplotd -o xtk01 -litk3.1 -ltk8.3 -litcl3.1 -ltcl8.3
> > -L/usr/
> > X11R6/lib -lX11 -ldl -lm -lg2c -Wl,-rpath,/usr/lib
> > /usr/lib/libtclmatrixd.so.5: undefined reference to atexit'
> > collect2: ld returned 1 exit status
> > make: *** [xtk01] Error 1
> >
> > Interestingly, the fortran and c++ examples build and execute fine.
> >
> > I tried replacing gcc with g77 in the above, but it made no difference.
> >
> > I suspect there is some obscure library containing atexit that I am missing
> > on the RH 7.1 system, but which library is it? Once that is identified, I
> > can install the library and proceed. Another possibility is that
> > libtclmatrixd is not linked properly, but again I need to know the
> > name of the library which contains atexit.
> >
> > Any help in identifying the library containing atexit would be much
> > appreciated.
> >
> > Alan
> >
> >
> >
> > email: ir...@be...
> > phone: 250-727-2902 FAX: 250-721-7715
> > snail-mail:
> > Dr. Alan W. Irwin
> > Department of Physics and Astronomy,
> > University of Victoria, P.O. Box 3055,
> > Victoria, British Columbia, Canada, V8W 3P6
> > __________________________
> >
> > Linux-powered astrophysics
> > __________________________
> >
> >
> > _______________________________________________
> > Plplot-devel mailing list
> > Plp...@li...
> > https://lists.sourceforge.net/lists/listinfo/plplot-devel
> >
>
>
> _______________________________________________
> Plplot-devel mailing list
> Plp...@li...
> https://lists.sourceforge.net/lists/listinfo/plplot-devel
>
|