I am seeing a similar error with Maya 2008
Sam
Comment #2 on issue 14 by andrewk.imageengine: Maya 2011 linux build
http://code.google.com/p/cortex-vfx/issues/detail?id=14
exit() is a stdlib command. Can you try adding "#include <stdlib.h>" to
src/IECoreMaya/SystemExitCmd.cpp to see if that helps? Or try std::exit
or ::exit.
It is known that Cortex doesn't currently build with Maya 2011, but not for
this reason. We don't have internal plans to revisit Maya 2011 until the
new year. If you do manage to get it running in 2011, we'd be happy to see
the patch.
As for Maya 2008, we dropped support for that version as of Cortex 5.
You'll either have to use a Cortex 4 distribution, or update to Maya 2009
or 2010. It may be possible to patch cortex to work in Maya 2008, but I
believe we are using API functionality that isn't available until 2009.
Andrew
Thanks Andrew,
I've included the stdlib.h line but now there's an error in other place:
g++ -o src/IECoreMaya/bindings/FnParameterisedHolderBinding.os -c -pipe
-Wall -O2 -DNDEBUG -DBOOST_DISABLE_ASSERTS -fPIC -DIE_CORE_MAJORVERSION=5
-DIE_CORE_MINORVERSION=20 -DIE_CORE_PATCHVERSION=0 -I/usr/include/python2.6
-I/usr/include/python2.6 -DBOOST_PYTHON_MAX_ARITY=20 -D_BOOL
-DREQUIRE_IOSTREAM -I/usr/include/python2.6 -I/usr/include/python2.6
-DLINUX -Iinclude -I/usr/include/tbb -I/usr/include/OpenEXR
-I/usr/include/OpenEXR -I/usr/include/OpenEXR/OpenEXR
-I/usr/include/OpenEXR/OpenEXR -I/usr/include -I/usr/local/include
-I/usr/local/include -I/usr/local/include/freetype2 -I/usr/include/GL
-I/usr/autodesk/maya2011-x64/include
src/IECoreMaya/bindings/FnParameterisedHolderBinding.cpp
src/IECoreMaya/bindings/FnParameterisedHolderBinding.cpp:141: error: 'void
IECoreMaya::parameterisedHolderAssignModificationState(IECore::ObjectPtr,
IECore::CompoundDataPtr, IECore::ObjectPtr, IECore::CompoundDataPtr)'
should have been declared inside 'IECoreMaya'
scons: *** [src/IECoreMaya/bindings/FnParameterisedHolderBinding.os] Error 1
scons: building terminated because of errors.
I just did the same thing as before with scons, so maybe I should take a
closer look again. I'll post here how it goes,
edgar
It sounds as if you may be using a more recent version of gcc than we've
tested with - just out of interest what is the output of "g++ --version"?
Could you try replacing lines 141-147 of
IECoreMaya/bindings/FnParameterisedHolderBinding.cpp with the following :
namespace IECoreMaya
{
void parameterisedHolderAssignModificationState( IECore::ObjectPtr
originalValue, IECore::CompoundDataPtr originalClasses, IECore::ObjectPtr
newValue, IECore::CompoundDataPtr newClasses )
{
ParameterisedHolderModificationCmd::g_originalValue = originalValue;
ParameterisedHolderModificationCmd::g_originalClasses = originalClasses;
ParameterisedHolderModificationCmd::g_newValue = newValue;
ParameterisedHolderModificationCmd::g_newClasses = newClasses;
}
}
Thanks! It's all compiled now. I still have to test everything and maybe
download Houdini Apprentice to build against that too. Will do that asap.
g++ (SUSE Linux) 4.4.1 [gcc-4_4-branch revision 150839 by the way.
Great - I've committed the changes to the trunk so they shouldn't be
necessary in the future. Please note though that we haven't thoroughly
tested Cortex with Maya 2011 and I believe there are unresolved issues
there still. Also it can be very important to build with the right compiler
for your target application and I'm not sure that 4.4.1 is the right gcc
version (we use 4.1.2 for Maya 2010 and Houdini).
For the record I got pretty close with Maya 2008
The plugin compiled OK
BUT
on loading the plugin I got the following error:
// Error: Unable to dynamically load :
/home/samh/Development/cortex-vfx-read-only/plugins/maya/ieCore.so
/usr/autodesk/maya2008/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not
found (required by /usr/lib/libboost_regex.so.1.40.0) //
// Error: /usr/autodesk/maya2008/lib/libstdc++.so.6: version
`GLIBCXX_3.4.9' not found (required by /usr/lib/libboost_regex.so.1.40.0) //
// Error: /usr/autodesk/maya2008/lib/libstdc++.so.6: version
`GLIBCXX_3.4.9' not found (required by /usr/lib/libboost_regex.so.1.40.0)
(ieCore) //
So it looks more like a mismatch between boost and maya's glibc rather than
API functionality as I would expect the API calls would prevent it from
compiling
Which is a pity because this is just some stuff I am playing with at home
and I dont have any hardware which is 64 bit compatible with room to accept
a Linux install.
I believe that 2008 is the last version of 32 bit Linux Maya that Autodesk
released.
Nevermind
Sam
This was also making both of the changes in comment 2 and comment 5
Sam
I think the problem is most likely that you're building with gcc 4.4.1 -
you really need to build with gcc 4.1.2 for maya 2008 (this isn't a cortex
requirement but a maya one). That means building boost and openexr and tbb
with gcc 4.1.2 too - this is where developing for multiple vfx applications
on linux becomes a real pain.
Just to comment that after compiling with suggested versions (and using gcc
4.1.2) everything was working. Some minor problems with libraries not found
in standard paths.
Possibly the maya dome builder example has to be updated since I'm getting:
# Error: ArgumentError: Python argument types in
Op.__init__(DomeBuilder, str, str, DAGPathParameter)
did not match C++ signature:
__init__(_object*, std::string description,
IECore::IntrusivePtr<IECore::CompoundParameter> compoundParameter,
IECore::IntrusivePtr<IECore::Parameter> resultParameter)
__init__(_object*, std::string description,
IECore::IntrusivePtr<IECore::Parameter> resultParameter) #
when trying to execute, but the rest of the examples are fine. Or simply
there's still something wrong on my system :-)
That example was not updated to Cortex 5. We've changed two things: the Ops
don't have the name parameter anymore on their constructor and the compound
objects cannot be indexed anymore using the dot syntax. Only square
brackets is accepted now.
Thanks for pointing that out!
Comment #12 on issue 14 by john.ima...@gmail.com: Maya 2011 linux build
http://code.google.com/p/cortex-vfx/issues/detail?id=14
(No comment was entered for this change.)
Quick status update on this. I've started looking into Maya 2011 support
and things don't look too bad at present.
The python unit tests are passing already.
The C++ tests pass but then segfault on shutdown. As far as I can tell this
is because we're not calling MLibrary::cleanup() and the license manager
crashes on exit because of that. Boost::test doesn't seem particularly
helpful in terms of allowing us to cleanup on shutdown so my current plan
is to port the c++ tests to python - this will also mean adding bindings
for the image converters which will be a nice feature anyway.
The remaining problem I'm aware of is that the IECoreGL initialisation
fails during plugin load - I think we can fix this by deferring
initialisation to the point of use.
Comment #14 on issue 14 by thehaddo...@gmail.com: Maya 2011 linux build
http://code.google.com/p/cortex-vfx/issues/detail?id=14
Just a quick note to say that I've moved the C++ tests into python, which
meant adding a few new python bindings which will come in handy anyway.
I've also fixed another couple of problems and things seem to be running
pretty well in Maya 2011 right now. I've still only done limited testing,
so won't resolve this ticket just now, but if any interested parties want
to take it for a spin then now is not a bad time...
Will do, thanks.
But before that, and maybe a bit off topic, which is the scons version I
should be using? Right now is 1.2 (engine & script) and I can't get coreRI
library to build without forcing "haveDelight = 1" and
using "c.CheckFunc( "SxGetParameter", "sx.h" )" instead of regular
c.CheckCXXHeader( "sx.h" ) and c.CheckFunc( "SxGetParameter" ) in line 1367
with 3delight 9.0.86
Hello!
I compiled plugin for maya 2011 ok.
But plugin is not loaded in maya. I got the following error:
// Error: line 1: Unable to dynamically load :
/usr/autodesk/maya2011-x64/bin/plugin/ieCore.so
/usr/lib64/libIECoreGL.so: undefined symbol:
_ZN3tbb8internal18throw_exception_v4ENS0_12exception_idE //
// Error: line 1: /usr/lib64/libIECoreGL.so: undefined symbol:
_ZN3tbb8internal18throw_exception_v4ENS0_12exception_idE //
// Error: line 1: /usr/lib64/libIECoreGL.so: undefined symbol:
_ZN3tbb8internal18throw_exception_v4ENS0_12exception_idE (ieCore) //
What should I do?
________________________________________
From: cortex...@googlegroups.com [cortex...@googlegroups.com] on behalf of corte...@googlecode.com [corte...@googlecode.com]
Sent: Friday, February 25, 2011 3:25 AM
To: cortex...@googlegroups.com
Subject: [cortex-vfx issue] Re: Issue 14 in cortex-vfx: Maya 2011 linux build
What should I do?
--
You received this message because you are subscribed to the Google Groups "cortexissues" group.
To post to this group, send email to cortex...@googlegroups.com.
To unsubscribe from this group, send email to cortexissues...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/cortexissues?hl=en.