This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: atom sorting error when building ctypes
Type: compile error Stage:
Components: ctypes Versions: Python 2.6
process
Status: closed Resolution: wont fix
Dependencies: Superseder:
Assigned To: theller Nosy List: ronaldoussoren, skip.montanaro, theller
Priority: normal Keywords:

Created on 2008-04-05 19:27 by skip.montanaro, last changed 2022-04-11 14:56 by admin. This issue is now closed.

Messages (4)
msg65001 - (view) Author: Skip Montanaro (skip.montanaro) * (Python triager) Date: 2008-04-05 19:27
I recently started getting the following error when building the
trunk on Mac OS X Leopard:

  ld: atom sorting error for .LFE1 and .ffi_call_SYSV_end in
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/x86/x86-darwin.o

I tried rm'ing my build directory then rerunning configure.  Same
result.  Here's the make output after simply removing all '*ctypes*'
files from the build directory:

% find build -name '*ctypes*' | xargs rm -r
% make
running build
running build_ext
building '_ctypes_test' extension
creating
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes
gcc -fno-strict-aliasing -DNDEBUG -g -fwrapv -O3 -Wall
-Wstrict-prototypes -I. -I/Users/skip/src/python/trunk/./Include
-I/Users/skip/src/python/trunk/./Mac/Include -I. -IInclude -I./Include
-I/Users/skip/local/include -I/opt/local/include
-I/Users/skip/src/python/trunk/Include -I/Users/skip/src/python/trunk -c
/Users/skip/src/python/trunk/Modules/_ctypes/_ctypes_test.c -o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/_ctypes_test.o
gcc -L/Users/skip/local/lib -L/opt/local/lib -bundle -undefined
dynamic_lookup
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/_ctypes_test.o
-L/Users/skip/local/lib -L/opt/local/lib -o
build/lib.macosx-10.3-i386-2.6/_ctypes_test.so
building '_ctypes' extension
creating
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/darwin
creating
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx
creating
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/x86
creating
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc
gcc -fno-strict-aliasing -DNDEBUG -g -fwrapv -O3 -Wall
-Wstrict-prototypes -I_ctypes/darwin -I.
-I/Users/skip/src/python/trunk/./Include
-I/Users/skip/src/python/trunk/./Mac/Include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc -I.
-IInclude -I./Include -I/Users/skip/local/include -I/opt/local/include
-I/Users/skip/src/python/trunk/Include -I/Users/skip/src/python/trunk -c
/Users/skip/src/python/trunk/Modules/_ctypes/_ctypes.c -o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/_ctypes.o
-DMACOSX
gcc -fno-strict-aliasing -DNDEBUG -g -fwrapv -O3 -Wall
-Wstrict-prototypes -I_ctypes/darwin -I.
-I/Users/skip/src/python/trunk/./Include
-I/Users/skip/src/python/trunk/./Mac/Include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc -I.
-IInclude -I./Include -I/Users/skip/local/include -I/opt/local/include
-I/Users/skip/src/python/trunk/Include -I/Users/skip/src/python/trunk -c
/Users/skip/src/python/trunk/Modules/_ctypes/callbacks.c -o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/callbacks.o
-DMACOSX
gcc -fno-strict-aliasing -DNDEBUG -g -fwrapv -O3 -Wall
-Wstrict-prototypes -I_ctypes/darwin -I.
-I/Users/skip/src/python/trunk/./Include
-I/Users/skip/src/python/trunk/./Mac/Include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc -I.
-IInclude -I./Include -I/Users/skip/local/include -I/opt/local/include
-I/Users/skip/src/python/trunk/Include -I/Users/skip/src/python/trunk -c
/Users/skip/src/python/trunk/Modules/_ctypes/callproc.c -o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/callproc.o
-DMACOSX
gcc -fno-strict-aliasing -DNDEBUG -g -fwrapv -O3 -Wall
-Wstrict-prototypes -I_ctypes/darwin -I.
-I/Users/skip/src/python/trunk/./Include
-I/Users/skip/src/python/trunk/./Mac/Include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc -I.
-IInclude -I./Include -I/Users/skip/local/include -I/opt/local/include
-I/Users/skip/src/python/trunk/Include -I/Users/skip/src/python/trunk -c
/Users/skip/src/python/trunk/Modules/_ctypes/stgdict.c -o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/stgdict.o
-DMACOSX
gcc -fno-strict-aliasing -DNDEBUG -g -fwrapv -O3 -Wall
-Wstrict-prototypes -I_ctypes/darwin -I.
-I/Users/skip/src/python/trunk/./Include
-I/Users/skip/src/python/trunk/./Mac/Include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc -I.
-IInclude -I./Include -I/Users/skip/local/include -I/opt/local/include
-I/Users/skip/src/python/trunk/Include -I/Users/skip/src/python/trunk -c
/Users/skip/src/python/trunk/Modules/_ctypes/cfield.c -o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/cfield.o
-DMACOSX
gcc -fno-strict-aliasing -DNDEBUG -g -fwrapv -O3 -Wall
-Wstrict-prototypes -I_ctypes/darwin -I.
-I/Users/skip/src/python/trunk/./Include
-I/Users/skip/src/python/trunk/./Mac/Include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc -I.
-IInclude -I./Include -I/Users/skip/local/include -I/opt/local/include
-I/Users/skip/src/python/trunk/Include -I/Users/skip/src/python/trunk -c
/Users/skip/src/python/trunk/Modules/_ctypes/malloc_closure.c -o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/malloc_closure.o
-DMACOSX
gcc -fno-strict-aliasing -DNDEBUG -g -fwrapv -O3 -Wall
-Wstrict-prototypes -I_ctypes/darwin -I.
-I/Users/skip/src/python/trunk/./Include
-I/Users/skip/src/python/trunk/./Mac/Include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc -I.
-IInclude -I./Include -I/Users/skip/local/include -I/opt/local/include
-I/Users/skip/src/python/trunk/Include -I/Users/skip/src/python/trunk -c
/Users/skip/src/python/trunk/Modules/_ctypes/darwin/dlfcn_simple.c -o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/darwin/dlfcn_simple.o
-DMACOSX
gcc -fno-strict-aliasing -DNDEBUG -g -fwrapv -O3 -Wall
-Wstrict-prototypes -I_ctypes/darwin -I.
-I/Users/skip/src/python/trunk/./Include
-I/Users/skip/src/python/trunk/./Mac/Include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc -I.
-IInclude -I./Include -I/Users/skip/local/include -I/opt/local/include
-I/Users/skip/src/python/trunk/Include -I/Users/skip/src/python/trunk -c
/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/ffi.c -o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/ffi.o
-DMACOSX
gcc -fno-strict-aliasing -DNDEBUG -g -fwrapv -O3 -Wall
-Wstrict-prototypes -I_ctypes/darwin -I.
-I/Users/skip/src/python/trunk/./Include
-I/Users/skip/src/python/trunk/./Mac/Include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc -I.
-IInclude -I./Include -I/Users/skip/local/include -I/opt/local/include
-I/Users/skip/src/python/trunk/Include -I/Users/skip/src/python/trunk -c
/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/x86/x86-darwin.S
-o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/x86/x86-darwin.o
-DMACOSX
gcc -fno-strict-aliasing -DNDEBUG -g -fwrapv -O3 -Wall
-Wstrict-prototypes -I_ctypes/darwin -I.
-I/Users/skip/src/python/trunk/./Include
-I/Users/skip/src/python/trunk/./Mac/Include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc -I.
-IInclude -I./Include -I/Users/skip/local/include -I/opt/local/include
-I/Users/skip/src/python/trunk/Include -I/Users/skip/src/python/trunk -c
/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/x86/x86-ffi_darwin.c
-o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/x86/x86-ffi_darwin.o
-DMACOSX
gcc -fno-strict-aliasing -DNDEBUG -g -fwrapv -O3 -Wall
-Wstrict-prototypes -I_ctypes/darwin -I.
-I/Users/skip/src/python/trunk/./Include
-I/Users/skip/src/python/trunk/./Mac/Include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc -I.
-IInclude -I./Include -I/Users/skip/local/include -I/opt/local/include
-I/Users/skip/src/python/trunk/Include -I/Users/skip/src/python/trunk -c
/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/x86/x86-ffi64.c
-o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/x86/x86-ffi64.o
-DMACOSX
gcc -fno-strict-aliasing -DNDEBUG -g -fwrapv -O3 -Wall
-Wstrict-prototypes -I_ctypes/darwin -I.
-I/Users/skip/src/python/trunk/./Include
-I/Users/skip/src/python/trunk/./Mac/Include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc -I.
-IInclude -I./Include -I/Users/skip/local/include -I/opt/local/include
-I/Users/skip/src/python/trunk/Include -I/Users/skip/src/python/trunk -c
/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc/ppc-darwin.S
-o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc/ppc-darwin.o
-DMACOSX
gcc -fno-strict-aliasing -DNDEBUG -g -fwrapv -O3 -Wall
-Wstrict-prototypes -I_ctypes/darwin -I.
-I/Users/skip/src/python/trunk/./Include
-I/Users/skip/src/python/trunk/./Mac/Include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc -I.
-IInclude -I./Include -I/Users/skip/local/include -I/opt/local/include
-I/Users/skip/src/python/trunk/Include -I/Users/skip/src/python/trunk -c
/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc/ppc-darwin_closure.S
-o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc/ppc-darwin_closure.o
-DMACOSX
gcc -fno-strict-aliasing -DNDEBUG -g -fwrapv -O3 -Wall
-Wstrict-prototypes -I_ctypes/darwin -I.
-I/Users/skip/src/python/trunk/./Include
-I/Users/skip/src/python/trunk/./Mac/Include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc -I.
-IInclude -I./Include -I/Users/skip/local/include -I/opt/local/include
-I/Users/skip/src/python/trunk/Include -I/Users/skip/src/python/trunk -c
/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc/ppc-ffi_darwin.c
-o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc/ppc-ffi_darwin.o
-DMACOSX
gcc -fno-strict-aliasing -DNDEBUG -g -fwrapv -O3 -Wall
-Wstrict-prototypes -I_ctypes/darwin -I.
-I/Users/skip/src/python/trunk/./Include
-I/Users/skip/src/python/trunk/./Mac/Include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/include
-I/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc -I.
-IInclude -I./Include -I/Users/skip/local/include -I/opt/local/include
-I/Users/skip/src/python/trunk/Include -I/Users/skip/src/python/trunk -c
/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc/ppc64-darwin_closure.S
-o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc/ppc64-darwin_closure.o
-DMACOSX
gcc -L/Users/skip/local/lib -L/opt/local/lib -bundle -undefined
dynamic_lookup
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/_ctypes.o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/callbacks.o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/callproc.o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/stgdict.o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/cfield.o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/malloc_closure.o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/darwin/dlfcn_simple.o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/ffi.o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/x86/x86-darwin.o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/x86/x86-ffi_darwin.o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/x86/x86-ffi64.o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc/ppc-darwin.o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc/ppc-darwin_closure.o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc/ppc-ffi_darwin.o
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/powerpc/ppc64-darwin_closure.o
-L/Users/skip/local/lib -L/opt/local/lib -o
build/lib.macosx-10.3-i386-2.6/_ctypes.so
ld: atom sorting error for .LFE1 and .ffi_call_SYSV_end in
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/x86/x86-darwin.o
ld: atom sorting error for .LFE1 and .ffi_call_SYSV_end in
build/temp.macosx-10.3-i386-2.6/Users/skip/src/python/trunk/Modules/_ctypes/libffi_osx/x86/x86-darwin.o
msg65361 - (view) Author: Thomas Heller (theller) * (Python committer) Date: 2008-04-11 16:43
I see this also, on Leopard x86. The linker error is not printed on
Tiger PPC.  At least, the ctypes test suite does work ok so it may be
that it can be ignored.

Googling for this error, I find that it may be related to linker changes
that Apple has made.
One suggestion I found was to link with ld_classic instead of ld;
another was to pass the -dynamic flag instead of -bundle.  However, I do
not known how this can be done in setup.py.

The libffi sources in Python svn were copied from the PyObjC sources;
maybe Ronald has a clue?
msg65372 - (view) Author: Ronald Oussoren (ronaldoussoren) * (Python committer) Date: 2008-04-11 20:56
I'm pretty sure I get the same error when building PyObjC. It seems to be 
a harmless warning though, PyObjC passes all its unittests and those 
really exercise all of libffi.
msg65463 - (view) Author: Thomas Heller (theller) * (Python committer) Date: 2008-04-14 15:58
So closing this as won't fix.
History
Date User Action Args
2022-04-11 14:56:33adminsetgithub: 46811
2008-04-14 15:58:13thellersetstatus: open -> closed
resolution: wont fix
messages: + msg65463
2008-04-11 20:56:05ronaldoussorensetmessages: + msg65372
2008-04-11 16:43:43thellersetnosy: + ronaldoussoren
messages: + msg65361
title: atom sorting error when buiding ctypes -> atom sorting error when building ctypes
2008-04-05 19:27:07skip.montanarocreate