[PyPy-issue] [issue595] Add Tkinter support through cpyext

Bob Ziuchkovski pypy-dev-issue at codespeak.net
Fri Dec 3 21:02:00 CET 2010


New submission from Bob Ziuchkovski <bob.ziuchkovski at gmail.com>:

This is a request for adding Tkinter support to pypy.  I tested building Tkinter 
from python 2.5.2 against the pypy trunk last night (12/02) and the build fails 
with the below output.  I used the ubuntu packaging of the module's source since 
it contains only the Tkiner extension.  That archive is available at 
http://archive.ubuntu.com/ubuntu/pool/main/p/python-stdlib-extensions/python-
stdlib-extensions_2.5.2-0ubuntu2.tar.gz .  I know cpyext is considered alpha at 
this stage, so I marked this as a feature request instead of a bug.  The main 
reason I'm requesting Tkinter support is for running the Skeinforge application 
(http://fabmetheus.crsndoo.com/) with a reprap machine (reprap.org), though it 
would be nice to be able to run IDLE as well.  A direct download of skeinforge 
is available via 
http://fabmetheus.crsndoo.com/files/36_reprap_python_beanshell.zip .  I would be 
more than happy to help in testing Tkinter if needed.

Command:
bobbyz at chimera:~/tmp/python-stdlib-extensions-2.5.2/2.5$ python 
/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/presetup.py setup.py build

Results:
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused -
DPy_BUILD_CORE -I/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/include -
I/tmp/usession-trunk-3 /tmp/usession-trunk-3/platcheck_1.c -o /tmp/usession-
trunk-3/platcheck_1.o
[platform:WARNING] In file included from /home/bobbyz/tmp/pypy-
trunk/pypy/module/cpyext/include/Python.h:112,
[platform:WARNING]                  from /tmp/usession-trunk-3/platcheck_1.c:20:
[platform:WARNING] /home/bobbyz/tmp/pypy-
trunk/pypy/module/cpyext/include/modsupport.inl: In function ‘Py_InitModule4’:
[platform:WARNING] /home/bobbyz/tmp/pypy-
trunk/pypy/module/cpyext/include/modsupport.inl:21: warning: implicit 
declaration of function ‘_Py_InitPyPyModule’
[platform:WARNING] /home/bobbyz/tmp/pypy-
trunk/pypy/module/cpyext/include/modsupport.inl:23: warning: return makes 
pointer from integer without a cast
[platform:execute] gcc /tmp/usession-trunk-3/platcheck_1.o -pthread -lrt -o 
/tmp/usession-trunk-3/platcheck_1
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused -
DPy_BUILD_CORE -I/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/include -
I/tmp/usession-trunk-3 /tmp/usession-trunk-3/platcheck_5.c -o /tmp/usession-
trunk-3/platcheck_5.o
[platform:WARNING] In file included from /home/bobbyz/tmp/pypy-
trunk/pypy/module/cpyext/include/Python.h:112,
[platform:WARNING]                  from /tmp/usession-trunk-3/platcheck_5.c:20:
[platform:WARNING] /home/bobbyz/tmp/pypy-
trunk/pypy/module/cpyext/include/modsupport.inl: In function ‘Py_InitModule4’:
[platform:WARNING] /home/bobbyz/tmp/pypy-
trunk/pypy/module/cpyext/include/modsupport.inl:21: warning: implicit 
declaration of function ‘_Py_InitPyPyModule’
[platform:WARNING] /home/bobbyz/tmp/pypy-
trunk/pypy/module/cpyext/include/modsupport.inl:23: warning: return makes 
pointer from integer without a cast
[platform:execute] gcc /tmp/usession-trunk-3/platcheck_5.o -pthread -lrt -o 
/tmp/usession-trunk-3/platcheck_5
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused 
/tmp/usession-trunk-3/platcheck_7.c -o /tmp/usession-trunk-3/platcheck_7.o
[platform:Error] /tmp/usession-trunk-3/platcheck_7.c: In function ‘main’:
[platform:Error] /tmp/usession-trunk-3/platcheck_7.c:32: error: too many 
arguments to function ‘getpgrp’
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused 
/tmp/usession-trunk-3/platcheck_8.c -o /tmp/usession-trunk-3/platcheck_8.o
[platform:Error] /tmp/usession-trunk-3/platcheck_8.c: In function ‘main’:
[platform:Error] /tmp/usession-trunk-3/platcheck_8.c:32: error: too many 
arguments to function ‘setpgrp’
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused -
fPIC -I/home/bobbyz/tmp/pypy-trunk/pypy/translator/c /tmp/usession-trunk-
3/module_cache/module_0.c -o /tmp/usession-trunk-3/module_cache/module_0.o
[platform:execute] gcc -shared /tmp/usession-trunk-3/module_cache/module_0.o -
pthread -lrt -Wl,--export-dynamic,--version-script=/tmp/usession-trunk-
3/dynamic-symbols-0 -o /tmp/usession-trunk-3/module_cache/externmod.so
faking <type 'module'>
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused -
I/home/bobbyz/tmp/pypy-trunk/pypy/translator/c /tmp/usession-trunk-
3/platcheck_15.c -o /tmp/usession-trunk-3/platcheck_15.o
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused -
I/home/bobbyz/tmp/pypy-trunk/pypy/translator/c /tmp/usession-trunk-
3/module_cache/module_1.c -o /tmp/usession-trunk-3/module_cache/module_1.o
[platform:execute] gcc /tmp/usession-trunk-3/platcheck_15.o /tmp/usession-trunk-
3/module_cache/module_1.o -pthread -lrt -Wl,--export-dynamic,--version-
script=/tmp/usession-trunk-3/dynamic-symbols-1 -o /tmp/usession-trunk-
3/platcheck_15
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused -
fPIC -DPy_BUILD_CORE -Werror=implicit-function-declaration -
I/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/include -I/tmp/usession-trunk-3 
/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/src/varargwrapper.c -o 
/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/src/varargwrapper.o
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused -
fPIC -DPy_BUILD_CORE -Werror=implicit-function-declaration -
I/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/include -I/tmp/usession-trunk-3 
/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/src/pyerrors.c -o 
/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/src/pyerrors.o
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused -
fPIC -DPy_BUILD_CORE -Werror=implicit-function-declaration -
I/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/include -I/tmp/usession-trunk-3 
/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/src/modsupport.c -o 
/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/src/modsupport.o
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused -
fPIC -DPy_BUILD_CORE -Werror=implicit-function-declaration -
I/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/include -I/tmp/usession-trunk-3 
/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/src/getargs.c -o 
/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/src/getargs.o
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused -
fPIC -DPy_BUILD_CORE -Werror=implicit-function-declaration -
I/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/include -I/tmp/usession-trunk-3 
/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/src/stringobject.c -o 
/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/src/stringobject.o
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused -
fPIC -DPy_BUILD_CORE -Werror=implicit-function-declaration -
I/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/include -I/tmp/usession-trunk-3 
/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/src/mysnprintf.c -o 
/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/src/mysnprintf.o
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused -
fPIC -DPy_BUILD_CORE -Werror=implicit-function-declaration -
I/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/include -I/tmp/usession-trunk-3 
/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/src/pythonrun.c -o 
/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/src/pythonrun.o
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused -
fPIC -DPy_BUILD_CORE -Werror=implicit-function-declaration -
I/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/include -I/tmp/usession-trunk-3 
/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/src/bufferobject.c -o 
/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/src/bufferobject.o
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused -
fPIC -DPy_BUILD_CORE -Werror=implicit-function-declaration -
I/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/include -I/tmp/usession-trunk-3 
/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/src/object.c -o 
/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/src/object.o
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused -
fPIC -DPy_BUILD_CORE -Werror=implicit-function-declaration -
I/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/include -I/tmp/usession-trunk-3 
/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/src/cobject.c -o 
/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/src/cobject.o
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused -
fPIC -DPy_BUILD_CORE -Werror=implicit-function-declaration -
I/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/include -I/tmp/usession-trunk-3 
/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/src/structseq.c -o 
/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/src/structseq.o
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused -
fPIC -DPy_BUILD_CORE -Werror=implicit-function-declaration -
I/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/include -I/tmp/usession-trunk-3 
/tmp/usession-trunk-3/module_cache/module_2.c -o /tmp/usession-trunk-
3/module_cache/module_2.o
[platform:execute] gcc -c -O3 -pthread -fomit-frame-pointer -Wall -Wno-unused -
fPIC -DPy_BUILD_CORE -Werror=implicit-function-declaration -
I/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/include -I/tmp/usession-trunk-3 
/tmp/usession-trunk-3/module_cache/module_3.c -o /tmp/usession-trunk-
3/module_cache/module_3.o
[platform:execute] gcc -shared /home/bobbyz/tmp/pypy-
trunk/pypy/module/cpyext/src/varargwrapper.o /home/bobbyz/tmp/pypy-
trunk/pypy/module/cpyext/src/pyerrors.o /home/bobbyz/tmp/pypy-
trunk/pypy/module/cpyext/src/modsupport.o /home/bobbyz/tmp/pypy-
trunk/pypy/module/cpyext/src/getargs.o /home/bobbyz/tmp/pypy-
trunk/pypy/module/cpyext/src/stringobject.o /home/bobbyz/tmp/pypy-
trunk/pypy/module/cpyext/src/mysnprintf.o /home/bobbyz/tmp/pypy-
trunk/pypy/module/cpyext/src/pythonrun.o /home/bobbyz/tmp/pypy-
trunk/pypy/module/cpyext/src/bufferobject.o /home/bobbyz/tmp/pypy-
trunk/pypy/module/cpyext/src/object.o /home/bobbyz/tmp/pypy-
trunk/pypy/module/cpyext/src/cobject.o /home/bobbyz/tmp/pypy-
trunk/pypy/module/cpyext/src/structseq.o /tmp/usession-trunk-
3/module_cache/module_2.o /tmp/usession-trunk-3/module_cache/module_3.o -pthread 
-lrt -Wl,--export-dynamic,--version-script=/tmp/usession-trunk-3/dynamic-
symbols-2 -o /tmp/usession-trunk-3/module_cache/pypyapi.so
running build
running build_ext
building '_tkinter' extension
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-
prototypes -fPIC -DWITH_APPINIT=1 -I/usr/include/tcl8.5 -I/usr/X11/include -I. -
I/home/bobbyz/tmp/python-stdlib-extensions-2.5.2/./Include -I. -
I/usr/local/include -I/home/bobbyz/tmp/pypy-trunk/pypy/module/cpyext/include -
I/tmp/usession-trunk-3 -c Modules/_tkinter.c -o build/temp.linux-x86_64-
2.6/Modules/_tkinter.o
Modules/_tkinter.c: In function ‘var_perform’:
Modules/_tkinter.c:1527: warning: implicit declaration of function 
‘PyErr_NormalizeException’
Modules/_tkinter.c: In function ‘var_invoke’:
Modules/_tkinter.c:1550: warning: unused variable ‘self’
Modules/_tkinter.c: In function ‘Tkapp_ExprDouble’:
Modules/_tkinter.c:1851: warning: implicit declaration of function 
‘PyFPE_START_PROTECT’
Modules/_tkinter.c:1851: error: expected expression before ‘return’
Modules/_tkinter.c:1853: error: expected ‘;’ before ‘retval’
Modules/_tkinter.c:1855: warning: implicit declaration of function 
‘PyFPE_END_PROTECT’
Modules/_tkinter.c:1856: error: expected ‘;’ before ‘if’
Modules/_tkinter.c:1858: error: ‘else’ without a previous ‘if’
Modules/_tkinter.c: In function ‘Tkinter_Create’:
Modules/_tkinter.c:2906: warning: implicit declaration of function 
‘Py_GetProgramName’
Modules/_tkinter.c:2906: warning: passing argument 1 of ‘strrchr’ makes pointer 
from integer without a cast
/usr/include/string.h:260: note: expected ‘const char *’ but argument is of type 
‘int’
Modules/_tkinter.c:2910: warning: assignment makes pointer from integer without 
a cast
Modules/_tkinter.c: In function ‘EnableEventHook’:
Modules/_tkinter.c:3058: error: ‘PyOS_InputHook’ undeclared (first use in this 
function)
Modules/_tkinter.c:3058: error: (Each undeclared identifier is reported only 
once
Modules/_tkinter.c:3058: error: for each function it appears in.)
Modules/_tkinter.c: In function ‘DisableEventHook’:
Modules/_tkinter.c:3071: error: ‘PyOS_InputHook’ undeclared (first use in this 
function)
Modules/_tkinter.c: In function ‘init_tkinter’:
Modules/_tkinter.c:3155: warning: passing argument 1 of ‘Tcl_FindExecutable’ 
makes pointer from integer without a cast
/usr/include/tcl8.5/tclDecls.h:914: note: expected ‘const char *’ but argument 
is of type ‘int’
Exception TypeError: "'NoneType' object is not callable" in <function remove at 
0x2257b90> ignored
Exception TypeError: "'NoneType' object is not callable" in <function remove at 
0x2257b90> ignored

----------
effort: ???
messages: 1943
nosy: bobbyz, pypy-issue
priority: feature
release: 1.4
status: unread
title: Add Tkinter support through cpyext

_______________________________________________________
PyPy development tracker <pypy-dev-issue at codespeak.net>
<https://codespeak.net/issue/pypy-dev/issue595>
_______________________________________________________



More information about the Pypy-issue mailing list