After an emerge world yesterday, python audio stuff runs (yay!) and now Panda3d will neither run nor build (Noo!) Here’s an example of what I got this morning:
$ python Tut-Steam-Example.py
DirectStart: Starting the game.
Traceback (most recent call last):
File "Tut-Steam-Example.py", line 7, in <module>
import direct.directbase.DirectStart
File "/usr/share/panda3d/direct/directbase/DirectStart.py", line 3, in <module>
from direct.showbase import ShowBase
File "/usr/share/panda3d/direct/showbase/ShowBase.py", line 10, in <module>
from pandac.PandaModules import *
File "/usr/share/panda3d/pandac/PandaModules.py", line 26, in <module>
from libp3directModules import *
File "/usr/share/panda3d/pandac/libp3directModules.py", line 2, in <module>
Dtool_PreloadDLL("libp3direct")
File "/usr/share/panda3d/pandac/extension_native_helpers.py", line 79, in Dtool_PreloadDLL
imp.load_dynamic(module, pathname)
ImportError: /usr/lib/panda3d/libp3direct.so: undefined symbol: _ZrsRSiR9TiXmlNode
I figure I’ll rebuild and then it’ll be fine, right? It quit at 60%, like this…
$ ./makepanda/makepanda.py --everything
Generating library cache...
WARNING: Could not locate thirdparty package artoolkit, excluding from build
WARNING: Could not locate thirdparty package fcollada, excluding from build
WARNING: Could not locate thirdparty package nvidiacg, excluding from build
WARNING: Could not locate thirdparty package opencv, excluding from build
WARNING: Could not locate thirdparty package squish, excluding from build
WARNING: Could not locate thirdparty package vrpn, excluding from build
Generating dependencies...
[ 60%] Linking executable built/bin/p3dcparse
built/lib/libp3direct.so: undefined reference to `operator>>(std::basic_istream<char, std::char_traits<char> >&, TiXmlNode&)'
built/lib/libp3direct.so: undefined reference to `operator<<(std::basic_ostream<char, std::char_traits<char> >&, TiXmlNode const&)'
collect2: ld returned 1 exit status
Storing dependency cache.
Elapsed Time: 5 sec
Build terminated.
I’d have downgraded tinyxml but the previous working version is wiped out of the portage tree now. Fortunately, I don’t need to build the p3d runtime and nothing else in my system depends on tinyxml so I just unmerged it and Panda3d started its build over, and built through that point, and now works again. p3openal_audio works too