[Python.NET] Q2: py.net problems w/python 2.6.2

Hamilton Link helink at sandia.gov
Tue Jan 26 00:39:48 CET 2010


Could anyone conveniently try python.net with python 2.6.2?  I am seeing 
two fatal problems in my lightly-patched python.net.

I'm using ubuntu 9.04
python 2.6.2
python.net 2.0 alpha2 with Borzenkov's suggested PYTHON25 -> PYTHON26 
changes and Feihong Hsu's changes
mono 2.0.1 (this is the what mono --version says, which I think is 
packaged as distribution 1.9.something?)

For all of this I'm using the python.exe that gets built alongside 
python.net, because ubuntu's python environments are irritatingly built 
with --disable-shared

Here are the problems:

If I try the following:
 >>> import clr
 >>> import System
 >>> STR = System.String('hithere')

I get a fatal error "GCHandle value belongs to a different domain"... 
this is being thrown by the coercion of an IntPtr to a GCHandle, from 
within the coercion operation in ManagedType.GetManagedObject.

If however I try the following:
 >>> import clr
 >>> from System.Drawing import Point
 >>> p = Point(5,5)

then I can
 >>> p.X
5
 >>> p.Y
5
 >>> p.ToString()
u'{X=5,Y=5}'
 >>> dir(p)
['Add', 'Ceiling', ..., '__class__', ...]

No problem, right? Wrong:
 >>> p.__class__
dies in the most awful way, dumping all thread stacks and killing mono 
and python.  I get a message saying "Got a SIGSEGV while executing 
native code.  etc."

If anyone has any clues about this, I'd love to hear them.  My current 
plan is to install python 2.5.x as an alternate python, rebuild against 
that, and see if that works, and then perhaps dig into this further.  I 
might also try 2.6.4 since someone on the list recently asserted they 
had it working with that.

thanks,
hamilton






More information about the PythonDotNet mailing list