[ python-Bugs-1460514 ] ctypes extension does not compile on Mac OS 10.3.9

SourceForge.net noreply at sourceforge.net
Fri Apr 14 02:51:16 CEST 2006


Bugs item #1460514, was opened at 2006-03-29 01:28
Message generated for change (Comment added) made by dalke
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1460514&group_id=5470

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: None
Group: Python 2.5
Status: Open
Resolution: None
Priority: 7
Submitted By: Andrew Dalke (dalke)
Assigned to: Thomas Heller (theller)
Summary: ctypes extension does not compile on Mac OS 10.3.9

Initial Comment:
I compiled Python from CVS this morning.  It silently failed to compile 
ctypes.  Here is the text surrounding the failure

gcc [deleted] -c /Users/dalke/cvses/python-svn/Modules/_ctypes/
libffi/src/powerpc/darwin_closure.S -o build/temp.darwin-7.9.0-
Power_Macintosh-2.5/darwin_closure.o
darwin_closure.S:249:unknown section attribute: live_support
darwin_closure.S:249:Rest of line ignored. 1st junk character valued 69 
(E).
building 'itertools' extension
 ...

Python installed but when I tried to import ctypes I got

  File "/usr/local/lib/python2.5/ctypes/__init__.py", line 8, in 
<module>
    from _ctypes import Union, Structure, Array
ImportError: No module named _ctypes

I tracked it down to the '+live_support' attribute from the 
darwin_closure.S.  My compiler does not understand that.

Thomas Heller (in private email) pointed out the text from the ctypes 
README

        On OS X, the segment attribute live_support must be
	defined. If your compiler doesn't know about it, upgrade or
	set the environment variable CCASFLAGS="-Dno_live_support".

Upgrading is out of the option.  I set the environment variable but that 
did not fix things when I tried to recompile Python.  However, editing 
the file to remove the "+live_support" works.  All the self-tests passed, 
and my experimentation this afternoon was successful.



----------------------------------------------------------------------

>Comment By: Andrew Dalke (dalke)
Date: 2006-04-13 18:51

Message:
Logged In: YES 
user_id=190903

Sorry - was ill and not doing anything for a week.

I've built the latest code from SVN.  No problems with the compilation and I 
am able to import just fine.

I did get the following compiler warnings

/Users/dalke/cvses/python-svn/Modules/_ctypes/cfield.c: In function 
`CField_repr':
/Users/dalke/cvses/python-svn/Modules/_ctypes/cfield.c:259: warning: 
signed size_t format, Py_ssize_t arg (arg 3)
/Users/dalke/cvses/python-svn/Modules/_ctypes/cfield.c:267: warning: 
signed size_t format, Py_ssize_t arg (arg 3)


/Users/dalke/cvses/python-svn/Modules/_ctypes/libffi/src/powerpc/
ffi_darwin.c:383: warning: function declaration isn't a prototype
/Users/dalke/cvses/python-svn/Modules/_ctypes/libffi/src/powerpc/
ffi_darwin.c:384: warning: function declaration isn't a prototype
/Users/dalke/cvses/python-svn/Modules/_ctypes/libffi/src/powerpc/
ffi_darwin.c:388: warning: function declaration isn't a prototype
/Users/dalke/cvses/python-svn/Modules/_ctypes/libffi/src/powerpc/
ffi_darwin.c:389: warning: function declaration isn't a prototype
/Users/dalke/cvses/python-svn/Modules/_ctypes/libffi/src/powerpc/
ffi_darwin.c:394: warning: function declaration isn't a prototype
/Users/dalke/cvses/python-svn/Modules/_ctypes/libffi/src/powerpc/
ffi_darwin.c: In function `ffi_closure_helper_DARWIN':
/Users/dalke/cvses/python-svn/Modules/_ctypes/libffi/src/powerpc/
ffi_darwin.c:622: warning: unused variable `temp_ld'

When I run the self test I get one error

FAILED (errors=1)
Traceback (most recent call last):
  File "Lib/test/test_ctypes.py", line 12, in <module>
    test_main()
  File "Lib/test/test_ctypes.py", line 9, in test_main
    run_suite(unittest.TestSuite(suites))
  File "/Users/dalke/cvses/python-svn/Lib/test/test_support.py", line 285, in 
run_suite
    raise TestFailed(err)
test.test_support.TestFailed: Traceback (most recent call last):
  File "/Users/dalke/cvses/python-svn/Lib/ctypes/test/test_loading.py", line 
30, in test_load
    cdll.load(libc_name)
  File "/Users/dalke/cvses/python-svn/Lib/ctypes/_loader.py", line 112, in 
load
    return self._load(libname, mode)
  File "/Users/dalke/cvses/python-svn/Lib/ctypes/_loader.py", line 153, in 
_load
    return self.load_library(pathname, mode)
  File "/Users/dalke/cvses/python-svn/Lib/ctypes/_loader.py", line 124, in 
load_library
    return self._dlltype(libname, mode)
  File "/Users/dalke/cvses/python-svn/Lib/ctypes/__init__.py", line 288, in 
__init__
    self._handle = _dlopen(self._name, mode)
OSError: dlcompat: unable to open this file with RTLD_LOCAL


which is probably ignorable - OS X has its own sense of what shared libraries 
do.


----------------------------------------------------------------------

Comment By: Thomas Heller (theller)
Date: 2006-04-03 14:18

Message:
Logged In: YES 
user_id=11105

As a temporary fix, I removed the '+live_support' attribute
in the source file.  Andrew, can you please verify that this
works for you?

Thanks, Thomas

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1460514&group_id=5470


More information about the Python-bugs-list mailing list