Ronald Oussoren schrieb: > > On Friday, November 24, 2006, at 08:21PM, "Thomas Heller" <theller at ctypes.org> wrote: >>I'd like to ask for help with an issue which I do not know >>how to solve. >> >>Please see this bug http://python.org/sf/1563807 >>"ctypes built with GCC on AIX 5.3 fails with ld ffi error" >> >>Apparently this is a powerpc machine, ctypes builds but cannot be imported >>because of undefined symbols like 'ffi_call', 'ffi_prep_closure'. >> >>These symbols are defined in file >> Modules/_ctypes/libffi/src/powerpc/ffi_darwin.c. >>The whole contents of this file is enclosed within a >> >>#ifdef __ppc__ >>... >>#endif >> >>block. IIRC, this block has been added by Ronald for the >>Mac universal build. Now, it seems that on the AIX machine >>the __ppc__ symbols is not defined; removing the #ifdef/#endif >>makes the built successful. > > The defines were indeed added for the universal build and I completely overlooked the fact that ffi_darwin.c is also used for AIX. One way to fix this is > > #if ! (defined(__APPLE__) && !defined(__ppc__)) > ... > #endif > > That is, compile the file unless __APPLE__ is defined but __ppc__ isn't. This more clearly documents the intent. Yes, this makes the most sense. I've taken this approach. Thanks, Thomas
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4