-
-
Notifications
You must be signed in to change notification settings - Fork 11.8k
Closed
Labels
00 - Bug32 - InstallationProblems installing or compiling NumPyProblems installing or compiling NumPy
Description
Describe the issue:
There is some problem with wrap_legacy_cpp_ufunc, if does not work as expected. The build fails on _pocketfft_umath.cpp source:
../numpy/fft/_pocketfft_umath.cpp:300:1: error: no matches converting function 'wrap_legacy_cpp_ufunc' to type 'PyUFuncGenericFunction' {aka 'void (*)(char**, const long int*, const long int*, void*)'}
300 | };
| ^
../numpy/fft/_pocketfft_umath.cpp:34:1: note: candidate is: 'template<void (* cpp_ufunc)(char**, const npy_intp*, const npy_intp*, void*)> void wrap_legacy_cpp_ufunc(char**, const npy_intp*, const ptrdiff_t*, void*)'
34 | wrap_legacy_cpp_ufunc(char **args, npy_intp const *dimensions,
| ^~~~~~~~~~~~~~~~~~~~~
etc., see the log below.
Reproduce the code example:
sudo port -v build py313-numpyError message:
FAILED: [code=1] numpy/fft/_pocketfft_umath.cpython-313-darwin.so.p/_pocketfft_umath.cpp.o
/opt/local/bin/g++-mp-14 -Inumpy/fft/_pocketfft_umath.cpython-313-darwin.so.p -Inumpy/fft -I../numpy/fft -Inumpy/_core -I../numpy/_core -Inumpy/_core/include -I../numpy/_core/include -I../numpy/_core/src/common -I/opt/local/Library/Frameworks/Python.framework/Versions/3.13/include/python3.13 -I/opt/local/var/macports/build/py313-numpy-1045fbe6/work/numpy-2.3.3/build/meson_cpu -fvisibility=hidden -fvisibility-inlines-hidden -fdiagnostics-color=always -DNDEBUG -Wall -Winvalid-pch -std=c++17 -O3 -Os -arch ppc -D_GLIBCXX_USE_CXX11_ABI=0 -isysroot/ -MD -MQ numpy/fft/_pocketfft_umath.cpython-313-darwin.so.p/_pocketfft_umath.cpp.o -MF numpy/fft/_pocketfft_umath.cpython-313-darwin.so.p/_pocketfft_umath.cpp.o.d -o numpy/fft/_pocketfft_umath.cpython-313-darwin.so.p/_pocketfft_umath.cpp.o -c ../numpy/fft/_pocketfft_umath.cpp
../numpy/fft/_pocketfft_umath.cpp:300:1: error: no matches converting function 'wrap_legacy_cpp_ufunc' to type 'PyUFuncGenericFunction' {aka 'void (*)(char**, const long int*, const long int*, void*)'}
300 | };
| ^
../numpy/fft/_pocketfft_umath.cpp:34:1: note: candidate is: 'template<void (* cpp_ufunc)(char**, const npy_intp*, const npy_intp*, void*)> void wrap_legacy_cpp_ufunc(char**, const npy_intp*, const ptrdiff_t*, void*)'
34 | wrap_legacy_cpp_ufunc(char **args, npy_intp const *dimensions,
| ^~~~~~~~~~~~~~~~~~~~~
../numpy/fft/_pocketfft_umath.cpp:300:1: error: no matches converting function 'wrap_legacy_cpp_ufunc' to type 'PyUFuncGenericFunction' {aka 'void (*)(char**, const long int*, const long int*, void*)'}
300 | };
| ^
../numpy/fft/_pocketfft_umath.cpp:34:1: note: candidate is: 'template<void (* cpp_ufunc)(char**, const npy_intp*, const npy_intp*, void*)> void wrap_legacy_cpp_ufunc(char**, const npy_intp*, const ptrdiff_t*, void*)'
34 | wrap_legacy_cpp_ufunc(char **args, npy_intp const *dimensions,
| ^~~~~~~~~~~~~~~~~~~~~
../numpy/fft/_pocketfft_umath.cpp:300:1: error: no matches converting function 'wrap_legacy_cpp_ufunc' to type 'PyUFuncGenericFunction' {aka 'void (*)(char**, const long int*, const long int*, void*)'}
300 | };
| ^
../numpy/fft/_pocketfft_umath.cpp:34:1: note: candidate is: 'template<void (* cpp_ufunc)(char**, const npy_intp*, const npy_intp*, void*)> void wrap_legacy_cpp_ufunc(char**, const npy_intp*, const ptrdiff_t*, void*)'
34 | wrap_legacy_cpp_ufunc(char **args, npy_intp const *dimensions,
| ^~~~~~~~~~~~~~~~~~~~~
../numpy/fft/_pocketfft_umath.cpp:321:1: error: no matches converting function 'wrap_legacy_cpp_ufunc' to type 'PyUFuncGenericFunction' {aka 'void (*)(char**, const long int*, const long int*, void*)'}
321 | };
| ^
../numpy/fft/_pocketfft_umath.cpp:34:1: note: candidate is: 'template<void (* cpp_ufunc)(char**, const npy_intp*, const npy_intp*, void*)> void wrap_legacy_cpp_ufunc(char**, const npy_intp*, const ptrdiff_t*, void*)'
34 | wrap_legacy_cpp_ufunc(char **args, npy_intp const *dimensions,
| ^~~~~~~~~~~~~~~~~~~~~
../numpy/fft/_pocketfft_umath.cpp:321:1: error: no matches converting function 'wrap_legacy_cpp_ufunc' to type 'PyUFuncGenericFunction' {aka 'void (*)(char**, const long int*, const long int*, void*)'}
321 | };
| ^
../numpy/fft/_pocketfft_umath.cpp:34:1: note: candidate is: 'template<void (* cpp_ufunc)(char**, const npy_intp*, const npy_intp*, void*)> void wrap_legacy_cpp_ufunc(char**, const npy_intp*, const ptrdiff_t*, void*)'
34 | wrap_legacy_cpp_ufunc(char **args, npy_intp const *dimensions,
| ^~~~~~~~~~~~~~~~~~~~~
../numpy/fft/_pocketfft_umath.cpp:321:1: error: no matches converting function 'wrap_legacy_cpp_ufunc' to type 'PyUFuncGenericFunction' {aka 'void (*)(char**, const long int*, const long int*, void*)'}
321 | };
| ^
../numpy/fft/_pocketfft_umath.cpp:34:1: note: candidate is: 'template<void (* cpp_ufunc)(char**, const npy_intp*, const npy_intp*, void*)> void wrap_legacy_cpp_ufunc(char**, const npy_intp*, const ptrdiff_t*, void*)'
34 | wrap_legacy_cpp_ufunc(char **args, npy_intp const *dimensions,
| ^~~~~~~~~~~~~~~~~~~~~
../numpy/fft/_pocketfft_umath.cpp:326:1: error: no matches converting function 'wrap_legacy_cpp_ufunc' to type 'PyUFuncGenericFunction' {aka 'void (*)(char**, const long int*, const long int*, void*)'}
326 | };
| ^
../numpy/fft/_pocketfft_umath.cpp:34:1: note: candidate is: 'template<void (* cpp_ufunc)(char**, const npy_intp*, const npy_intp*, void*)> void wrap_legacy_cpp_ufunc(char**, const npy_intp*, const ptrdiff_t*, void*)'
34 | wrap_legacy_cpp_ufunc(char **args, npy_intp const *dimensions,
| ^~~~~~~~~~~~~~~~~~~~~
../numpy/fft/_pocketfft_umath.cpp:326:1: error: no matches converting function 'wrap_legacy_cpp_ufunc' to type 'PyUFuncGenericFunction' {aka 'void (*)(char**, const long int*, const long int*, void*)'}
326 | };
| ^
../numpy/fft/_pocketfft_umath.cpp:34:1: note: candidate is: 'template<void (* cpp_ufunc)(char**, const npy_intp*, const npy_intp*, void*)> void wrap_legacy_cpp_ufunc(char**, const npy_intp*, const ptrdiff_t*, void*)'
34 | wrap_legacy_cpp_ufunc(char **args, npy_intp const *dimensions,
| ^~~~~~~~~~~~~~~~~~~~~
../numpy/fft/_pocketfft_umath.cpp:326:1: error: no matches converting function 'wrap_legacy_cpp_ufunc' to type 'PyUFuncGenericFunction' {aka 'void (*)(char**, const long int*, const long int*, void*)'}
326 | };
| ^
../numpy/fft/_pocketfft_umath.cpp:34:1: note: candidate is: 'template<void (* cpp_ufunc)(char**, const npy_intp*, const npy_intp*, void*)> void wrap_legacy_cpp_ufunc(char**, const npy_intp*, const ptrdiff_t*, void*)'
34 | wrap_legacy_cpp_ufunc(char **args, npy_intp const *dimensions,
| ^~~~~~~~~~~~~~~~~~~~~
../numpy/fft/_pocketfft_umath.cpp:337:1: error: no matches converting function 'wrap_legacy_cpp_ufunc' to type 'PyUFuncGenericFunction' {aka 'void (*)(char**, const long int*, const long int*, void*)'}
337 | };
| ^
../numpy/fft/_pocketfft_umath.cpp:34:1: note: candidate is: 'template<void (* cpp_ufunc)(char**, const npy_intp*, const npy_intp*, void*)> void wrap_legacy_cpp_ufunc(char**, const npy_intp*, const ptrdiff_t*, void*)'
34 | wrap_legacy_cpp_ufunc(char **args, npy_intp const *dimensions,
| ^~~~~~~~~~~~~~~~~~~~~
../numpy/fft/_pocketfft_umath.cpp:337:1: error: no matches converting function 'wrap_legacy_cpp_ufunc' to type 'PyUFuncGenericFunction' {aka 'void (*)(char**, const long int*, const long int*, void*)'}
337 | };
| ^
../numpy/fft/_pocketfft_umath.cpp:34:1: note: candidate is: 'template<void (* cpp_ufunc)(char**, const npy_intp*, const npy_intp*, void*)> void wrap_legacy_cpp_ufunc(char**, const npy_intp*, const ptrdiff_t*, void*)'
34 | wrap_legacy_cpp_ufunc(char **args, npy_intp const *dimensions,
| ^~~~~~~~~~~~~~~~~~~~~
../numpy/fft/_pocketfft_umath.cpp:337:1: error: no matches converting function 'wrap_legacy_cpp_ufunc' to type 'PyUFuncGenericFunction' {aka 'void (*)(char**, const long int*, const long int*, void*)'}
337 | };
| ^
../numpy/fft/_pocketfft_umath.cpp:34:1: note: candidate is: 'template<void (* cpp_ufunc)(char**, const npy_intp*, const npy_intp*, void*)> void wrap_legacy_cpp_ufunc(char**, const npy_intp*, const ptrdiff_t*, void*)'
34 | wrap_legacy_cpp_ufunc(char **args, npy_intp const *dimensions,
| ^~~~~~~~~~~~~~~~~~~~~
../numpy/fft/_pocketfft_umath.cpp: In instantiation of 'void irfft_loop(char**, const npy_intp*, const npy_intp*, void*) [with T = double; npy_intp = long int]':
../numpy/fft/_pocketfft_umath.cpp:337:1: required from here
337 | };
| ^
../numpy/fft/_pocketfft_umath.cpp:236:12: warning: unused variable 'npts_in' [-Wunused-variable]
236 | size_t npts_in = nout / 2 + 1;
| ^~~~~~~
../numpy/fft/_pocketfft_umath.cpp: In instantiation of 'void irfft_loop(char**, const npy_intp*, const npy_intp*, void*) [with T = float; npy_intp = long int]':
../numpy/fft/_pocketfft_umath.cpp:337:1: required from here
337 | };
| ^
../numpy/fft/_pocketfft_umath.cpp:236:12: warning: unused variable 'npts_in' [-Wunused-variable]
236 | size_t npts_in = nout / 2 + 1;
| ^~~~~~~
../numpy/fft/_pocketfft_umath.cpp: In instantiation of 'void irfft_loop(char**, const npy_intp*, const npy_intp*, void*) [with T = long double; npy_intp = long int]':
../numpy/fft/_pocketfft_umath.cpp:337:1: required from here
337 | };
| ^
../numpy/fft/_pocketfft_umath.cpp:236:12: warning: unused variable 'npts_in' [-Wunused-variable]
236 | size_t npts_in = nout / 2 + 1;
| ^~~~~~~
[259/316] Compiling C++ object numpy/linalg/_umath_linalg.cpython-313-darwin.so.p/umath_linalg.cpp.o
[260/316] Compiling C object numpy/_core/libloops_autovec.dispatch.h_baseline.a.p/meson-generated_loops_autovec.dispatch.c.o
[261/316] Compiling C object numpy/random/_common.cpython-313-darwin.so.p/meson-generated_numpy_random__common.pyx.c.o
[262/316] Compiling C object numpy/random/_bounded_integers.cpython-313-darwin.so.p/meson-generated_numpy_random__bounded_integers.pyx.c.o
[263/316] Compiling C object numpy/_core/_multiarray_umath.cpython-313-darwin.so.p/meson-generated_lowlevel_strided_loops.c.o
ninja: build stopped: subcommand failed.
ERROR Backend subprocess exited when trying to invoke build_wheel
Command failed: cd "/opt/local/var/macports/build/py313-numpy-1045fbe6/work/numpy-2.3.3" && /opt/local/Library/Frameworks/Python.framework/Versions/3.13/bin/python3.13 -m build --no-isolation --wheel --outdir /opt/local/var/macports/build/py313-numpy-1045fbe6/work -Cbuild-dir=build -Csetup-args=-Dallow-noblas=false -Csetup-args=-Dblas=openblas -Csetup-args=-Dlapack=openblas -Csetup-args=-Dpkg_config_path=/opt/local/lib/pkgconfig
Exit code: 1Python and NumPy Versions:
python 3.13.7
numpy 2.3.3
Runtime Environment:
No response
Context for the issue:
MacPorts is planning to update numpy from 1.x to 2.x this month, it is important to keep numpy working across all supported systems (which include powerpc as well).
P. S. The issue might also affect *BSD and/or Linux on powerpc, but I cannot test it.
Metadata
Metadata
Assignees
Labels
00 - Bug32 - InstallationProblems installing or compiling NumPyProblems installing or compiling NumPy