Trouble making dtool on GNU/Linux


After a bunch of successful lines after running make in dtool, I get the following (on a BU Linux [Fedora Core]) system.

make[1]: Entering directory /mnt/localhd/cjmorlan/src/panda3d-2004-07-27/dtool/src/cppparser' g++ -ftemplate-depth-30 -c -o Opt3-Linux/cppParser_cppBison.o -I. -I/mnt/localhd/cjmorlan/src/panda3d-2004-07-27/dtool -I../dtoolbase -I../dtoolutil -I/usr/include/python2.3 -O2 cppBison.cxx In functionint cppyyparse()’: error: invalid types int[int]' for array subscript error: invalid typesint[int]’ for array subscript error: invalid types int[int]' for array subscript make[1]: *** [Opt3-Linux/cppParser_cppBison.o] Error 1 make[1]: Leaving directory/mnt/localhd/cjmorlan/src/panda3d-2004-07-27/dtool/src/cppparser’
make: *** [cppparser] Error 2

Software versions:
bison (GNU Bison) 1.875c
gcc version 3.3.3 20040412 (Red Hat Linux 3.3.3-7)
GNU Make 3.80


There happens to be a known bug in bison version 1.875c. It’s unfortunate that this is the version distributed with Fedora core 2.

Fortunately, there’s an easy workaround. Put the following in your Config.pp file:

#define HAVE_BISON

Then re-run ppremake and make install. This will tell ppremake not to try to use your installed version of bison; instead, it will use the pregenerated grammar files.