flt2egg fails on LinuxPPC


I try to compile Panda with the following command line:

./makepanda/./makepanda.py --everything --no-nspr --no-vrpn --no-fmod --no-nvidiacg --no-fftw

on Ubuntu-Linux PPC.

However it fails with the following error:

built/bin/flt2egg -pr ../= -o built/tmp/tmp.egg dmodels/src/gui/dialog_box_gui.flt

Reading dmodels/src/gui/dialog_box_gui.flt
Assertion failed: reader.get_opcode() == FO_header at line 1238 of pandatool/src/flt/fltHeader.cxx
Could not extract record for FltHeader db
Unable to read: invalid record

Any ideas what is going on?


Is the PPC chip a big-endian architecture? I’ll bet that makepanda didn’t correctly configure Panda to build with big-endian support.

If the PPC is indeed big-endian, one easy hack is to modify makepanda.py. Look for a line like this:

    ("WORDS_BIGENDIAN",                'UNDEF',     'UNDEF'),

And replace it with:

    ("WORDS_BIGENDIAN",                '1',             '1'),

Then make a clean build.


It may sound silly but how do I make “clean” with makepanda.py?

makepanda.py clean

does not seem to do the trick :-/

For the moment I rely on the dependency tracking that everything is rebuilt correctly :wink:


Thank you very much for your help! Now it builds fine and it works!


I’m glad the dependency checking worked.

To make a clean build, just remove the ‘built’ directory.