Hi,
I'm trying to compile the Maya2Egg exporter to generate files for the Panda3D engine. While Panda is a cross-platform engine, the exporter's traditionally been Win32 only. I'm trying to compile the exporter for linux so we don't need to keep a windows box around just to convert models. The compile is fine, but we're getting crashes that seem to be maybe related to a conflict between maya's version of Python and normal python; or perhaps something else, it's hard to tell. I'm not part of the panda dev team myself, but I've written maya exporters from scratch before so I'm sort of ok with the maya API. The thing that's slowing this all down is that the dev team (CMU's Entertainment Technology Center and Disney) don't have a license for Maya on Linux, so the edit/compile/test cycle is kinda slow.
The whole thread is at http://panda3d.org/phpbb2/viewtopic.php?t=5208 if anyone's interested in helping out with this ...
I have a couple specific questions:
- what exactly is the difference between maya's python-bin and normal python? Is it just a particular version, or did they do something to it?
- Does Maya HAVE to initialize python when it starts up, even if you don't need it in your app? It doesn't look like this exporter even uses python at all, but when I run it I get this
CODE
ImportError: No module named site
error.
If I set the PYTHONHOME variable I can get around that, but then I just get more segfaults.
do you have to have g++ 4.12 specifically? I'm using 4.2.3; is it possible that that's what's causing the trouble? I also had to hide maya's versions of libstdc++ and libgcc_s otherwise we kept getting linker errors related to ostream.
the helloWorld demo also crashes, and I think it's in the same place - Tstring::formatToWidth(). ????
CODE
#0 0xb2d6da72 in Tstring::formatToWidth () from /usr/autodesk/maya/lib/libFoundation.so
#1 0xb5fa7ef0 in TaboutAction::doCommand () from /usr/autodesk/maya/lib/libShared.so
#2 0xb48446f1 in Mel_Command_Dispatch () from /usr/autodesk/maya/lib/libCommandEngine.so
#3 0xb4869079 in f_assign () from /usr/autodesk/maya/lib/libCommandEngine.so
#4 0xb4867160 in node_exec () from /usr/autodesk/maya/lib/libCommandEngine.so
#5 0xb488a1bb in f_function_entry_node () from /usr/autodesk/maya/lib/libCommandEngine.so
#6 0xb4869079 in f_assign () from /usr/autodesk/maya/lib/libCommandEngine.so
#7 0xb4867160 in node_exec () from /usr/autodesk/maya/lib/libCommandEngine.so
#8 0xb48890eb in fc_if () from /usr/autodesk/maya/lib/libCommandEngine.so
#9 0xb4867160 in node_exec () from /usr/autodesk/maya/lib/libCommandEngine.so
#10 0xb488a1bb in f_function_entry_node () from /usr/autodesk/maya/lib/libCommandEngine.so
#11 0xb4867160 in node_exec () from /usr/autodesk/maya/lib/libCommandEngine.so
#12 0xb488915c in f_catch () from /usr/autodesk/maya/lib/libCommandEngine.so
#13 0xb4867160 in node_exec () from /usr/autodesk/maya/lib/libCommandEngine.so
#14 0xb48890eb in fc_if () from /usr/autodesk/maya/lib/libCommandEngine.so
#15 0xb4867160 in node_exec () from /usr/autodesk/maya/lib/libCommandEngine.so
#16 0xb4888fd2 in fc_ifelse () from /usr/autodesk/maya/lib/libCommandEngine.so
#17 0xb4867160 in node_exec () from /usr/autodesk/maya/lib/libCommandEngine.so
#18 0xb48890eb in fc_if () from /usr/autodesk/maya/lib/libCommandEngine.so
#19 0xb4867160 in node_exec () from /usr/autodesk/maya/lib/libCommandEngine.so
#20 0xb488a1bb in f_function_entry_node () from /usr/autodesk/maya/lib/libCommandEngine.so
#21 0xb4849ae5 in TcommandEngine::initCommand () from /usr/autodesk/maya/lib/libCommandEngine.so
#22 0xb484469d in Mel_Command_Dispatch () from /usr/autodesk/maya/lib/libCommandEngine.so
#23 0xb4867160 in node_exec () from /usr/autodesk/maya/lib/libCommandEngine.so
#24 0xb488a1bb in f_function_entry_node () from /usr/autodesk/maya/lib/libCommandEngine.so
#25 0xb4867160 in node_exec () from /usr/autodesk/maya/lib/libCommandEngine.so
#26 0xb4867326 in sophia_call_executable () from /usr/autodesk/maya/lib/libCommandEngine.so
#27 0xb488385a in SophiaExecutable::evaluate () from /usr/autodesk/maya/lib/libCommandEngine.so
#28 0xb4849e43 in TcommandEngine::sourceFile () from /usr/autodesk/maya/lib/libCommandEngine.so
#29 0xb20afe74 in TrunTimeCommandManager::load () from /usr/autodesk/maya/lib/libExtensionLayer.so
#30 0xb605f46b in TbaseApp::initGeneral () from /usr/autodesk/maya/lib/libShared.so
#31 0xb605e335 in TlibModeApp::initGeneral () from /usr/autodesk/maya/lib/libShared.so
#32 0xb208ab8c in Tapplication::start () from /usr/autodesk/maya/lib/libExtensionLayer.so
#33 0xb605f1c2 in libmain () from /usr/autodesk/maya/lib/libShared.so
#34 0x080494b8 in MLibrary::initialize ()
#35 0x08048fd3 in main ()
I just went and loaded up some older versions of Maya. In Maya 7 the helloWorld example gives me no problems. In 8.5 I get python import errors; if I set PYTHONHOME to /usr/autodesk/maya8.5 I get a segfault. I'm sure there's something real simple I'm missing.
thanks in advance ...