Issue7757
Created on 2010-01-22 16:46 by msmith@cbnco.com, last changed 2010-01-25 15:47 by msmith@cbnco.com.
| Messages (3) | |||
|---|---|---|---|
| msg98152 - (view) | Author: Michael Smith (msmith@cbnco.com) | Date: 2010-01-22 16:46 | |
I've built Python 2.6.2 with a prefix of "" for an embedded system, so it's installed into /bin/python, /lib/python2.6/, etc. If I run a script with "python /tmp/script.py" or by putting in a #!/bin/python and executing it directly, sys.path is missing the leading slashes: ['/tmp', 'lib/python26.zip', 'lib/python2.6/', 'lib/python2.6/plat-linux2', 'lib/python2.6/lib-tk', 'lib/python2.6/lib-old', 'lib/lib-dynload'] This causes all module imports to fail. I can work around this by making /usr a symlink to / and running the script as "/usr/bin/python /tmp/script.py", or by setting PYTHONHOME=/ before starting Python. In Modules/getpath.c, search_for_prefix() calls reduce() on argv0_path at the end of a do-while loop, so "/bin" becomes "" and the loop terminates. Then there's a call to joinpath(PREFIX, "lib/python2.6"), where PREFIX is "", and this fails (no leading slash). calculate_path() warns: Could not find platform independent libraries <prefix> and falls back to joinpath(PREFIX, "lib/python2.6") again, which still fails. I was thinking I could work around it by building with prefix="/" instead of "", but the behaviour is the same - I don't know why, yet. |
|||
| msg98155 - (view) | Author: R. David Murray (r.david.murray) * ![]() |
Date: 2010-01-22 17:45 | |
I thought I remembered a bug that mentioned prefix="/". What I found was Issue1676135, which might have something to do with your last question. |
|||
| msg98290 - (view) | Author: Michael Smith (msmith@cbnco.com) | Date: 2010-01-25 15:47 | |
Yes, that does look related. The fix from Issue1676135 seems to handle --prefix="/" properly, and from what I can tell PREFIX does get set to "/". There is also code in getpath.c to set sys.prefix to "/" if it's "". The correct prefix for configure is actually "", not "/", to avoid double-slashes - but neither one seems to work at the moment. |
|||
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2010-01-25 15:47:50 | msmith@cbnco.com | set | messages: + msg98290 |
| 2010-01-22 17:45:36 | r.david.murray | set | priority: normal nosy: + r.david.murray messages: + msg98155 |
| 2010-01-22 16:46:14 | msmith@cbnco.com | create | |
