[ODE] Re: configurator patch
Sean S Cullen
Sean at blackscreen.org
Fri Jul 11 10:22:01 2003
Just a thought but if your using a C++ compiler you might need
extern "C"
{
int unlink(char* pathname);
}
> Russ Smith wrote:
> >>configurator.c really needs the attached patch (otherwise
> >>'unlink' and 'exit' could be undefined, and this chokes
> >>gcc 3.1).
> >
> >
> > i'm surprised that gcc has a fatal error rather than just an
> "undefined function" warning, but anyway i've fixed it up this way:
> >
> > /* include some system header files. <stdio.h> and <stdlib.h> are
> probably
> > * safe on all systems, but <unistd.h> may not be, so we make
> explicit * prototypes for the other functions we need.
> > */
> >
> > #include <stdio.h>
> > #include <stdlib.h>
> >
> > int unlink (char *pathname);
>
> Interestingly, this fix is still broken on my system:
> /tmp/cc7HiJIl.o(.text+0x181): undefined reference to `unlink(char*)' and
> still needs <unistd.h>, whereupon all is happy.
>
> I can only assume that unlink() is defined as a macro in unistd.h!
> *checks* Nope, but unistd.h is a strange beast (like all system
> headers seem to be nowadays) -- I quote:
>
> extern int unlink (__const char *__name) __THROW;
>
> (but merely interpolating this into configurator.c does not
> change matters.)
>
> If this is something very specific to the combination of my
> version of glibc and my version of gcc then it's of no
> consequence (it's easy enough to fix manually).
>
> --Adam
> --
> Adam D. Moss . ,,^^ adam@gimp.org http://www.foxbox.org/ co:3
> "When I was young, I would break down and cry whenever mom made me throw
> an empty toilet paper tube in the trash can. I just imagined it sitting
> at the dump, all cardboard and sad." -- T.Farnon
>
>
> _______________________________________________
> ODE mailing list
> ODE@q12.org
> http://q12.org/mailman/listinfo/ode