-
-
Notifications
You must be signed in to change notification settings - Fork 5.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Build failure of SuperLU with the development version of numpy #19036
Comments
@lysnikolaou would you have time to patch this up and then upstream the fix to https://github.com/xiaoyeli/superlu? |
Of course! I'll be back home and in front of a computer on Sunday, so I'll probably work on this on Monday. Is that okay? |
Sure no worries! And in case it bothers anyone enough before that time, they can fix it instead. |
- Replace all occurences of complex with singlecomplex - Add a second patch file for the complex changes (to make it easier to remove once the upstream patch is merged) Closes scipygh-19036.
Opened #19062. |
- Replace all occurences of complex with singlecomplex - Add a second patch file for the complex changes (to make it easier to remove once the upstream patch is merged) Closes scipygh-19036.
NumPy has recently changed how it defines complex numbers in its C code. As a result of these changes, the NumPy C header file "npy_common.h" now does
#include <complex.h>
. This will break the compilation of any extension module that includes the NumPy C header files and that has its own definition of the namecomplex
. See numpy/numpy#24344 and numpy/numpy#24198 and the links therein for details.We are encountering this problem with the SuperLU code. Specifically, in https://github.com/scipy/scipy/blob/main/scipy/sparse/linalg/_dsolve/SuperLU/SRC/slu_scomplex.h, which has
scipy/scipy/sparse/linalg/_dsolve/SuperLU/SRC/slu_scomplex.h
Line 31 in 7e7d867
Until SuperLU modernizes its code so that it doesn't rely on its own implementation of complex arithmetic (or at least doesn't use the name
complex
), AND someone then takes on the challenges of updating our vendored version, I think we'll have to add another patch to our vendored copy, to change the namecomplex
to, say,singlecomplex
.The text was updated successfully, but these errors were encountered: