Issue 33230: _decimal build failure (unsupported platform for that module) - evolution possible? (original) (raw)

Created on 2018-04-05 10:19 by Hubert Holin, last changed 2022-04-11 14:58 by admin. This issue is now closed.

Messages (8)
msg314976 - (view) Author: Hubert Holin (Hubert Holin) Date: 2018-04-05 10:19
_decimal fails to build on my platform due to lack of support: In file included from /Developer/Python/3.6/Python/Python-3.6.5/Modules/_decimal/_decimal.c:34: /usr/local/include/mpdecimal.h:201:4: error: "unsupported platform: need mpd_size_t == mpd_uint_t" #error "unsupported platform: need mpd_size_t == mpd_uint_t" My host system type: x86_64-apple-darwin17.5.0 My target system type: x86_64-apple-darwin17.5.0 Compiler used: clang+llvm-6.0.0-x86_64-apple-darwin Hardware: 3,7 GHz Quad-Core Intel Xeon E5 Relevant configurations: --enable-universalsdk... /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk --with-universal-archs... intel MACHDEP... darwin Could this module be upgraded?
msg314978 - (view) Author: Stefan Krah (skrah) * (Python committer) Date: 2018-04-05 11:45
I don't have OS X. However, this is the first time in 6 years that anyone has reported an OS X build failure. Perhaps Ned knows the answer.
msg314998 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2018-04-05 17:55
> However, this is the first time in 6 years that anyone has reported an OS X build failure. Yes, I've never seen one before, either. But I think the culprit is pointed to in the error message. It looks like you have another version of mpdecimal in /usr/local/.
msg315027 - (view) Author: Hubert Holin (Hubert Holin) Date: 2018-04-06 17:25
This is correct: I had an older version of mpdecimal in /usr/local. However, when removed mpdecimal is (manually) removed from /usr/local (the libs and the header), making a "make clean", a config and make, the _decimal build still fails, but this time for a different reason: /Developer/Python/3.6/Python/Python-3.6.5/Modules/_decimal/_decimal.c:34:10: fatal error: 'mpdecimal.h' file not found #include "mpdecimal.h" Still, we are getting closer: should I install a newer version of mpdecimal and try again?
msg315028 - (view) Author: Stefan Krah (skrah) * (Python committer) Date: 2018-04-06 17:50
It looks to me as if you are compiling --with-system-libmpdec. You don't need that, libmpdec is included in the Python tarball. -with-system-libmpdec was added mainly for Linux distros. If there's a widespread interest to support it on OS X, I'd need a patch. A hack that should work is "export PYTHON_DECIMAL_WITH_MACHINE=universal" during the Python build, then the external libmpdec *might* work. This flag was mainly added for testing. Note that "universal" does not always build fat binaries -- it uses whatever Python is configured with.
msg315029 - (view) Author: Stefan Krah (skrah) * (Python committer) Date: 2018-04-06 17:57
Another source of error is of course if the external libmpdec was not compiled as "universal" but Python is.
msg315165 - (view) Author: Stefan Krah (skrah) * (Python committer) Date: 2018-04-10 10:18
I'm trying to reduce the number of open issues that I'm involved in. If something concrete comes up, feel free to reopen.
msg315171 - (view) Author: Hubert Holin (Hubert Holin) Date: 2018-04-10 16:05
Yes, the error turned out to be that I had indeed forgotten to remove the --with-system-libmpdec along with the library and header. Now _decimal compiles fine. I will see if I can get Python to run with my system's mpdecimal (once I have updated it), but as far as this issue is concerned I believe it is indeed closed. Thanks for the help!
History
Date User Action Args
2022-04-11 14:58:59 admin set github: 77411
2018-04-10 16:05:22 Hubert Holin set messages: +
2018-04-10 10🔞03 skrah set status: open -> closedresolution: works for memessages: + stage: resolved
2018-04-06 17:57:55 skrah set messages: +
2018-04-06 17:50:33 skrah set messages: +
2018-04-06 17:25:34 Hubert Holin set messages: +
2018-04-05 17:55:29 ned.deily set messages: +
2018-04-05 11:45:01 skrah set nosy: + skrah, ned.deilymessages: +
2018-04-05 10:19:14 Hubert Holin create