This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Title: install fails on hard link
Type: behavior Stage: needs patch
Components: Build Versions: Python 3.3, Python 3.4
Status: open Resolution:
Dependencies: Superseder:
Assigned To: loewis Nosy List: christian.heimes, goldenautumnday, loewis
Priority: low Keywords:

Created on 2006-03-08 17:06 by goldenautumnday, last changed 2022-04-11 14:56 by admin.

Messages (5)
msg27709 - (view) Author: goldenautumnday (goldenautumnday) Date: 2006-03-08 17:06
Installing on an attached linux drive from a Mac OS X (Tiger) system fails 
because hard links are not supported.  This is attempted when trying to 
link python2.4 to python (ln python2.4 python).  If it fails, a copy should 
be performed instead.

changing mode of /Users/martinol/auto_v4.0/devel/powerpc-apple-
darwin8.5.0/bin/idle to 755
changing mode of /Users/martinol/auto_v4.0/devel/powerpc-apple-
darwin8.5.0/bin/pydoc to 755
changing mode of /Users/martinol/auto_v4.0/devel/powerpc-apple-
darwin8.5.0/bin/ to 755
if test -f /Users/martinol/auto_v4.0/devel/powerpc-apple-darwin8.5.0/
bin/python -o -h /Users/martinol/auto_v4.0/devel/powerpc-apple-
darwin8.5.0/bin/python; \
then rm -f /Users/martinol/auto_v4.0/devel/powerpc-apple-
darwin8.5.0/bin/python; \
else true; \
(cd /Users/martinol/auto_v4.0/devel/powerpc-apple-darwin8.5.0/bin; ln 
python2.4 python)
ln: python: Operation not supported

/Users/martinol/auto_v4.0 is symbolic link to /Volumes/thing/martinol 
which has been attached to using openapple-K (via SMB).
msg27710 - (view) Author: goldenautumnday (goldenautumnday) Date: 2006-03-08 20:22
Logged In: YES 

Changing line 599 in to:

(cd $(DESTDIR)$(BINDIR); $(LN) python$(VERSION)$(EXE) $(PYTHON) || cp python

allowed make to complete.
msg27711 - (view) Author: Ronald Oussoren (ronaldoussoren) * (Python committer) Date: 2006-04-02 19:24
Logged In: YES 

Adding a -s flag to the link command should also fix this issue and has the 
advantage that all builds will be done the same way. The cost for resolving the 
symlink should be neglectible.
msg27712 - (view) Author: Martin v. Löwis (loewis) * (Python committer) Date: 2006-04-03 12:33
Logged In: YES 

If we are going to support "funny" file systems, falling
back to copying looks right to me. While Apple's SMB
implementation supports symlinks on smb (through a hack),
other implementations might not.
msg192743 - (view) Author: Christian Heimes (christian.heimes) * (Python committer) Date: 2013-07-09 12:27
Our Makefile still uses a hard link in two place:


python$(LDVERSION)$(EXE) python$(VERSION)$(EXE))
Date User Action Args
2022-04-11 14:56:15adminsetgithub: 42997
2013-07-09 12:27:42christian.heimessetversions: + Python 3.3, Python 3.4, - Python 3.2
nosy: + christian.heimes

messages: + msg192743

stage: test needed -> needs patch
2010-05-20 12:47:28loewissetversions: + Python 3.2, - Python 3.1, Python 2.7
2009-09-06 14:19:03ronaldoussorensetnosy: - ronaldoussoren
2009-03-21 00:45:36ajaksu2setpriority: normal -> low
stage: test needed
type: behavior
versions: + Python 3.1, Python 2.7
2006-03-08 17:06:40goldenautumndaycreate