Summary: | dev-lang/python-2.6.4: failed to emerge with permission denied | ||
---|---|---|---|
Product: | Gentoo/Alt | Reporter: | john <johnthomascraig> |
Component: | Prefix Support | Assignee: | Gentoo Prefix <prefix> |
Status: | RESOLVED OBSOLETE | ||
Severity: | normal | CC: | gmturner007 |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | x86 | ||
OS: | Interix | ||
URL: | http://www.debian-interix.net/bugs/kernel/#exec | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
kludge to work around interix bug
patch to python-2.6.4.ebuild to use with the previous attachment. |
Description
john
2008-12-20 00:52:53 UTC
hmmm, weird. Has ./python the executable bit set? (In reply to comment #1) > hmmm, weird. Has ./python the executable bit set? > Yes hmm... i vaguely recall, that there is a directory called "Python", and thus, during build, python renames it's executable to python.exe on case-insensitive filesystems, which it should do on interix. i don't know if this persists with python 2.5, but it was so with 2.4 IIRC. also, maybe you could try without parallel make (-j1)? Well you were right, the directory "Python" conflicts with the executable "python" on certain interixen due to a bug (see http://www.debian-interix.net/bugs/kernel/#exec). The (soon to be) enclosed patch works around this but is pretty absurd and breaks the ability to "prepare" the ebuild more than once. -gmt Created attachment 213531 [details, diff]
kludge to work around interix bug
Created attachment 213532 [details, diff]
patch to python-2.6.4.ebuild to use with the previous attachment.
crapz0rz! woah. one sec. this is a no-issue! the true cause was the case insensitive file system, not a case insensitive exec. python knows this issue from other platforms already, so i needed to only convince it to use the same stuff when building for interix. so thanks for the effort - but this has been fixed. if the issue re-appeared, it must be something else. grobian? a while ago, wasn't there a discussion on file system case sensitivity checks? i'll be unavailable for 3 weeks, so this has to wait... (In reply to comment #8) > woah. one sec. this is a no-issue! the true cause was the case insensitive file > system, not a case insensitive exec. python knows this issue from other > platforms already, so i needed to only convince it to use the same stuff when > building for interix. so thanks for the effort - but this has been fixed. > if the issue re-appeared, it must be something else. grobian? a while ago, > wasn't there a discussion on file system case sensitivity checks? i'll be > unavailable for 3 weeks, so this has to wait... It sounds as though you are assuming that nobody using Interix has a case-sensitive filesystem -- but as I am pretty sure you know, this is not the case. I have case sensitivity turned on in my Interix (Windows really); I kinda assumed everybody else using Interix did this too? I don't know if it's exec or what the root cause is. All I know is that if I do, i.e., # mkdir /opt/gentoo/bin/LS and then try to run "ls" I will get this permission denied error. I only blamed it on exec because the debian page did so, and I assumed they knew what they were talking about. hmm... ok. i'm never using the case sensitive file system, since that changes behaviour of many things... at least at our company i'm not allowed to make it sensitive ;) so i guess your best chance is switching back to case insensitive... sorry. hmmm, fix? did someone make the efforts to report this to upstream? python 2.6 is gone from the tree This bug has reappeared in Python-2.7.1. The cause seems to be that the workaround patch targets configure.in but the directory name that needs to be changed is now in Makefile.pre.in. (In reply to comment #14) > This bug has reappeared in Python-2.7.1. The cause seems to be that the > workaround patch targets configure.in but the directory name that needs to be > changed is now in Makefile.pre.in. Oops, read the patch wrong. The problem is this patch isn't being applied anymore, but the directory name conflict still exists. I'm a bit lost here. Python's configure tries to determine whether or not your filesystem is case-sensitive. Does this check report for you ("for case-insensitive build directory") as result "yes"? That should sort of guarantee you get a python.exe thing in your builddir, which would make this bug impossible. Can you check your configure output and if you have a python.exe executable in your builddir? If not, can you dig a bit into as to why configure misdetects, or why the buildsystem ignores BUILDEXEEXT for you? |