New submission from Paul Smith <p...@mad-scientist.net>:

Maybe no one cares anymore, but I've discovered that if I run make with -j the 
installation sometimes fails with this error:

install: mkdir /Users/build/.../dist/python/x86_64-darwin/lib: File exists

I believe it's because the targets altbininstall and libainstall as well as 
$(DESTSHARED) ($(BINLIBDEST)/lib-dynload) all contain a for loop which tries to 
create $(LIBDIR).  The makefile uses the install -d command to create 
directories and this command will fail if the directory already exists.

I haven't investigated the full dependency chain but at least two of the above 
targets don't have a relationship that forces make to avoid running them both 
at the same time.

Maybe a better solution would be to create a separate target like 
make-directories or something that creates all the directories and have the 
other targets depend on that one target.  Or something.

As it is, my MacOS builds fail about 1 in 5 times or similar.

Interestingly my Linux builds never fail.  Not sure if install works 
differently on Linux, or the timing is just different there.

----------
components: Build
messages: 339078
nosy: madscientist
priority: normal
severity: normal
status: open
title: Python 2.7 build install fails intermittently with -j on MacOS
type: behavior
versions: Python 2.7

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue36464>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to