ELF vs. a.out and Python 2.0 build

Kent Polk kent at tiamat.goathill.org
Mon Nov 6 17:37:05 EST 2000


I have a small collection of a.out and ELF-based NetBSD machines.
Python 2.0 shared modules aren't built correctly on the older a.out
machines.

-----
on a.out:

Python 2.0 (#2, Nov  6 2000, 16:01:37) 
[GCC egcs-2.91.60 19981201 (egcs-1.1.1 release)] on netbsd1
Type "copyright", "credits" or "license" for more information.
>>> import _socket
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
ImportError: dynamic module does not define init function (init_socket)

$ nm _socketmodule.so | grep init_socket
00002714 T _init_socket
(note      ^ underscore)
-----
On ELF:

$ nm _socketmodule.so | grep init_socket
00003644 T init_socket
(which works)

Evidently there's a problem with the symbol naming mechanism to be
used when building shared modules for a.out. I compared configure
options with Python 1.5.2 and can't determine how this should be
fixed for a.out with Python 2.0. (Tried a number of possibilities)

Any suggestions? Thanks




More information about the Python-list mailing list