From: J.P. K. <jp...@he...> - 2001-12-09 22:22:05
|
> Aah, joy; now we've away from linux a little, again, I've having problems compiling Bah, and loads of warnings. Took me ages to get the warnings down to a manageable level too. I'll talk to Adrian and Keith about when they think the code will be reasonably stable from their point of view. > Any clues on what this error actually *means*? I think the error is the previous one rather than that one.. rm -f interface.o g++ -c -g -Wall -Wcast-qual -Wparentheses -Wwrite-strings -Wconversion interface.c interface.c: In function `void bailout(int)': interface.c:3599: type mismatch with previous external decl /usr/include/signal.h:279: previous external decl of `const char *const sys_siglist[64]' make: *** [interface.o] Error 1 mudstring.h \ make: mudstring.h: Command not found make: *** [stringutil.o] Error 127 > Solutions accepted, but if I understand the error I might be able to chase it further... > > make: *** [stringutil.o] Error 127 > rm -f netmud.o > g++ -c -g -Wall -Wcast-qual -Wparentheses -Wwrite-strings -Wconversion netmud.c > make: Target `by_default_just_make' not remade because of errors. > uglyadm@chisel:~/src/UglyCODE$ > > > Also, I've had to doctor interface.c and netmud.c: > > uglyadm@chisel:~/src/UglyCODE$ cvs diff > chi...@cv...'s password: > ? version.h > cvs server: Diffing . > Index: interface.c > =================================================================== > RCS file: /cvsroot/uglycode/UglyCODE/interface.c,v > retrieving revision 1.30 > diff -r1.30 interface.c > 3599c3599 > < extern const char * const sys_siglist[]; > --- > > //extern const char * const sys_siglist[]; > Index: netmud.c > =================================================================== > RCS file: /cvsroot/uglycode/UglyCODE/netmud.c,v > retrieving revision 1.7 > diff -r1.7 netmud.c > 21a22 > > #ifndef linux > 22a24 > > #endif > uglyadm@chisel:~/src/UglyCODE$ > > > I've heard rumours that autoconf, etc are hard work. Is it likely to > make things like this happen less? They have bad habits more than anything else. Better still would be to doctor the Makefile to have accept parameters, or work out its OS vaguely. Pretty much the code was at the state where it would cope with BSD, sysV or Linux. > The code seems to be full of "#if[n]def <OS type>", and it still > doesn't seem to compile properly. Would auto* alleviate this? You'd end up with the same style of code, only more so. The best thing would be to write portable code, but this isn't always possible. I worked on making the code compile with (almost) no errors on multiple platforms - so as to make tracking at least some of the other errors stand out. I hope to get back to that state - at least now I've dealt with the current project so I have a bit of time. > Chisel Wright (ch...@he...) Julian |