FAQ
I have built python 1.5.1 from source for an embedded ARM9 debian
linux Sarge distribution but
ctypes doesn't build. Anybody have any idea what the problem is? Do
I have to have the libffi package
installed.
See my errors below.
I looked and ffi.h exists in three places

/usr/local/src/Python-2.5.1/Modules/_ctypes/libffi_arm_wince/ffi.h
/usr/local/src/Python-2.5.1/Modules/_ctypes/libffi_msvc/ffi.h
/usr/local/src/Python-2.5.1/build/temp.linux-armv4l-2.5/libffi/
include/ffi.h


with two different definitions for ffi_closure
typedef struct {
char tramp[FFI_TRAMPOLINE_SIZE];
ffi_cif *cif;
void (*fun)(ffi_cif*,void*,void**,void*);
void *user_data;
} ffi_closure __attribute__((aligned (8)));

typedef struct {
char tramp[FFI_TRAMPOLINE_SIZE];
ffi_cif *cif;
void (*fun)(ffi_cif*,void*,void**,void*);
void *user_data;
} ffi_closure;

is the __attribute__ syntax causing a problem


building '_ctypes' extension
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -O3 -Wall -Wstrict-
prototypes -fPIC -I. -I/usr/local/src/Python-2.5.1/./Include -Ibuild/
temp.linux-armv4l-2.5/libffi/include -Ibuild/temp.linux-armv4l-2.5/
libffi -I/usr/local/src/Python-2.5.1/Modules/_ctypes/libffi/src -I./
Include -I. -I/usr/local/include -I/usr/local/src/Python-2.5.1/
Include -I/usr/local/src/Python-2.5.1 -c /usr/local/src/Python-2.5.1/
Modules/_ctypes/_ctypes.c -o build/temp.linux-armv4l-2.5/usr/local/
src/Python-2.5.1/Modules/_ctypes/_ctypes.o
In file included from /usr/local/src/Python-2.5.1/Modules/_ctypes/
_ctypes.c:126:
/usr/local/src/Python-2.5.1/Modules/_ctypes/ctypes.h:71: error:
syntax error before "ffi_closure"
/usr/local/src/Python-2.5.1/Modules/_ctypes/ctypes.h:71: warning: no
semicolon at end of struct or union
/usr/local/src/Python-2.5.1/Modules/_ctypes/ctypes.h:78: error:
syntax error before '}' token
/usr/local/src/Python-2.5.1/Modules/_ctypes/ctypes.h:78: warning:
type defaults to `int' in declaration of `ffi_info'
/usr/local/src/Python-2.5.1/Modules/_ctypes/ctypes.h:78: warning:
data definition has no type or storage class
/usr/local/src/Python-2.5.1/Modules/_ctypes/ctypes.h:94: error:
syntax error before "ffi_info"
/usr/local/src/Python-2.5.1/Modules/_ctypes/ctypes.h:94: warning: no
semicolon at end of struct or union
/usr/local/src/Python-2.5.1/Modules/_ctypes/ctypes.h:101: error:
conflicting types for `restype'
/usr/local/src/Python-2.5.1/Modules/_ctypes/ctypes.h:76: error:
previous declaration of `restype'
/usr/local/src/Python-2.5.1/Modules/_ctypes/ctypes.h:109: error:
syntax error before '}' token
/usr/local/src/Python-2.5.1/Modules/_ctypes/ctypes.h:109: warning:
type defaults to `int' in declaration of `CFuncPtrObject'
/usr/local/src/Python-2.5.1/Modules/_ctypes/ctypes.h:109: warning:
data definition has no type or storage class
/usr/local/src/Python-2.5.1/Modules/_ctypes/ctypes.h:165: error:
syntax error before '*' token
/usr/local/src/Python-2.5.1/Modules/_ctypes/ctypes.h:168: warning:
type defaults to `int' in declaration of `AllocFunctionCallback'
/usr/local/src/Python-2.5.1/Modules/_ctypes/ctypes.h:168: warning:
data definition has no type or storage class
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: In function
`c_void_p_from_param':
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:1330: error:
`func' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:1330: error:
(Each undeclared identifier is reported only once
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:1330: error:
for each function it appears in.)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:1331: error:
syntax error before ')' token
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: At top level:
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:2470: error:
syntax error before '*' token
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:2471: warning:
function declaration isn't a prototype
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: In function
`CFuncPtr_set_errcheck':
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:2472: error:
`ob' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:2477: error:
`self' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: At top level:
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:2484: error:
syntax error before '*' token
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:2485: warning:
function declaration isn't a prototype
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: In function
`CFuncPtr_get_errcheck':
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:2486: error:
`self' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: At top level:
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:2495: error:
syntax error before '*' token
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:2496: warning:
function declaration isn't a prototype
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: In function
`CFuncPtr_set_restype':
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:2497: error:
`ob' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:2498: error:
`self' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: At top level:
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:2520: error:
syntax error before '*' token
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:2521: warning:
function declaration isn't a prototype
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: In function
`CFuncPtr_get_restype':
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:2523: error:
`self' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: At top level:
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:2539: error:
syntax error before '*' token
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:2540: warning:
function declaration isn't a prototype
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: In function
`CFuncPtr_set_argtypes':
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:2543: error:
`ob' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:2544: error:
`self' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: At top level:
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:2562: error:
syntax error before '*' token
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:2563: warning:
function declaration isn't a prototype
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: In function
`CFuncPtr_get_argtypes':
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:2565: error:
`self' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: In function
`CFuncPtr_FromDll':
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:2747: error:
`self' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:2802: error:
syntax error before ')' token
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: In function
`CFuncPtr_new':
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:2867: error:
`self' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:2870: error:
`thunk' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:2939: error:
syntax error before ')' token
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: At top level:
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3040: error:
syntax error before '*' token
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3043: warning:
function declaration isn't a prototype
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: In function
`_build_callargs':
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3044: error:
`self' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3054: error:
`poutmask' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3055: error:
`pinoutmask' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3056: error:
`pnumretvals' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3064: error:
`inargs' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3113: error:
`kwds' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: At top level:
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3268: error:
syntax error before '*' token
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3269: warning:
function declaration isn't a prototype
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: In function
`CFuncPtr_call':
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3274: error:
`self' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3329: error:
`inargs' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3329: error:
`kwds' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: At top level:
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3398: error:
syntax error before '*' token
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3399: warning:
function declaration isn't a prototype
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: In function
`CFuncPtr_traverse':
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3400: error:
`self' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3400: warning:
implicit declaration of function `visit'
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3400: error:
`arg' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3407: error:
`visit' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: At top level:
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3411: error:
syntax error before '*' token
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3412: warning:
function declaration isn't a prototype
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: In function
`CFuncPtr_clear':
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3413: error:
`self' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: At top level:
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3431: error:
syntax error before '*' token
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3432: warning:
function declaration isn't a prototype
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: In function
`CFuncPtr_dealloc':
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3433: error:
`self' undeclared (first use in this function)
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: At top level:
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3438: error:
syntax error before '*' token
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3439: warning:
function declaration isn't a prototype
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c: In function
`CFuncPtr_repr':
/usr/local/src/Python-2.5.1/Modules/_ctypes/_ctypes.c:3448: error:
`self' undeclared (first use in this function)




**********************************************************************
Samuel M. Smith Ph.D.
2966 Fort Hill Road
Eagle Mountain, Utah 84005-4108
801-768-2768 voice
801-768-2769 fax
**********************************************************************
"The greatest source of failure and unhappiness in the world is
giving up what we want most for what we want at the moment"
**********************************************************************


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.python.org/pipermail/python-list/attachments/20071029/525198a2/attachment-0001.htm

Search Discussions

  • Thomas Heller at Oct 30, 2007 at 8:55 am

    Samuel M. Smith schrieb:
    I have built python 1.5.1 from source for an embedded ARM9 debian
    linux Sarge distribution but
    ctypes doesn't build. Anybody have any idea what the problem is? Do
    I have to have the libffi package
    installed.
    See my errors below.
    ctypes won't work with Python 1.5 because it uses new style classes, introduced in Python 2.2.
    It uses other, newer features additionally, so it requires Python 2.3 at least.

    Then, the included libffi package doesn't support ARM, you need a newer libffi
    version.

    I think that the current Python 2.5 sources, from SVN, should work.

    Thomas
  • Samuel M. Smith at Oct 30, 2007 at 2:55 pm
    Sorry, thats a typo. Its python 2.5.1. as the error messages indicate.
    On 30 Oct 2007, at 02:55 , Thomas Heller wrote:

    Samuel M. Smith schrieb:
    I have built python 1.5.1 from source for an embedded ARM9 debian
    linux Sarge distribution but
    ctypes doesn't build. Anybody have any idea what the problem is? Do
    I have to have the libffi package
    installed.
    See my errors below.
    ctypes won't work with Python 1.5 because it uses new style
    classes, introduced in Python 2.2.
    It uses other, newer features additionally, so it requires Python
    2.3 at least.

    Then, the included libffi package doesn't support ARM, you need a
    newer libffi
    version.

    I think that the current Python 2.5 sources, from SVN, should work.

    Thomas

    --
    http://mail.python.org/mailman/listinfo/python-list
    **********************************************************************
    Samuel M. Smith Ph.D.
    2966 Fort Hill Road
    Eagle Mountain, Utah 84005-4108
    801-768-2768 voice
    801-768-2769 fax
    **********************************************************************
    "The greatest source of failure and unhappiness in the world is
    giving up what we want most for what we want at the moment"
    **********************************************************************

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
grouppython-list @
categoriespython
postedOct 29, '07 at 9:48p
activeOct 30, '07 at 2:55p
posts3
users2
websitepython.org

2 users in discussion

Samuel M. Smith: 2 posts Thomas Heller: 1 post

People

Translate

site design / logo © 2023 Grokbase