Thread: [Orbit-python-list] Problems with orbit-python-cvs
Status: Inactive
Brought to you by:
tack
From: Christian R. R. <ki...@as...> - 2000-11-30 11:40:55
|
Does anybody get anything remotely like >>> import CORBA >>> import PortableServer Traceback (innermost last): File "<stdin>", line 1, in ? ImportError: /usr/local/lib/python1.5/site-packages/PortableServermodule.so: undefined symbol: POAManager_PyObject_Type >>> when using orbit-python-cvs? I'm thinking there's some version mismatch here, but I'm still looking. Take care, -- /\/\ Christian Reis, Senior Engineer, Async Open Source, Brazil ~\/~ http://async.com.br/~kiko/ | [+55 16] 274 4311 |
From: Jason T. <ta...@li...> - 2000-11-30 14:57:30
|
> Does anybody get anything remotely like [...] > PortableServermodule.so: undefined symbol: POAManager_PyObject_Type Nope. Make sure you're not accidentally importing old modules. Does the cvs version compile okay for you? Jason. |
From: Christian R. R. <ki...@as...> - 2000-11-30 15:01:10
|
On Thu, 30 Nov 2000, Jason Tackaberry wrote: > > Does anybody get anything remotely like > [...] > > PortableServermodule.so: undefined symbol: POAManager_PyObject_Type > > Nope. Make sure you're not accidentally importing old modules. Does the > cvs version compile okay for you? Yes, after doing the automake changes you suggest and running autogen.sh I get a perfect build. However, the fragment in PortableServermodule.c POAManager_PyObject_Type.ob_type = &PyType_Type; POA_PyObject_Type.ob_type = &PyType_Type; suggests I do need these structures live for this to happen. Unless, of course, when I do an import CORBA they are created automatically; still, where can the error come from? Take care, -- /\/\ Christian Reis, Senior Engineer, Async Open Source, Brazil ~\/~ http://async.com.br/~kiko/ | [+55 16] 274 4311 |
From: Jason T. <ta...@li...> - 2000-11-30 15:04:56
|
> suggests I do need these structures live for this to happen. Unless, of > course, when I do an import CORBA they are created automatically; still, > where can the error come from? POAManager_PyObject_Type lives in CORBAmodule, so you need to import that before you import PortableServer. So: [tack@anywhere src]$ python >>> import CORBA >>> import PortableServer Works, but: [tack@anywhere src]$ python >>> import PortableServer Traceback (innermost last): File "<stdin>", line 1, in ? ImportError: ./PortableServermodule.so: undefined symbol: POAManager_PyObject_Type Jason. |
From: Christian R. R. <ki...@as...> - 2000-11-30 15:16:56
|
On Thu, 30 Nov 2000, Jason Tackaberry wrote: > POAManager_PyObject_Type lives in CORBAmodule, so you need to import > that before you import PortableServer. Even after erasing every trace of CORBAmodule.so from my whole box, and compiling orbit-python, and running python inside src/ I get blackjesus:~/devel/pyorb/orbit-python/src> python Python 1.5.2 (#7, Nov 28 2000, 20:41:52) [GCC egcs-2.91.66 19990314/Linux (egcs- on linux2 Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam >>> import CORBA >>> import PortableServer Traceback (innermost last): File "<stdin>", line 1, in ? ImportError: ./PortableServermodule.so: undefined symbol: POAManager_PyObject_Type >>> Are you sure you're working on a clean checkout? Is there a way I can diagnose this in another fashion? Take care, -- /\/\ Christian Reis, Senior Engineer, Async Open Source, Brazil ~\/~ http://async.com.br/~kiko/ | [+55 16] 274 4311 |
From: Jason T. <ta...@li...> - 2000-11-30 15:22:48
|
> Are you sure you're working on a clean checkout? Is there a way I can > diagnose this in another fashion? I just tried it now with a clean cvs checkout and it works properly. So I'm a bit bewildered by your problem. What's the output from: nm CORBAmodule.so | grep POAManager_PyObject_Type Jason. |
From: Christian R. R. <ki...@as...> - 2000-11-30 15:29:12
|
On Thu, 30 Nov 2000, Jason Tackaberry wrote: > > Are you sure you're working on a clean checkout? Is there a way I can > > diagnose this in another fashion? > > I just tried it now with a clean cvs checkout and it works properly. So > I'm a bit bewildered by your problem. What's the output from: > > nm CORBAmodule.so | grep POAManager_PyObject_Type It's here :-) 00011d60 D POAManager_PyObject_Type as is 00011e00 D POA_PyObject_Type So while the symbol is being defined in CORBAmodule, it's not being seen by python when it goes on to import PortableManager. This is python-1.5.2 here.. I'm actually somewhat familiar with object files, but I have no idea how Python allows access to other module's structures, so it could be something wierd here.. Take care, -- /\/\ Christian Reis, Senior Engineer, Async Open Source, Brazil ~\/~ http://async.com.br/~kiko/ | [+55 16] 274 4311 |
From: Jason T. <ta...@li...> - 2000-11-30 15:34:01
|
> This is python-1.5.2 here.. I'm actually somewhat familiar with object > files, but I have no idea how Python allows access to other module's > structures, so it could be something wierd here.. Do you have access to another machine you could try this on? Jason. |
From: Christian R. R. <ki...@as...> - 2000-12-01 22:21:07
|
On Thu, 30 Nov 2000, Jason Tackaberry wrote: > > Are you sure you're working on a clean checkout? Is there a way I can > > diagnose this in another fashion? > > I just tried it now with a clean cvs checkout and it works properly. So > I'm a bit bewildered by your problem. What's the output from: > > nm CORBAmodule.so | grep POAManager_PyObject_Type Still haven't got this to work. I'm importing CORBAmodule.so and nm does show I've got the symbol defined: 00011d80 D POA_PyObject_Type so this really beats me. Could this be a Python or compiler problem? Perhaps something automake isn't doing..? Jeez. Take care, -- /\/\ Christian Reis, Senior Engineer, Async Open Source, Brazil ~\/~ http://async.com.br/~kiko/ | [+55 16] 274 4311 |
From: Jason T. <ta...@li...> - 2000-12-01 23:18:46
|
> so this really beats me. Could this be a Python or compiler > problem? Perhaps something automake isn't doing..? Jeez. I too am pretty stumped. Have you tried this on another system? Is it only a problem on one machine? Jason. |
From: Christian R. R. <ki...@as...> - 2000-12-02 11:35:19
|
On Fri, 1 Dec 2000, Jason Tackaberry wrote: > > so this really beats me. Could this be a Python or compiler > > problem? Perhaps something automake isn't doing..? Jeez. > > I too am pretty stumped. Have you tried this on another system? Is it > only a problem on one machine? I'm compiling on others. I wonder if python lets me debug modules further. I'm writing to python-help as well. Take care, -- /\/\ Christian Reis, Senior Engineer, Async Open Source, Brazil ~\/~ http://async.com.br/~kiko/ | [+55 16] 274 4311 |
From: Christian R. R. <ki...@as...> - 2000-12-04 13:40:34
|
On Sat, 2 Dec 2000, Christian Robottom Reis wrote: > On Fri, 1 Dec 2000, Jason Tackaberry wrote: > > > I too am pretty stumped. Have you tried this on another system? Is it > > only a problem on one machine? > > I'm compiling on others. I wonder if python lets me debug modules > further. I'm writing to python-help as well. Jason, I'm starting to think it could be linker options generated by autoconf; what are your libtool and gcc lines for compiling the objects and linking the .so? Take care, -- /\/\ Christian Reis, Senior Engineer, Async Open Source, Brazil ~\/~ http://async.com.br/~kiko/ | [+55 16] 274 4311 |
From: Christian R. R. <ki...@as...> - 2000-12-04 16:30:10
Attachments:
python-1.5.2-dl-global.patch
|
On Mon, 4 Dec 2000, Christian Robottom Reis wrote: > On Sat, 2 Dec 2000, Christian Robottom Reis wrote: > > > > I too am pretty stumped. Have you tried this on another system? Is it > > > only a problem on one machine? Okay, tracked down the problem and would like to discuss a fix. It seems Python-1.5.2 doesn't do a dlopen() with RTLD_GLOBAL, but RedHat issues a patched version which I assume you're using (or some patched version) to importdl.c. This is a problem for anybody using a source-compiled python, and it would be nice to a) provide the patch with orbit-python or b) workaround this some way. Solution a) is okay in the short run as long as we document it somewhere ;-) I've attached the patch and have no further problem here; let me know what you think we could do in the long run and I might try doing it. Take care, -- /\/\ Christian Reis, Senior Engineer, Async Open Source, Brazil ~\/~ http://async.com.br/~kiko/ | [+55 16] 274 4311 |