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.
Created on 2005年09月19日 03:05 by jafo, last changed 2022年04月11日 14:56 by admin. This issue is now closed.
| Files | ||||
|---|---|---|---|---|
| File name | Uploaded | Description | Edit | |
| python-2.3.4-lib64-regex.patch | jafo, 2005年09月19日 03:05 | One of the Fedora patches. | ||
| python-2.4.1-lib64.patch | jafo, 2005年09月19日 03:06 | Another of the Fedora patches. | ||
| japanese-codecs-lib64.patch | jafo, 2005年09月19日 03:06 | The third obviously lib64 Fedora patch. | ||
| Python-2.6.2-multilib.patch | matejcik, 2009年08月14日 16:27 | SUSE patch for the lib64 issue | ||
| Python-3.3.0b2-multilib.patch | matejcik, 2013年11月07日 15:40 | SUSE patch in python3 | ||
| python-3.6.0-multilib-new.patch | matejcik, 2017年01月16日 11:20 | |||
| lib64_tests.py | vstinner, 2020年02月12日 17:50 | |||
| lib64_tests-2.py | vstinner, 2020年03月09日 13:37 | |||
| lib64_tests-3.py | vstinner, 2020年03月10日 08:05 | |||
| Pull Requests | |||
|---|---|---|---|
| URL | Status | Linked | Edit |
| PR 3698 | closed | matejcik, 2017年09月22日 16:45 | |
| PR 11755 | closed | cstratak, 2019年02月04日 15:09 | |
| PR 18381 | merged | vstinner, 2020年02月06日 17:17 | |
| PR 18476 | merged | vstinner, 2020年02月12日 09:14 | |
| PR 18482 | merged | miss-islington, 2020年02月12日 12:02 | |
| PR 18483 | merged | miss-islington, 2020年02月12日 12:02 | |
| PR 18917 | closed | vstinner, 2020年03月11日 10:14 | |
| PR 18960 | merged | python-dev, 2020年03月12日 14:32 | |
| PR 20332 | merged | mgorny, 2020年05月23日 19:44 | |
| PR 20497 | merged | miss-islington, 2020年05月28日 16:33 | |
| PR 20725 | vstinner, 2020年06月08日 16:36 | ||
| Repositories containing patches | |||
|---|---|---|---|
| http://hg.python.org/users/barry#multiarch | |||
| Messages (96) | |||
|---|---|---|---|
| msg26314 - (view) | Author: Sean Reifschneider (jafo) * (Python committer) | Date: 2005年09月19日 03:05 | |
This is something that's becoming more and more of a problem as more people get systems that run both 32-bit and 64-bit code. There are patches (926209 858809) in the tracker to resolve this issue, I don't know exactly what state they are in. They seem fairly old, one is closed and one is still open. The Fedora RPMs include the following patches for lib64 (attached). Any thoughts on what we need to do to allow building lib64 as a part of the standard release? Or do we just want to wait for these terrible transition days to end and rely on 32+64 packagers to deal with it? Here's a short run-down of the situation: Some systems can run both 32 and 64 bit software. On these systems you *CAN* install a native 64-bit tool-chain, but some people set up both 32 and 64 bit software on these systems for compatibility. You can do 32+64 in a couple of ways, one is to set up a "chroot" environment for the secondary (typically 32-bit) set of libraries and programs. The other is to run the system with 64-bit libraries in /usr/lib64 and 32-bit in /usr/lib (because most software that needs compatibility would be running against /usr/lib, not /usr/lib32). It's a kludge to be sure, but if you need any legacy software that you do not have source for, this is a way of getting 64-bits while still retaining the ability to run 32-bit This is not a problem for systems which only run 64-bit code, nor is it a problem for these 32+64 systems which are running only 64-bit distributions on them. Thoughts? Sean |
|||
| msg59310 - (view) | Author: Christian Heimes (christian.heimes) * (Python committer) | Date: 2008年01月05日 19:33 | |
The problem with 64 bit builds should be discussed before we release 2.6. Another bug day topic. |
|||
| msg64592 - (view) | Author: Alexander Belopolsky (belopolsky) * (Python committer) | Date: 2008年03月27日 14:11 | |
Can someone update the priority so that this is looked at before the 2.6 release? |
|||
| msg64593 - (view) | Author: Alexander Belopolsky (belopolsky) * (Python committer) | Date: 2008年03月27日 14:31 | |
Placing the entire library tree in /usr/lib64 is wasteful on dual 32/64bit installation, but placing just the C modules there is contrary to python import logic and may cause problems to relative imports. I have suggested what I believed was a workable solution: have 64-bit python search lib64-dynload subdirectories instead of lib-dynload. See http://mail.python.org/pipermail/python-dev/2007-April/072653.html Currently $(prefix)/pythonX.Y/lib-dynload is inserted in the sys.path, but I think it would be better to handle this inside the importer in a way similar to how the importer looks for both foo.so and foomodule.so when importing foo. This would allow submodules and user modules treated the same way. |
|||
| msg81099 - (view) | Author: Akira Kitada (akitada) * | Date: 2009年02月03日 21:23 | |
Similar problem report: http://bugs.python.org/issue1019715 |
|||
| msg82929 - (view) | Author: Akira Kitada (akitada) * | Date: 2009年02月28日 17:32 | |
3rd party C modules are put in site-packages, so just having importer of 64-bit python look at lib64-dynload is not enough for solving this. To work around this problem, I did some hacks on my local Python to look at lib and lib64. It worked, but just as belopolsky said, this is wasteful and ugly. |
|||
| msg91559 - (view) | Author: jan matejek (matejcik) * | Date: 2009年08月14日 16:27 | |
for completenes, here's a patch that's in use in SUSE. it's advantage over Fedora's is that it works on both 32bit and 64bit installs |
|||
| msg91769 - (view) | Author: Matthias Klose (doko) * (Python committer) | Date: 2009年08月20日 11:01 | |
both patches assume that everybody uses lib64 for 64bit libs, which is not true for Debian/Ubuntu. Even the FHS doesn't mandate the use of lib64. |
|||
| msg91781 - (view) | Author: jan matejek (matejcik) * | Date: 2009年08月20日 18:29 | |
well in our patch, at least, the directory is governed by sys.lib which is defined through configure. i don't understand the configure language well enough, but i'd assume that making it parametrized isn't too hard? |
|||
| msg92541 - (view) | Author: Akira Kitada (akitada) * | Date: 2009年09月12日 12:46 | |
I think this is duplicate of issue858809. |
|||
| msg94941 - (view) | Author: Éric Araujo (eric.araujo) * (Python committer) | Date: 2009年11月05日 19:23 | |
If I understand correctly, using lib32 or lib64 is a kludge. Debian and Ubuntu want to come up with a better way to do this: http://wiki.debian.org/ReleaseGoals/MultiArch https://wiki.ubuntu.com/MultiarchSpec Kind regards. |
|||
| msg94982 - (view) | Author: jan matejek (matejcik) * | Date: 2009年11月06日 16:26 | |
thanks for the info; however, it still means that python needs to learn to live in places other than "/usr/lib" |
|||
| msg94986 - (view) | Author: Marc-Andre Lemburg (lemburg) * (Python committer) | Date: 2009年11月06日 17:27 | |
jan matejek wrote: > > jan matejek <jmatejek@suse.cz> added the comment: > > thanks for the info; however, it still means that python needs to learn > to live in places other than "/usr/lib" The main problem is that Python's configuration system is not geared up to having the lib directories for platform dependent and platform independent parts use different names. It currently only supports using different path *prefixes* for such setups (--prefix and --exec-prefix), e.g. /usr and /usr64 would work just fine. It doesn't follow --libdir. Note that Tarek is currently working on a cleanup of the installation schemes (see distutils/commands/install.py, distutils/sysconfig.py and site.py) which will then also be used by site.py to setup sys.path. A new modules will unite all these settings, so this should be the target of any patches regarding installation and path lookup schemes. BTW: The "sys.lib" setting mentioned on the tracker is not standard. The naming also doesn't look right, since the name of the "lib" directory path component is an OS feature, not a system one that you configure. os.lib_dir would be more appropriate. |
|||
| msg94989 - (view) | Author: Marc-Andre Lemburg (lemburg) * (Python committer) | Date: 2009年11月06日 17:41 | |
Adding Tarek to the ticket. |
|||
| msg132424 - (view) | Author: Barry A. Warsaw (barry) * (Python committer) | Date: 2011年03月28日 21:29 | |
Please note another aspect of this problem will bite all Python developers on Ubuntu 11.04. With the introduction of multiarch, not all stdlib Python extension modules can be built out of the box, as seen here: https://bugs.launchpad.net/ubuntu/+source/db4.8/+bug/738213/comments/13 Ubuntu's source package was hacked to make things work, by calling out to dpkg-architecture and adding the resulting directories to library_dirs and include_dirs search paths. That patch would obviously have to be modified at the very least to be robust on non-Debian/Ubuntu platforms. I'm not sure what the right solution is for upstream. |
|||
| msg132503 - (view) | Author: Barry A. Warsaw (barry) * (Python committer) | Date: 2011年03月29日 19:11 | |
Here's a fix that works for me on Ubuntu 11.04. |
|||
| msg132505 - (view) | Author: Barry A. Warsaw (barry) * (Python committer) | Date: 2011年03月29日 19:19 | |
I should note that I'd love to backport this to Python 3.2, 3.1, 2.7 and 2.6 since none of them can build entirely now on multiarch systems. Since it only affects search order in the build process, one could argue that it's not a new feature :). |
|||
| msg132506 - (view) | Author: Antoine Pitrou (pitrou) * (Python committer) | Date: 2011年03月29日 19:28 | |
Barry: does it allow to install Python into /usr/lib/whateverarch, or is it just a partial fix for something slightly unrelated to this issue? |
|||
| msg132511 - (view) | Author: Arfrever Frehtes Taifersar Arahesis (Arfrever) * (Python triager) | Date: 2011年03月29日 19:38 | |
A proper fix is to introduce sys.libdir, which would be controllable by --libdir=${value} option of `configure`. If --libdir=${value} is not passed, then sys.libdir would default to sys.prefix + "/lib".
sysconfig, distutils etc. would have to use sys.libdir.
|
|||
| msg132535 - (view) | Author: Barry A. Warsaw (barry) * (Python committer) | Date: 2011年03月29日 21:39 | |
On Mar 29, 2011, at 07:28 PM, Antoine Pitrou wrote: > >Antoine Pitrou <pitrou@free.fr> added the comment: > >Barry: does it allow to install Python into /usr/lib/whateverarch, or is it >just a partial fix for something slightly unrelated to this issue? Antoine, you're right that the problem and fix I'm talking about is probably different than the original bug report. I really should create a new issue, since mine isn't about building multiarch for Python, but instead just being able to build Python on a multiarch system. My problem is thankfully much simpler. |
|||
| msg132537 - (view) | Author: Barry A. Warsaw (barry) * (Python committer) | Date: 2011年03月29日 21:49 | |
I retract my patch for this bug because the issue described here is actually different than the one I want to fix. See issue 11715 for the problem of building Python on multiarch Debian and Ubuntu (e.g. Ubuntu 11.04). |
|||
| msg132538 - (view) | Author: Barry A. Warsaw (barry) * (Python committer) | Date: 2011年03月29日 22:05 | |
On Mar 29, 2011, at 07:38 PM, Arfrever Frehtes Taifersar Arahesis wrote:
>A proper fix is to introduce sys.libdir, which would be controllable by
>--libdir=${value} option of `configure`. If --libdir=${value} is not passed,
>then sys.libdir would default to sys.prefix + "/lib". sysconfig, distutils
>etc. would have to use sys.libdir.
Please note that I'm not interested (right now <wink>) in building Python
multiarch, but building Python *on* multiarch. So I think simply adding the
right search paths to setup.py is the right way to go, and I've opened a
separate issue for it.
|
|||
| msg132540 - (view) | Author: Matthias Klose (doko) * (Python committer) | Date: 2011年03月29日 22:11 | |
heh, that's easy, just add the multiarch id to the extension name ;-) |
|||
| msg132542 - (view) | Author: Matthias Klose (doko) * (Python committer) | Date: 2011年03月29日 22:12 | |
On 29.03.2011 21:28, Antoine Pitrou wrote: > > Barry: does it allow to install Python into /usr/lib/whateverarch, no, it looks for headers and libraries in more directories. But really, this whole testing for paths is wrong. Just use the compiler to search for headers and libraries, no need to check these on your own. > > or is it just a partial fix for something slightly unrelated to this issue? IMO, unrelated to the original report. |
|||
| msg132544 - (view) | Author: Barry A. Warsaw (barry) * (Python committer) | Date: 2011年03月29日 22:15 | |
On Mar 29, 2011, at 10:12 PM, Matthias Klose wrote: >no, it looks for headers and libraries in more directories. But really, this >whole testing for paths is wrong. Just use the compiler to search for headers >and libraries, no need to check these on your own. You're probably right about that, but reimplementing Python's build system is out of scope for right now. ;) For one thing, doing so wouldn't allow me to backport to older Pythons, which I really want to do. |
|||
| msg132546 - (view) | Author: Barry A. Warsaw (barry) * (Python committer) | Date: 2011年03月29日 22:15 | |
On Mar 29, 2011, at 10:11 PM, Matthias Klose wrote: >heh, that's easy, just add the multiarch id to the extension name ;-) Clever! :) |
|||
| msg160482 - (view) | Author: Arfrever Frehtes Taifersar Arahesis (Arfrever) * (Python triager) | Date: 2012年05月12日 17:00 | |
I currently think that sys.libdir should be only basename of libdir (e.g. "lib" or "lib64") to allow to easily use it with something else than sys.prefix. |
|||
| msg160671 - (view) | Author: Éric Araujo (eric.araujo) * (Python committer) | Date: 2012年05月14日 22:14 | |
On Mar 29, 2011, at 10:12 PM, Matthias Klose wrote: > no, it looks for headers and libraries in more directories. But really, this > whole testing for paths is wrong. Just use the compiler to search for headers > and libraries, no need to check these on your own. Do all compilers provide this info, including Windows ones? If so, that would be a nice feature for distutils2. Arfrever Frehtes Taifersar Arahesis (Arfrever) on 2012年05月12日 19:00 > I currently think that sys.libdir should be only basename of libdir (e.g. > "lib" or "lib64") to allow to easily use it with something else than sys.prefix. With the new sysconfig module I don’t think we need to clutter sys with another attribute. |
|||
| msg160691 - (view) | Author: Marc-Andre Lemburg (lemburg) * (Python committer) | Date: 2012年05月15日 07:42 | |
Éric Araujo wrote: > > Éric Araujo <merwok@netwok.org> added the comment: > > On Mar 29, 2011, at 10:12 PM, Matthias Klose wrote: >> no, it looks for headers and libraries in more directories. But really, this >> whole testing for paths is wrong. Just use the compiler to search for headers >> and libraries, no need to check these on your own. > > Do all compilers provide this info, including Windows ones? If so, that would be a nice feature for distutils2. This only works for a handful of system library paths, not the extra ones that you may need to search for local installations of libraries and which you have to inform the compiler about :-) Many gcc installations, for example, don't include the /usr/local or /opt/local dir trees in the search. On Windows, you have to run the correct vc*.bat files to have the paths setup and optional software rarely adds the correct paths to LIB and INCLUDE. The compiler also won't help with the problem Sean originally pointed to: building software on systems that can run both 32-bit and 64-bit and finding the right set of libs to link at. Another problem is finding the paths to the right version of a library (both include files and corresponding libraries). While it would be great to have a system tool take care of setting things up correctly, I don't know of any such tool, so searching paths and inspecting files using REs appears to be the only way to build a general purpose detection scheme. mxSetup.py (included in egenix-mx-base) uses such a scheme, distutils has one too. |
|||
| msg202341 - (view) | Author: Barry A. Warsaw (barry) * (Python committer) | Date: 2013年11月07日 15:17 | |
Is this issue still relevant? |
|||
| msg202343 - (view) | Author: jan matejek (matejcik) * | Date: 2013年11月07日 15:40 | |
Yes. We still have a patch for two things: 1. fix setup.py script to look for libraries in correct (lib64) prefixes, and 2. fix values returned from sysconfig, to reflect that python resides in lib64 "$prefix/lib" is hardcoded in many places. Lib64 is probably not going away anytime soon, so it would be nice if this was solved once and for all ;) The good thing is that with sysconfig, we don't have to do much beyond teaching sysconfig about the right values. To reiterate, our current solution is to introduce "sys.lib" (and "sys.arch", but that is never used anymore) that is either "lib" or "lib64", and use this in place of the string "lib" wherever appropriate. We find the value for sys.lib through configure magic. |
|||
| msg202354 - (view) | Author: Matthias Klose (doko) * (Python committer) | Date: 2013年11月07日 15:56 | |
the patch in msg202343 is wrong, hardcoding lib64 on Debian/Ubuntu. At least the configure check should check for lib64 as a directory and not a symlink, and only then default to lib64. two other issues with the patch: - I would like to see any new OS-dependent locations in the sysconfig module, not the sys module. - Please don't depend on uname for the autoconf check, but on the gnu host triplet. - Please don't add another `arch' attribute to sys. We already have enough of these in sysconfig. |
|||
| msg202359 - (view) | Author: jan matejek (matejcik) * | Date: 2013年11月07日 16:05 | |
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Dne 7.11.2013 16:56, Matthias Klose napsal(a): > > Matthias Klose added the comment: > > the patch in msg202343 is wrong, hardcoding lib64 on Debian/Ubuntu. This patch is provided for reference only - it works for us at SUSE. I'll be happy to spend some time improving it for general usage, if this has any chance of being commited. > At least the configure check should check for lib64 as a directory and not > a symlink, and only then default to lib64. Maybe this should be detected differently altogether. Perhaps by working with LIBDIR, which is known to configure? > > two other issues with the patch: > > - I would like to see any new OS-dependent locations in the sysconfig > module, not the sys module. how would you propose to put the value into sysconfig in the first place? It seems to rely heavily on existing attributes from sys. > > - Please don't depend on uname for the autoconf check, but on the gnu host > triplet. > > - Please don't add another `arch' attribute to sys. We already have enough > of these in sysconfig. We don't use this one anymore, and i'm not entirely sure that we ever did. I am happy to drop it. > > ---------- > > _______________________________________ Python tracker > <report@bugs.python.org> <http://bugs.python.org/issue1294959> > _______________________________________ > -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (GNU/Linux) Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQIcBAEBAgAGBQJSe7pdAAoJEIskb84DCy7LvwcP/2n74K2XDsRu7K6OV9S4SzDa v7vpDVhAgTBQlHglY+wavUQU2WLBlGyVEk2xHDV8WdI4zU7rAbn7XAW5URxznctq t/Ptvt0IsDAqONrF8ezg8/eTUkcP3nV2Hk90RNe0gliDH6uc0wekKUZzVaTObO1L 3vM8XfEtTQstmK1VxQVpYolUPZm8n7Fe8NEPA6A8bu8CU736cg+wWdbDrr6Mjowo OuO4b56J1P3BIQkBcOLe3mH20Bv8O03P9iNADwYHUOayvgthFWCmoDzh0Y1dQa9/ ynT+G9BuYyXOli6Yr15W0L8OFU+nwxByK81lEClz6UonCvoStnEWnXIN3JYW15Yb rNwb5HKNmKB16yx/RuV3WCvlKbg6ziMlfWGW6qTA1g0P0ivU+sRVQXv5gI8NHcQ9 /4jmaUh7Dr1T4KHujI57Z99kLQHvSlHEM3v4aT96IZNaPghkA+e7TjhMdHmvYtQz YoY75FIy0xVStdXzw8zbM2LVlKp8vxncrjYbuzJYgG1jiYwmF6gDoztXRVP/zwei PypIiui4QaQc32V5dCwpQYpAvpgCVHm6sGSO0HbLWSUK71M8f1YU2BPwvglHb6jh N9tmYfmahvQSyIFOZdb4C6HLlzEezENdYYIf7oMW07z8SOOLU+8eKP13dp6NWINP HCSU34LLYTfwnQ+27aMk =raBO -----END PGP SIGNATURE----- |
|||
| msg202365 - (view) | Author: Barry A. Warsaw (barry) * (Python committer) | Date: 2013年11月07日 16:51 | |
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 On Nov 07, 2013, at 04:05 PM, jan matejek wrote: >> - I would like to see any new OS-dependent locations in the sysconfig >> module, not the sys module. > >how would you propose to put the value into sysconfig in the first place? It >seems to rely heavily on existing attributes from sys. Actually, I think it mostly parses these values from the installed Makefile. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.15 (GNU/Linux) iQIcBAEBCAAGBQJSe8T6AAoJEBJutWOnSwa/6oAQAJM3IksGydXk9CEp7rbSrHea DvYUccmyon1xrmu5RjWnz6ZbJdWlFwx8ouFpbzmZvfAF8E2m0HliNzW+/w28sik5 F37p5/7hScQ2x/AcmdnVrzDotMkvcvMILsCDIhSy/nPIWkI4hAuRGLdPJmgiE3HE b3hjQDCgsVDrp8arJioepx6xWSMpE1dQ/KsL6DDuNl3rUNVR1E1jTYEqY12+fOjc Mcgz6lVndyZreY958iQE/UR7MKoW5lcLnin44PtMYrizwWv82kgwhkqU5tubnTBD m9tD16uCz7xvATM5XI8nmXeLcLMSMfUdaG+4ny//cIjDKYIC6XXoZvCgE7iSEws1 pEIQCmrs6mpk6d83Yz/XDXc4OqjqC+tUPY1TGNqAI/nm416uoKUuO/f1eU397EV+ 2RqJqev8Ho8Sgk7skFJGwcCfTO4yDR40+0wm3u2BiM9bTcnGiJaC7z2TAp9eb4Qs jo/cmYi3BbqPu9Xx3P4oX11NHmjTPBUcZjqsJa8w8q3lf9r5haE5EqlLaNgDnGtL efu7OMom2yQHXdwIJ2efmefjoby812uNFSbTiMvDxZTVCCUyBczBT/Q7gu/4S9Ks Mv3oY1bkq6qAXKKOwzKoblzHJ6VW+A3Rn15Lh6Tb2kj1pTbdS9fFJASWr6CprjWi XbCdez4dMhd+PGwgxHs6 =/r/D -----END PGP SIGNATURE----- |
|||
| msg202366 - (view) | Author: Barry A. Warsaw (barry) * (Python committer) | Date: 2013年11月07日 16:53 | |
On Nov 07, 2013, at 03:40 PM, jan matejek wrote: >To reiterate, our current solution is to introduce "sys.lib" (and "sys.arch", >but that is never used anymore) that is either "lib" or "lib64", and use this >in place of the string "lib" wherever appropriate. We find the value for >sys.lib through configure magic. PEP 421 added sys.implementation, which contains provisions for implementation-specific additions. So a better place to put these non-standard values is sys.implementation._lib and sys.implementation._arch, either instead of or in addition to sysconfig variables. |
|||
| msg202367 - (view) | Author: Matthias Klose (doko) * (Python committer) | Date: 2013年11月07日 16:56 | |
I disagree about sys.implementation. It's useless and wrong for cross builds. Please use sysconfig instead. What sysconfig is maybe missing is a set of variables which you can rely on. |
|||
| msg202368 - (view) | Author: Arfrever Frehtes Taifersar Arahesis (Arfrever) * (Python triager) | Date: 2013年11月07日 16:59 | |
configure.ac should accept an option, which allows to set any custom libdir. Examples (architecture: libdir) in Gentoo: x32: libx32 mips o32: lib mips n32: lib32 mips n64: lib64 |
|||
| msg202378 - (view) | Author: Barry A. Warsaw (barry) * (Python committer) | Date: 2013年11月07日 17:55 | |
On Nov 07, 2013, at 04:56 PM, Matthias Klose wrote: >I disagree about sys.implementation. It's useless and wrong for cross builds. >Please use sysconfig instead. What sysconfig is maybe missing is a set of >variables which you can rely on. Agreed that sysconfig is a better place for more general values. My point was that if OpenSUSE wants to carry deltas that are specific only to its platform, then sys.implementation._<whatever> is the standard place to put it. |
|||
| msg222643 - (view) | Author: Mark Lawrence (BreamoreBoy) * | Date: 2014年07月09日 21:43 | |
Is there agreement on what needs doing here? I'd like to see this into 3.5 before it reaches its 10th birthday :) |
|||
| msg242608 - (view) | Author: Mark Lawrence (BreamoreBoy) * | Date: 2015年05月05日 18:57 | |
Also see #15631 |
|||
| msg285126 - (view) | Author: jan matejek (matejcik) * | Date: 2017年01月10日 15:31 | |
at this again, when porting SUSE patches to 3.6.0 :) ( :( ) Last time there was a discussion, Barry suggested using sysconfig variables to find the proper libdir. Trouble is, to fill out the variables, sysconfig itself uses two sources: a) compiled-in information from the binary, and b) Makefile items Makefile seems an obvious location for storing the libdir info, except, well, to FIND the makefile in the first place, we are using sysconfig variables.... you see where this is heading. So, given that sysconfig is the correct Primary Source for libdir info, we have three options to get it there: 1. compile it into the binary. sys.implementation.platlibdir seems as good as any -- i'm not completely convinced that this is a property of the _implementation_, but, well. 2. modify sysconfig.py at build time 3. guess it from the environment And options (2) and (3) seem wrong, so i'm going with (1) for now |
|||
| msg285222 - (view) | Author: Charalampos Stratakis (cstratak) * | Date: 2017年01月11日 13:09 | |
The downstream patch we currently use in Fedora [0]. [0] http://pkgs.fedoraproject.org/cgit/rpms/python3.git/plain/00102-lib64.patch |
|||
| msg285556 - (view) | Author: jan matejek (matejcik) * | Date: 2017年01月16日 11:20 | |
Attached is a patch that I'd like to propose for inclusion. It introduces a new configure option "--with-custom-platlibdir=<name>", which defaults to `basename $libdir`. This is converted to makefile variable "platlibdir", which is used in getpath.c to generate value of the lib_python variable. sysconfig and distutils.sysconfig retrieve the variable from makefile (i learned about existence of _sysconfigdata so that is where the variable now lives) to correctly substitute in posix_prefix (and unix_prefix for distutils install) scheme. Sysconfig is then used in pydoc and trace module, instead of locally calculating paths. Perhaps distutils.sysconfig should also use more of sysconfig instead of duplicating the functionality? As it stands, the python stdlib is installed into /usr/$platlibdir, because I changed SCRIPTDIR to $libdir instead of $prefix/lib. Maybe this should be also separately configurable? In any case, third-party modules get installed either into /usr/lib or /usr/$platlibdir depending on whether they are arch-independent or not. Hence the final modification in site.py that adds /usr/lib to search path on systems where $platlibdir != "lib". This caused test_sysconfig to fail because it checks that posix_user and posix_prefix schemes generate "similar" paths. I have left the posix_user scheme alone, so all its paths are based on "lib", where the posix_prefix scheme uses $platlibdir. Maybe posix_user scheme should be modified as well? Anyway, for now, I have accounted for the changes in the test. What now? (please don't make me write a PEP please don't make me write a PEP please don't make......) |
|||
| msg285737 - (view) | Author: Matthias Klose (doko) * (Python committer) | Date: 2017年01月18日 15:57 | |
I don't think we need a PEP for this, however I would like to name the new macro libsubdir, or sublibdir, to make it clear it's just the libdir component. Or make the value absolute, like it already is for libdir ... |
|||
| msg285738 - (view) | Author: Barry A. Warsaw (barry) * (Python committer) | Date: 2017年01月18日 16:00 | |
On Jan 18, 2017, at 03:57 PM, Matthias Klose wrote: >I don't think we need a PEP for this Correct. Generally we don't need PEPs for build system changes. |
|||
| msg307231 - (view) | Author: Charalampos Stratakis (cstratak) * | Date: 2017年11月29日 14:47 | |
Pinging here. Is there some way to push the issue forward? |
|||
| msg308555 - (view) | Author: Matthias Klose (doko) * (Python committer) | Date: 2017年12月18日 13:28 | |
the patch looks ok. was it tested on a Debian or Ubuntu system to produce the same layout with this patch and without the new configure option? |
|||
| msg361844 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年02月12日 00:53 | |
I closed bpo-858809 as a duplicate of this issue. |
|||
| msg361847 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年02月12日 01:06 | |
I marked bpo-15631 as a duplicate of this issue. |
|||
| msg361849 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年02月12日 01:16 | |
I marked bpo-34032 as a duplicate of this issue. It has an open PR written by Matěj Cepl (OpenSUSE): PR 8068. It looks similar to PR 3698. |
|||
| msg361850 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年02月12日 01:18 | |
See also bpo-34058 "Default Python 3.7 install broken on openSUSE Leap 42.3: $PYTHONHOME/lib64/python3.7/lib-dynload/ not linked to $PYTHONHOME/lib/python3.7/lib-dynload/": OpenSUSE and Centos are mentioned as being impacted. |
|||
| msg361851 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年02月12日 01:19 | |
See also bpo-14791: "setup.py only adds /prefix/lib, not /prefix/lib64". |
|||
| msg361853 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年02月12日 01:22 | |
I marked bpo-18092 ("Python 2.7.5 installation broken on OpenSuse 12.2") as a duplicate of this issue. |
|||
| msg361854 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年02月12日 01:22 | |
See also bpo-21016: "trace: $prefix and $exec_prefix improperly replaced on Fedora". |
|||
| msg361882 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年02月12日 12:02 | |
New changeset 4fac7ed43ebf1771a8fe86fdfe7b9991f3be78cd by Victor Stinner in branch 'master': bpo-21016: pydoc and trace use sysconfig (GH-18476) https://github.com/python/cpython/commit/4fac7ed43ebf1771a8fe86fdfe7b9991f3be78cd |
|||
| msg361888 - (view) | Author: miss-islington (miss-islington) | Date: 2020年02月12日 12:32 | |
New changeset ca133e53fafdec1aa77613fcb7558deed959383f by Miss Islington (bot) in branch '3.7': bpo-21016: pydoc and trace use sysconfig (GH-18476) https://github.com/python/cpython/commit/ca133e53fafdec1aa77613fcb7558deed959383f |
|||
| msg361890 - (view) | Author: miss-islington (miss-islington) | Date: 2020年02月12日 12:32 | |
New changeset ac6f4d2db703c0ff88e496bcb7b7fe55cf2ac458 by Miss Islington (bot) in branch '3.8': bpo-21016: pydoc and trace use sysconfig (GH-18476) https://github.com/python/cpython/commit/ac6f4d2db703c0ff88e496bcb7b7fe55cf2ac458 |
|||
| msg361893 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年02月12日 13:48 | |
Summary: * This issue is mostly about pushing a 16-years old patch from Fedora and SuSE to Python upstream. Other Linux distributions use different solutions to support multiple architectures in the same filesystem. For example, Debian and Ubuntu uses "Multiarch" which continues to use /usr/lib/ for 32-bit and 64-bit x86 architecture (x86 and x86-64). * I pushed the non controversial part of PR 3698: fix pydoc and trace modules to use sysconfig to get the stdlib path * CI tests pass on PR 18381. * Matthias Klose asked to not add another sys attribute, but Jan Matějek explained that the option value is needed to import the sysconfig module. Moreover, the option value is needed in the site module and we are trying to avoid "import sysconfig" in site since it would slowdown Python startup time. * I chose "./configure --with-python-libdir" and "sys.python_libdir" names. PR 3698 uses "./configure --with-custom-platsubdir" and sysconfig.get_config_var('platsubdir') names. Other proposed names: sys.lib, os.lib_dir. It was proposed to drop "custom" from "./configure --with-custom-platsubdir" option name. Python use many paths. The sysconfig module is a good starting point to discover them all in the _INSTALL_SCHEMES directories. PR 18381 changes the following paths: * posix_prefix: stdlib, platstdlib, platlib * posix_user: stdlib, platstdlib, platlib Examples on Fedora: * pure Python: /usr/lib64/python3.7/os.py * C extension: /usr/lib64/python3.7/lib-dynload/_multiprocessing.cpython-37m-x86_64-linux-gnu.so Examples on SuSE: * pure Python: /usr/lib64/python3.7/os.py Ubuntu 16.04: * pure Python: /usr/lib/python3.5/os.py * C extension: /usr/lib/python3.5/lib-dynload/_multiprocessing.cpython-35m-x86_64-linux-gnu.so |
|||
| msg361894 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年02月12日 13:52 | |
Default with prefix=/usr: * posix_prefix: * stdlib: '/usr/lib/python3.9' * platstdlib: '/usr/lib/python3.9' * platlib: '/usr/lib/python3.9/site-packages' * posix_user: * stdlib: '~/.local/lib/python3.9' * platstdlib: '~/.local/lib/python3.9' * platlib: '~/.local/lib/python3.9/site-packages' Customized with prefix=/usr and python_libdir=lib64, PR 18381: * posix_prefix: * stdlib: '/usr/lib64/python3.9' * platstdlib: '/usr/lib64/python3.9' * platlib: '/usr/lib64/python3.9/site-packages' * posix_user: * stdlib: '~/.local/lib64/python3.9' * platstdlib: '~/.local/lib64/python3.9' * platlib: '~/.local/lib64/python3.9/site-packages' |
|||
| msg361897 - (view) | Author: Matej Cepl (mcepl) * | Date: 2020年02月12日 14:49 | |
> posix_user: > > * stdlib: '~/.local/lib64/python3.9' > * platstdlib: '~/.local/lib64/python3.9' > * platlib: '~/.local/lib64/python3.9/site-packages' I am still not sure about the this one. I know that I have mentioned a possibility of multiplatform $HOME on NFS, but it seems too far fetched idea to break the current not-completely-standard. |
|||
| msg361899 - (view) | Author: Miro Hrončok (hroncok) * | Date: 2020年02月12日 14:54 | |
Also note that the extension modules have archful suffix, so they will not collide in $HOME, unless they are installed as name.so. |
|||
| msg361900 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年02月12日 15:12 | |
> posix_user: > > * stdlib: '~/.local/lib64/python3.9' > * platstdlib: '~/.local/lib64/python3.9' > * platlib: '~/.local/lib64/python3.9/site-packages' Honestly, I have no idea how posix_user is used. ~/.local/lib64/ directory doesn't exist on my work machine, whereas I'm installed various Python modules and applications. In practice, ~/.local/lib/ is used on Fedora, even if posix_user scheme uses ~/.local/lib64/. Examples: * pure Python: ~/.local/lib/python3.7/site-packages/pip/__main__.py * C extension: ~/.local/lib/python3.7/site-packages/typed_ast/_ast3.cpython-37m-x86_64-linux-gnu.so So changing posix_user should have no impact on end users. I also tested a legacy "python3 setup.py install" to install a C extension, it also lands into ~/.local/lib: ~/.local/lib/python3.7/site-packages/test_cext-0.0.0-py3.7-linux-x86_64.egg/test_cext.cpython-37m-x86_64-linux-gnu.so The setup.py uses setuptools. Miro: > Also note that the extension modules have archful suffix, so they will not collide in $HOME, unless they are installed as name.so. Yeah, it seems like pip install adopted Debian multiarch naming: "x86_64-linux-gnu" triplet in "_ast3.cpython-37m-x86_64-linux-gnu.so" filename. |
|||
| msg361901 - (view) | Author: Miro Hrončok (hroncok) * | Date: 2020年02月12日 15:20 | |
> > Also note that the extension modules have archful suffix, so they will not collide in $HOME, unless they are installed as name.so. > > Yeah, it seems like pip install adopted Debian multiarch naming: "x86_64-linux-gnu" triplet in "_ast3.cpython-37m-x86_64-linux-gnu.so" filename. For reference: issue22980 |
|||
| msg361902 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年02月12日 15:28 | |
SuSE currently uses this patch for lib64 in the Python 3 package: https://build.opensuse.org/package/view_file/devel:languages:python:Factory/python3/F00102-lib64.patch?expand=1 |
|||
| msg361903 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年02月12日 15:31 | |
Ooops, SuSE has 2 patches. SuSE currently uses these patches for lib64 in the Python 3 package: (1) https://build.opensuse.org/package/view_file/devel:languages:python:Factory/python3/F00102-lib64.patch?expand=1 (2) https://build.opensuse.org/package/view_file/devel:languages:python:Factory/python3/SUSE-FEDORA-multilib.patch?expand=1 |
|||
| msg361907 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年02月12日 17:50 | |
lib64_tests.py: test suite hardcoded for Fedora, SuSE and PR 18381 with --with-python-libdir=lib64. I wrote it to help me to understand differences between Fedora, SuSE and PR 18381. On Fedora, the test fails because we have an additional patch on distutils to install packages in /usr/local instead of /usr when using pip: ====================================================================== FAIL: test_distutils_install (__main__.Lib64Tests) ---------------------------------------------------------------------- Traceback (most recent call last): File "lib64_tests.py", line 81, in test_distutils_install self.assertEqual(cmd.install_platlib, PLATLIB) AssertionError: '/usr/local/lib64/python3.7/site-packages' != '/usr/lib64/python3.7/site-packages' - /usr/local/lib64/python3.7/site-packages ? ------ + /usr/lib64/python3.7/site-packages |
|||
| msg361909 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年02月12日 18:04 | |
Links on Debian Multiarch: * https://wiki.debian.org/Multiarch/HOWTO * https://lwn.net/Articles/711199/ |
|||
| msg362324 - (view) | Author: Petr Viktorin (petr.viktorin) * (Python committer) | Date: 2020年02月20日 15:53 | |
Why "sys.python_libdir"? Isn't that too public? A lot of similar path-related info is in sysconfig; why shouldn't it be there? How does "sys.python_libdir" work on other platforms? |
|||
| msg363288 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年03月03日 18:26 | |
> Why "sys.python_libdir"? Isn't that too public? A lot of similar path-related info is in sysconfig; why shouldn't it be there? I replied in a previous comment: "Matthias Klose asked to not add another sys attribute, but Jan Matějek explained that the option value is needed to import the sysconfig module. Moreover, the option value is needed in the site module and we are trying to avoid "import sysconfig" in site since it would slowdown Python startup time." > How does "sys.python_libdir" work on other platforms? On Windows, the variable is equal to "lib". It's equal to "lib" on all platforms, except if you use configure to override its value. Does it reply to your question? |
|||
| msg363441 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年03月05日 16:34 | |
See also bpo-24871: "freeze.py doesn't work on x86_64 Linux out of the box". > On 64-bit Linux freeze.py uses lib instead of lib64 when constructing > path to Makefile etc. Using sysconfig fixes this issue. |
|||
| msg363728 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年03月09日 13:37 | |
lib64_tests-2.py: Updated test for PR 18381. It now uses sys.platlibdir and it tests also Makefile LIBPL variable. |
|||
| msg363811 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年03月10日 08:05 | |
lib64_tests-3.py: Updated script to handle different ABI flags (release vs debug mode). |
|||
| msg363816 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年03月10日 08:53 | |
New changeset 8510f430781118d9b603c3a2f06945d6ebc5fe42 by Victor Stinner in branch 'master': bpo-1294959: Add sys.platlibdir attribute (GH-18381) https://github.com/python/cpython/commit/8510f430781118d9b603c3a2f06945d6ebc5fe42 |
|||
| msg363894 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年03月11日 09:25 | |
I chose to exclude setup.py changes from my commit 8510f430781118d9b603c3a2f06945d6ebc5fe42, whereas the Fedora downstream patch has a few changes: https://src.fedoraproject.org/rpms/python39/blob/master/f/00102-lib64.patch See also bpo-14791: "setup.py only adds /prefix/lib, not /prefix/lib64". diff --git a/setup.py b/setup.py index 51e67fe4a5..bafa0bf99a 100644 --- a/setup.py +++ b/setup.py @@ -649,7 +649,7 @@ class PyBuildExt(build_ext): # directories (i.e. '.' and 'Include') must be first. See issue # 10520. if not CROSS_COMPILING: - add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib') + add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib64') add_dir_to_list(self.compiler.include_dirs, '/usr/local/include') # only change this for cross builds for 3.3, issues on Mageia if CROSS_COMPILING: @@ -955,11 +955,11 @@ class PyBuildExt(build_ext): elif curses_library: readline_libs.append(curses_library) elif self.compiler.find_library_file(self.lib_dirs + - ['/usr/lib/termcap'], + ['/usr/lib64/termcap'], 'termcap'): readline_libs.append('termcap') self.add(Extension('readline', ['readline.c'], - library_dirs=['/usr/lib/termcap'], + library_dirs=['/usr/lib64/termcap'], extra_link_args=readline_extra_link_args, libraries=readline_libs)) else: |
|||
| msg363896 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年03月11日 09:30 | |
Another related issue is bpo-34058: "Default Python 3.7 install broken on openSUSE Leap 42.3: $PYTHONHOME/lib64/python3.7/lib-dynload/ not linked to $PYTHONHOME/lib/python3.7/lib-dynload/". |
|||
| msg363900 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年03月11日 10:01 | |
> Another related issue is bpo-34058: "Default Python 3.7 install broken on openSUSE Leap 42.3: $PYTHONHOME/lib64/python3.7/lib-dynload/ not linked to $PYTHONHOME/lib/python3.7/lib-dynload/". I marked bpo-34058 as a duplicate of this issue. |
|||
| msg364024 - (view) | Author: miss-islington (miss-islington) | Date: 2020年03月12日 14:38 | |
New changeset 3c29675d8736cb1860f342d872ae41e342c6d383 by Raúl Cumplido in branch 'master': bpo-1294959: Fix typo for new attribute platlibdir. (GH-18960) https://github.com/python/cpython/commit/3c29675d8736cb1860f342d872ae41e342c6d383 |
|||
| msg364104 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年03月13日 16:02 | |
Miro Hrončok ran rpmdiff to compare the Fedora with the old downstream patches and with the new upstream commit 8510f430781118d9b603c3a2f06945d6ebc5fe42: compare the Python package with and without setup.py changes. https://src.fedoraproject.org/rpms/python39/pull-request/31#comment-39392 In short, there is no difference. Moreover, Miro Hrončok, Matej Cepl and me don't know the rationale of these setup.py changes. I propose to drop them and wait until someone complains. If someone complains, we would know the rationale and so have a good reason to have these setup.py changes. For readline: Fedora libreadline is already linked to libtinfo and so setup.py doesn't go up to `self.compiler.find_library_file(self.lib_dirs + ['/usr/lib/termcap'], 'termcap')` code path. This code is deadcode on Fedora. For /usr/local/lib vs /usr/local/lib64: I'm not sure why /usr/local/lib is used in the first place. Fedora installs libraries in /usr, not in /usr/local. Maybe it's there for users who install dependencies without Fedora: by installed them manually in /usr/local. Again, since it's unclear how /usr/local is supposed to be used, I prefer to leave it unchanged. I closed the PR 18917. Morevoer, if it becomes an issue in Fedora, we can start with a downstream patch again, to see how it goes, before going directly upstream. |
|||
| msg364105 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年03月13日 16:04 | |
I close this very old issue (15 years old!). Thank you *very much* to everybody who was involved in helping to get it fixed! If I forgot someone, comment this issue or open a new one. There is one last minor issue, but there is already a dedicated issue: bpo-24871 "freeze.py doesn't work on x86_64 Linux out of the box". |
|||
| msg369323 - (view) | Author: Michał Górny (mgorny) * | Date: 2020年05月19日 07:44 | |
Does this mean that platforms using /usr/lib64 for shared libraries are now forced to install Python into /usr/lib64/python*? |
|||
| msg369326 - (view) | Author: Miro Hrončok (hroncok) * | Date: 2020年05月19日 08:37 | |
> Does this mean that platforms using /usr/lib64 for shared libraries are now forced to install Python into /usr/lib64/python*? Not at all. This means that it is possible to do so. It remains optional. |
|||
| msg369327 - (view) | Author: Michał Górny (mgorny) * | Date: 2020年05月19日 09:04 | |
> Not at all. This means that it is possible to do so. It remains optional. ...but then sys.platlibdir is going to incorrectly list 'lib', isn't it? According to https://docs.python.org/3.9/library/sys.html#sys.platlibdir it's used 'to build the path of platform-specific dynamic libraries and the path of the standard library'. This means that people relying on it for the former will get 32-bit libraries instead. |
|||
| msg369352 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年05月19日 13:19 | |
If you don't use the new --with-platlibdir configuration option, Python 3.9 behaves exactly as Python 3.8: there is zero change. Python 3.9 only builds a different sys.path if sys.platlibdir is different than "lib". |
|||
| msg369354 - (view) | Author: Michał Górny (mgorny) * | Date: 2020年05月19日 14:16 | |
Can we clarify the wording to clearly indicate it's to be used only for Python modules/extensions and not system dynamic libs? |
|||
| msg369360 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年05月19日 14:43 | |
> Can we clarify the wording to clearly indicate it's to be used only for Python modules/extensions and not system dynamic libs? Sure. Can you please propose a different wording? English is not my first language. |
|||
| msg369365 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年05月19日 15:05 | |
I created bpo-40684: make install doesn't respect configure --with-platlibdir=lib64. |
|||
| msg369368 - (view) | Author: Michał Górny (mgorny) * | Date: 2020年05月19日 15:19 | |
> Can you please propose a different wording? English is not my first language. Mine neither but I'll try. How about: 'Name of the platform-specific library directory. It is used to build the path of the standard library and C extension modules of the standard library.' |
|||
| msg369467 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年05月20日 16:44 | |
Can you propose a PR with your doc enhancement? I suggest to start with updating https://docs.python.org/dev/library/sys.html#sys.platlibdir documentation. |
|||
| msg369744 - (view) | Author: Michał Górny (mgorny) * | Date: 2020年05月23日 19:47 | |
Ok, it seems that I misunderstood it at first. Judging by the code, it also affects extensions installed into site-packages, so I've tried to make that clear and add one more example to the bullet list. |
|||
| msg370238 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年05月28日 16:33 | |
New changeset 242d95659b6b4ff4fb54b58a30454dafa311d4e9 by Michał Górny in branch 'master': bpo-1294959: Try to clarify the meaning of platlibdir (GH-20332) https://github.com/python/cpython/commit/242d95659b6b4ff4fb54b58a30454dafa311d4e9 |
|||
| msg370242 - (view) | Author: miss-islington (miss-islington) | Date: 2020年05月28日 16:41 | |
New changeset a5936ad6323b2cda712726a25d9301f766146cff by Miss Islington (bot) in branch '3.9': bpo-1294959: Try to clarify the meaning of platlibdir (GH-20332) https://github.com/python/cpython/commit/a5936ad6323b2cda712726a25d9301f766146cff |
|||
| msg370248 - (view) | Author: Michał Górny (mgorny) * | Date: 2020年05月28日 16:47 | |
Thank you! |
|||
| msg370704 - (view) | Author: Miro Hrončok (hroncok) * | Date: 2020年06月04日 12:17 | |
Note: https://docs.python.org/3.9/install/index.html probably needs some update wrt this change. |
|||
| msg371008 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年06月08日 16:37 | |
Oh, it seems like one of the changes merged in this issue broke the following use case if platlibdir is different than "lib": export PYTHONHOME=<Prefix> export PYTHONPATH=<Prefix>/lib/python3.9 python3.9 See bpo-40854 "Allow overriding sys.platlibdir: add PYTHONPLATLIBDIR env var". |
|||
| msg382964 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2020年12月14日 08:51 | |
I marked bpo-40505 as a duplicate of this issue. |
|||
| msg399339 - (view) | Author: Éric Araujo (eric.araujo) * (Python committer) | Date: 2021年08月10日 16:25 | |
Follow-up: #44860 is removing platlibdir from posix_user scheme |
|||
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2022年04月11日 14:56:13 | admin | set | github: 42382 |
| 2021年08月10日 16:25:34 | eric.araujo | set | messages: + msg399339 |
| 2020年12月14日 08:51:51 | vstinner | set | messages: + msg382964 |
| 2020年12月14日 08:51:38 | vstinner | link | issue40505 superseder |
| 2020年06月08日 16:37:59 | vstinner | set | messages: + msg371008 |
| 2020年06月08日 16:36:27 | vstinner | set | pull_requests: + pull_request19936 |
| 2020年06月04日 12:17:37 | hroncok | set | messages: + msg370704 |
| 2020年05月28日 16:47:21 | mgorny | set | messages: + msg370248 |
| 2020年05月28日 16:41:39 | miss-islington | set | messages: + msg370242 |
| 2020年05月28日 16:33:20 | miss-islington | set | pull_requests: + pull_request19746 |
| 2020年05月28日 16:33:12 | vstinner | set | messages: + msg370238 |
| 2020年05月23日 19:47:25 | mgorny | set | messages: + msg369744 |
| 2020年05月23日 19:44:41 | mgorny | set | pull_requests: + pull_request19600 |
| 2020年05月20日 16:44:44 | vstinner | set | messages: + msg369467 |
| 2020年05月19日 15:19:06 | mgorny | set | messages: + msg369368 |
| 2020年05月19日 15:05:04 | vstinner | set | messages: + msg369365 |
| 2020年05月19日 14:56:18 | vstinner | set | title: Add sys.platlibdir to use /usr/lib64 on Fedora and SuSE -> Add sys.platlibdir and configure --with-platlibdir to use /usr/lib64 on Fedora and SuSE |
| 2020年05月19日 14:43:49 | vstinner | set | messages: + msg369360 |
| 2020年05月19日 14:16:24 | mgorny | set | messages: + msg369354 |
| 2020年05月19日 13:19:23 | vstinner | set | messages: + msg369352 |
| 2020年05月19日 09:04:14 | mgorny | set | messages: + msg369327 |
| 2020年05月19日 08:37:45 | hroncok | set | messages: + msg369326 |
| 2020年05月19日 07:44:09 | mgorny | set | nosy:
+ mgorny messages: + msg369323 |
| 2020年03月13日 16:04:36 | vstinner | set | status: open -> closed resolution: fixed messages: + msg364105 stage: patch review -> resolved |
| 2020年03月13日 16:02:45 | vstinner | set | messages: + msg364104 |
| 2020年03月12日 14:38:26 | miss-islington | set | messages: + msg364024 |
| 2020年03月12日 14:32:43 | python-dev | set | nosy:
+ python-dev pull_requests: + pull_request18310 |
| 2020年03月11日 10:24:21 | christian.heimes | set | nosy:
- christian.heimes |
| 2020年03月11日 10:14:15 | vstinner | set | pull_requests: + pull_request18268 |
| 2020年03月11日 10:01:58 | vstinner | set | messages: + msg363900 |
| 2020年03月11日 10:01:32 | vstinner | link | issue34058 superseder |
| 2020年03月11日 09:30:28 | vstinner | set | messages: + msg363896 |
| 2020年03月11日 09:25:18 | vstinner | set | messages: + msg363894 |
| 2020年03月10日 08:53:13 | vstinner | set | messages: + msg363816 |
| 2020年03月10日 08:05:41 | vstinner | set | files:
+ lib64_tests-3.py messages: + msg363811 |
| 2020年03月09日 13:37:56 | vstinner | set | versions: - Python 3.7, Python 3.8 |
| 2020年03月09日 13:37:49 | vstinner | set | title: Problems with /usr/lib64 builds. -> Add sys.platlibdir to use /usr/lib64 on Fedora and SuSE |
| 2020年03月09日 13:37:20 | vstinner | set | files:
+ lib64_tests-2.py messages: + msg363728 |
| 2020年03月05日 16:34:39 | vstinner | set | messages: + msg363441 |
| 2020年03月03日 18:26:50 | vstinner | set | messages: + msg363288 |
| 2020年02月20日 15:53:06 | petr.viktorin | set | messages: + msg362324 |
| 2020年02月12日 18:13:43 | pitrou | set | nosy:
- pitrou |
| 2020年02月12日 18:04:46 | vstinner | set | messages: + msg361909 |
| 2020年02月12日 17:50:19 | vstinner | set | files:
+ lib64_tests.py messages: + msg361907 |
| 2020年02月12日 15:31:30 | vstinner | set | messages: + msg361903 |
| 2020年02月12日 15:28:07 | vstinner | set | messages: + msg361902 |
| 2020年02月12日 15:20:17 | hroncok | set | messages: + msg361901 |
| 2020年02月12日 15:12:11 | vstinner | set | messages: + msg361900 |
| 2020年02月12日 14:54:41 | hroncok | set | messages: + msg361899 |
| 2020年02月12日 14:49:16 | mcepl | set | messages: + msg361897 |
| 2020年02月12日 13:52:08 | vstinner | set | messages: + msg361894 |
| 2020年02月12日 13:48:31 | vstinner | set | messages: + msg361893 |
| 2020年02月12日 12:32:58 | miss-islington | set | messages: + msg361890 |
| 2020年02月12日 12:32:53 | miss-islington | set | nosy:
+ miss-islington messages: + msg361888 |
| 2020年02月12日 12:02:49 | miss-islington | set | pull_requests: + pull_request17856 |
| 2020年02月12日 12:02:42 | miss-islington | set | pull_requests: + pull_request17854 |
| 2020年02月12日 12:02:42 | vstinner | set | messages: + msg361882 |
| 2020年02月12日 09:14:37 | vstinner | set | pull_requests: + pull_request17846 |
| 2020年02月12日 08:57:22 | vstinner | set | versions: - Python 2.7, Python 3.4, Python 3.5, Python 3.6 |
| 2020年02月12日 07:57:00 | carlos.velasco | set | nosy:
+ carlos.velasco |
| 2020年02月12日 01:22:39 | vstinner | set | messages: + msg361854 |
| 2020年02月12日 01:22:01 | vstinner | set | messages: + msg361853 |
| 2020年02月12日 01:21:56 | vstinner | link | issue18092 superseder |
| 2020年02月12日 01:19:16 | vstinner | set | messages: + msg361851 |
| 2020年02月12日 01:18:30 | vstinner | set | messages: + msg361850 |
| 2020年02月12日 01:16:08 | vstinner | set | messages: + msg361849 |
| 2020年02月12日 01:15:18 | vstinner | link | issue34032 superseder |
| 2020年02月12日 01:06:13 | vstinner | set | messages: + msg361847 |
| 2020年02月12日 01:05:53 | vstinner | link | issue15631 superseder |
| 2020年02月12日 00:53:14 | vstinner | set | messages: + msg361844 |
| 2020年02月12日 00:53:00 | vstinner | link | issue858809 superseder |
| 2020年02月06日 17:17:33 | vstinner | set | pull_requests: + pull_request17757 |
| 2019年10月11日 15:16:47 | mcepl | set | versions: + Python 3.8, Python 3.9 |
| 2019年10月11日 15:16:34 | mcepl | set | nosy:
+ mcepl |
| 2019年10月11日 14:59:23 | vstinner | set | nosy:
+ vstinner |
| 2019年02月04日 15:09:53 | cstratak | set | pull_requests: + pull_request11696 |
| 2018年05月16日 07:58:53 | eitan.adler | set | nosy:
+ eitan.adler |
| 2018年04月04日 17:19:47 | pillarsdotnet | set | nosy:
+ pillarsdotnet |
| 2017年12月20日 11:32:22 | hroncok | set | nosy:
+ petr.viktorin, hroncok |
| 2017年12月18日 13:28:31 | doko | set | messages: + msg308555 |
| 2017年11月29日 14:47:00 | cstratak | set | messages: + msg307231 |
| 2017年09月22日 16:45:20 | matejcik | set | stage: patch review pull_requests: + pull_request3682 |
| 2017年01月18日 16:00:13 | barry | set | messages: + msg285738 |
| 2017年01月18日 15:57:06 | doko | set | messages: + msg285737 |
| 2017年01月16日 11:20:22 | matejcik | set | files:
+ python-3.6.0-multilib-new.patch messages: + msg285556 versions: + Python 3.7 |
| 2017年01月11日 13:09:06 | cstratak | set | nosy:
+ cstratak messages: + msg285222 |
| 2017年01月10日 15:46:46 | BreamoreBoy | set | nosy:
- BreamoreBoy |
| 2017年01月10日 15:31:20 | matejcik | set | messages:
+ msg285126 versions: + Python 3.6 |
| 2015年05月05日 18:57:43 | BreamoreBoy | set | messages: + msg242608 |
| 2014年11月19日 10:50:04 | piotr.dobrogost | set | nosy:
+ piotr.dobrogost |
| 2014年07月09日 21:43:46 | BreamoreBoy | set | nosy:
+ BreamoreBoy messages: + msg222643 versions: + Python 3.4, Python 3.5, - Python 3.2, Python 3.3 |
| 2013年11月07日 17:55:15 | barry | set | messages: + msg202378 |
| 2013年11月07日 16:59:02 | Arfrever | set | messages: + msg202368 |
| 2013年11月07日 16:56:50 | doko | set | messages: + msg202367 |
| 2013年11月07日 16:53:50 | barry | set | messages: + msg202366 |
| 2013年11月07日 16:51:09 | barry | set | messages: + msg202365 |
| 2013年11月07日 16:05:54 | matejcik | set | messages: + msg202359 |
| 2013年11月07日 15:56:17 | doko | set | messages: + msg202354 |
| 2013年11月07日 15:40:04 | matejcik | set | files:
+ Python-3.3.0b2-multilib.patch messages: + msg202343 |
| 2013年11月07日 15:17:59 | barry | set | messages: + msg202341 |
| 2013年08月01日 20:40:31 | catalin.iacob | set | nosy:
+ catalin.iacob |
| 2012年05月15日 07:42:31 | lemburg | set | messages: + msg160691 |
| 2012年05月14日 22:14:43 | eric.araujo | set | messages:
+ msg160671 versions: + Python 3.3, - Python 3.1 |
| 2012年05月12日 17:00:21 | Arfrever | set | messages: + msg160482 |
| 2011年03月29日 22:15:34 | barry | set | messages: + msg132546 |
| 2011年03月29日 22:15:07 | barry | set | messages: + msg132544 |
| 2011年03月29日 22:12:15 | doko | set | messages: + msg132542 |
| 2011年03月29日 22:11:04 | doko | set | messages: + msg132540 |
| 2011年03月29日 22:05:33 | barry | set | messages: + msg132538 |
| 2011年03月29日 21:50:14 | barry | set | files: - a4dcae4cd033.diff |
| 2011年03月29日 21:49:54 | barry | set | messages: + msg132537 |
| 2011年03月29日 21:39:30 | barry | set | messages: + msg132535 |
| 2011年03月29日 19:38:53 | Arfrever | set | messages: + msg132511 |
| 2011年03月29日 19:28:41 | pitrou | set | nosy:
+ pitrou messages: + msg132506 |
| 2011年03月29日 19:19:37 | barry | set | messages: + msg132505 |
| 2011年03月29日 19:13:41 | barry | set | files: + a4dcae4cd033.diff |
| 2011年03月29日 19:13:20 | barry | set | files: - a9b05b89ea39.diff |
| 2011年03月29日 19:11:50 | barry | set | files: + a9b05b89ea39.diff |
| 2011年03月29日 19:11:23 | barry | set | hgrepos:
+ hgrepo12 messages: + msg132503 |
| 2011年03月28日 21:29:10 | barry | set | messages: + msg132424 |
| 2011年03月17日 12:53:40 | jcea | set | nosy:
+ jcea |
| 2011年03月16日 13:55:54 | andybuckley | set | nosy:
+ andybuckley |
| 2010年08月21日 19:41:29 | BreamoreBoy | set | type: behavior versions: + Python 3.1, Python 2.7, Python 3.2, - Python 2.6, Python 3.0 |
| 2010年08月11日 05:48:58 | eric.araujo | set | nosy:
+ barry |
| 2009年11月06日 17:41:23 | lemburg | set | nosy:
+ tarek messages: + msg94989 |
| 2009年11月06日 17:27:21 | lemburg | set | nosy:
+ lemburg messages: + msg94986 |
| 2009年11月06日 16:47:16 | Arfrever | set | nosy:
+ Arfrever |
| 2009年11月06日 16:26:22 | matejcik | set | messages: + msg94982 |
| 2009年11月05日 19:23:07 | eric.araujo | set | nosy:
+ eric.araujo messages: + msg94941 |
| 2009年09月12日 12:46:31 | akitada | set | messages: + msg92541 |
| 2009年08月20日 18:29:01 | matejcik | set | messages: + msg91781 |
| 2009年08月20日 11:01:02 | doko | set | nosy:
+ doko messages: + msg91769 |
| 2009年08月14日 16:27:32 | matejcik | set | files:
+ Python-2.6.2-multilib.patch messages: + msg91559 |
| 2009年03月30日 04:23:41 | ajaksu2 | link | issue1536339 superseder |
| 2009年03月30日 03:23:22 | ajaksu2 | link | issue1553166 superseder |
| 2009年03月03日 16:17:33 | matejcik | set | nosy: + matejcik |
| 2009年02月28日 17:32:01 | akitada | set | messages: + msg82929 |
| 2009年02月03日 21:23:29 | akitada | set | nosy:
+ akitada messages: + msg81099 |
| 2008年03月27日 14:31:02 | belopolsky | set | messages: + msg64593 |
| 2008年03月27日 14:11:17 | belopolsky | set | nosy:
+ belopolsky messages: + msg64592 |
| 2008年02月03日 07:18:05 | ivazquez | set | nosy: + ivazquez |
| 2008年01月05日 19:33:54 | christian.heimes | set | keywords:
+ patch nosy: + christian.heimes messages: + msg59310 components: + Build, - None versions: + Python 2.6, Python 3.0 |
| 2005年09月19日 03:05:28 | jafo | create | |