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.

classification
Title: install fails on hard link
Type: behavior Stage: needs patch
Components: Build Versions: Python 3.3, Python 3.4
process
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/smtpd.py 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; \
fi
(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 
user_id=1471082

Changing line 599 in Makefile.pre.in to:

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

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

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 
user_id=21627

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:

libpython$(LDVERSION).so 

python$(LDVERSION)$(EXE) python$(VERSION)$(EXE))
History
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