[sword-devel] CVS and gcc3.0.4 compile error - fix included
Phillip Hoerter
sword-devel@crosswire.org
07 May 2002 00:13:26 -0400
Hello
I am running Mandrake 8.2 using gcc3.0.4 that came with it, on a dual
processor system. While attempting to compile sword cvs I got this
error. I solved it; the instructions are below. It appears that
gcc3.0.x has some differences that cause problems. I hope the fixes
help a little.
Thanks
Phill
Here is the error messsage:
g++ -DUSE_AUTOTOOLS -DGLOBCONFPATH=\"/usr/local/etc/sword.conf\" -DUNIX
-I. -I. -I.. -I../include -g -O2 -ftemplate-depth-25 -c
../src/modules/filters/gbfstrongs.cpp -MT gbfstrongs.lo -MD -MP -MF
.deps/gbfstrongs.TPlo -fPIC -DPIC
../src/modules/filters/gbfstrongs.cpp: In member function `virtual char
GBFStrongs::ProcessText(char*, int, const SWKey*, const SWModule*)':
../src/modules/filters/gbfstrongs.cpp:85: `isdigit' undeclared (first
use this
function)
../src/modules/filters/gbfstrongs.cpp:85: (Each undeclared identifier is
reported only once for each function it appears in.)
make[2]: *** [gbfstrongs.lo] Error 1
make[2]: Leaving directory `/home/phill/src/sword/lib'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/phill/src/sword'
make: *** [all] Error 2
Solution:
Add
#include <ctype.h>
to the file src/modules/filters/gbfstrongs.cpp
Same thing with src/modules/filters/thmlstrongs.cpp
src/modules/filters/thmlstrongs.cpp needs #include <stdarg.h>
src/modules/filters/gbfosis.cpp needs #include <stdarg.h>
src/modules/filters/greeklexattribs.cpp needs #include <ctype.h>
tests/localetest.cpp needs #include <iostream.h>
tests/keycast.cpp needs #include <iostream.h>
tests/treeidxtest.cpp needs just after the includes
using std::string; using std::cout; using std::endl;
examples/cmdline/search.cpp needs #include <iostream.h>
examples/cmdline/threaded_search.cpp needs #include <iostream.h>