[Python-checkins] Failed compilation on ia64 Debian buildbot slave
Thomas Heller
theller at python.net
Tue Apr 4 22:13:04 CEST 2006
Martin v. Löwis wrote:
> Thomas Heller wrote:
>> http://www.python.org/dev/buildbot/trunk/ia64%20Debian%20unstable%20trunk/builds/6/step-compile/0
>>
>> Could it be that this compilation failure is caused by a previous failed build/test attempt,
>> where the 'clean' step has not been run?
>>
>> Python's setup.py, in detect_ctypes(), detects that ctypes/libffi must be configured
>> if a certain file is not present in the build directory.
>
> It's certainly the case that the clean step wasn't run previously
> (because somehow, the connection to the slave was lost). However, this
> shouldn't cause the build to fail: it should be possible to invoke make
> over and over again, without invoking "make clean" in-between.
>
> The real problem seems to be that something (what?) is looking for
>
> /home/packages/python/buildarea/trunk.klose-debian-ia64/build/Modules/_ctypes/libffi/src/prep_cif.c
It's distutils newer_group function. And distutils does a good job at hiding the error.
For a test I've removed prep_cif.c in my own sandbox, and started setup.py with DISTUTILS_DEBUG
env var set. The result is appended to this email.
> This file ought to be present, it is under subversion control.
The error on the buildbot could be a different one. Strange.
> I "fixed" it by forcing a build for that builder on a different branch;
> this causes a complete cleanup of the build directory, and a fresh checkout.
Seems that this has helped, the compilation did succeed now.
> If this happens again, we will have to investigate what happened.
>
> Regards,
> Martin
thomas at tubu:~/devel/trunk$ make
case $MAKEFLAGS in \
*-s*) CC='gcc -pthread' LDSHARED='gcc -pthread -shared' OPT='-DNDEBUG -g -O3 -Wall -Wstrict-prototypes' ./python -E ./setup.py -q build;; \
*) CC='gcc -pthread' LDSHARED='gcc -pthread -shared' OPT='-DNDEBUG -g -O3 -Wall -Wstrict-prototypes' ./python -E ./setup.py build;; \
esac
Distribution.parse_config_files():
options (after parsing config files):
no commands known yet
options (after parsing command line):
option dict for 'build' command:
{}
running build
Distribution.get_command_obj(): creating 'build' command object
running build_ext
Distribution.get_command_obj(): creating 'build_ext' command object
INFO: Can't locate Tcl/Tk libs and/or headers
building '_ctypes' extension
error: /home/thomas/devel/trunk/Modules/_ctypes/libffi/src/prep_cif.c: No such file or directory
Traceback (most recent call last):
File "./setup.py", line 92, in <module>
class PyBuildExt(build_ext):
File "./setup.py", line 1422, in main
'Lib/smtpd.py']
File "/home/thomas/devel/trunk/Lib/distutils/core.py", line 151, in setup
dist.run_commands()
File "/home/thomas/devel/trunk/Lib/distutils/dist.py", line 974, in run_commands
self.run_command(cmd)
File "/home/thomas/devel/trunk/Lib/distutils/dist.py", line 994, in run_command
cmd_obj.run()
File "/home/thomas/devel/trunk/Lib/distutils/command/build.py", line 112, in run
self.run_command(cmd_name)
File "/home/thomas/devel/trunk/Lib/distutils/cmd.py", line 333, in run_command
self.distribution.run_command(command)
File "/home/thomas/devel/trunk/Lib/distutils/dist.py", line 994, in run_command
cmd_obj.run()
File "/home/thomas/devel/trunk/Lib/distutils/command/build_ext.py", line 279, in run
self.build_extensions()
File "./setup.py", line 179, in build_extensions
build_ext.build_extensions(self)
File "/home/thomas/devel/trunk/Lib/distutils/command/build_ext.py", line 405, in build_extensions
self.build_extension(ext)
File "./setup.py", line 184, in build_extension
build_ext.build_extension(self, ext)
File "/home/thomas/devel/trunk/Lib/distutils/command/build_ext.py", line 470, in build_extension
depends=ext.depends)
File "/home/thomas/devel/trunk/Lib/distutils/ccompiler.py", line 691, in compile
depends, extra_postargs)
File "/home/thomas/devel/trunk/Lib/distutils/ccompiler.py", line 405, in _setup_compile
if newer_group(L, objects[i]):
File "/home/thomas/devel/trunk/Lib/distutils/dep_util.py", line 89, in newer_group
source_mtime = os.stat(source)[ST_MTIME]
OSError: [Errno 2] No such file or directory: '/home/thomas/devel/trunk/Modules/_ctypes/libffi/src/prep_cif.c'
make: *** [sharedmods] Fehler 1
thomas at tubu:~/devel/trunk$
More information about the Python-checkins
mailing list