Mailing List Archive

HELP: ImportError on HPUX
Hello,
I have a c++ library that runs great on HPUX (10.20) and IRIX (6.4), in
a native (ie non-Python) environment. I have also been successful at
getting the library to import w/o problems on IRIX, as a SWIGged module
in Python. Now, I am having difficulty getting the library to import on
HP. I found an old reference to C++ modules in HP needing
"Python/importdl.c" to have shl_load changed to cxxshl_load and what
not. I am not sure that is still valid, or if I have some other build
problem, specific to HPUX. I am using Python 1.5.1. and SWIG1.1p5. When
I import the python library I
get the following errors:

Python 1.5.1 (#1, Jul 22 1999, 13:51:48) [C] on hp-uxB
Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam
Traceback (innermost last):
File "/vobs/release//run_python.py", line 7, in ?
import MDIreg
File "/vobs/release//python/lib/hpux10/python1.5/MDIreg.py", line 2, in
?
import MDIregc
ImportError: Failed to load
/vobs/release//python/lib/hpux10/python1.5/MDIregcmodule.sl
>>>

======

adding -v to the python invocation tells me more:

# /vobs/release//python/lib/hpux10/python1.5/exceptions.pyc has bad
mtime
import exceptions # from
/vobs/release//python/lib/hpux10/python1.5/exceptions.py
# can't create /vobs/release//python/lib/hpux10/python1.5/exceptions.pyc
Python 1.5.1 (#1, Jul 22 1999, 13:51:48) [C] on hp-uxB
Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam
# /vobs/release//python/lib/hpux10/python1.5/MDIreg.pyc matches
/vobs/release//python/lib/hpux10/python1.5/MDIreg.py
import MDIreg # precompiled from
/vobs/release//python/lib/hpux10/python1.5/MDIreg.pyc
shl_load /vobs/release//python/lib/hpux10/python1.5/MDIregcmodule.sl
/usr/lib/dld.sl: Unresolved symbol: __StaticCtorTable_Start (data) from
/usr/lib/libCsup.1
/usr/lib/dld.sl: Unresolved symbol: __ZStaticCtorTable_End (data) from
/usr/lib/libCsup.1
/usr/lib/dld.sl: Unresolved symbol: __StaticCtorTable_End (data) from
/usr/lib/libCsup.1
/usr/lib/dld.sl: Unresolved symbol: __ZStaticCtorTable_Start (data) from
/usr/lib/libCsup.1
/usr/lib/dld.sl: Unresolved symbol: U_update_state_vector (code) from
/usr/lib/libCsup.1
/usr/lib/dld.sl: Unresolved symbol: U_get_shLib_unw_tbl (code) from
/usr/lib/libCsup.1
/usr/lib/dld.sl: Unresolved symbol: U_resume_execution (code) from
/usr/lib/libCsup.1
/usr/lib/dld.sl: Unresolved symbol: U_get_previous_frame_x (code) from
/usr/lib/libCsup.1
/usr/lib/dld.sl: Unresolved symbol: U_get_unwind_table (code) from
/usr/lib/libCsup.1
/usr/lib/dld.sl: Unresolved symbol: U_get_shLib_text_addr (code) from
/usr/lib/libCsup.1
/usr/lib/dld.sl: Unresolved symbol: U_get_unwind_entry (code) from
/usr/lib/libCsup.1
shl_findsym initMDIregc
import MDIregc # dynamically loaded from
/vobs/release//python/lib/hpux10/python1.5/MDIregcmodule.sl
Contacting Registry ...
Bus error

By the way, I am using static C++ constructors in a few cases and am not
sure that is part of the problem. I am using:

Python 1.5.1, SWIG 1.1p5, on HP-UX 10.20, compiler levels:
HP aC++ B3910B A.01.18
HP aC++ B3910B A.01.12 Language Support Library

Many Thanks


Sent via Deja.com http://www.deja.com/
Share what you know. Learn what you don't.
HELP: ImportError on HPUX [ In reply to ]
rceci@adams.com wrote:
: I found an old reference to C++ modules in HP needing
: "Python/importdl.c" to have shl_load changed to cxxshl_load and what
: not. I am not sure that is still valid,
: HP aC++ B3910B A.01.18

No, that is only for cfront.

: /usr/lib/dld.sl: Unresolved symbol: __StaticCtorTable_Start (data)
: /usr/lib/dld.sl: Unresolved symbol: __ZStaticCtorTable_End (data)
: /usr/lib/dld.sl: Unresolved symbol: __StaticCtorTable_End (data)
: /usr/lib/dld.sl: Unresolved symbol: __ZStaticCtorTable_Start (data)

These symbols must be in your a.out. See the URL below for some stubs
to workaround this.

: /usr/lib/dld.sl: Unresolved symbol: U_update_state_vector (code)
: /usr/lib/dld.sl: Unresolved symbol: U_get_shLib_unw_tbl (code)
: /usr/lib/dld.sl: Unresolved symbol: U_resume_execution (code)
: /usr/lib/dld.sl: Unresolved symbol: U_get_previous_frame_x (code)
: /usr/lib/dld.sl: Unresolved symbol: U_get_unwind_table (code)
: /usr/lib/dld.sl: Unresolved symbol: U_get_shLib_text_addr (code)
: /usr/lib/dld.sl: Unresolved symbol: U_get_unwind_entry (code)

These symbols are in /usr/lib/libcl.sl and must be attached to your a.out.

http://docs.hp.com/hpux/content/aCC/guide45/distributing.htm