linuxmint-17, ubuntu-trusty: scipy build error with pybind11
mkoeppe opened this issue · 25 comments
On linuxmint-17-minimal (https://github.com/sagemath/sage/runs/3593003595)
gcc -pthread -shared -Wl,-rpath-link,/sage/local/lib -L/sage/local/lib -Wl,-rpath,/sage/local/lib -L. -Wl,-rpath-link,/sage/local/lib -L/sage/local/lib -Wl,-rpath,/sage/local/lib -shared -Wl,-rpath-link,/sage/local/lib -L/sage/local/lib -Wl,-rpath,/sage/local/lib build/temp.linux-x86_64-3.9/scipy/cluster/_optimal_leaf_ordering.o -L/sage/local/lib -Lbuild/temp.linux-x86_64-3.9 -o build/lib.linux-x86_64-3.9/scipy/cluster/_optimal_leaf_ordering.cpython-39-x86_64-linux-gnu.so -Wl,--version-script=build/temp.linux-x86_64-3.9/link-version-scipy.cluster._optimal_leaf_ordering.map
C compiler: g++ -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wno-unused -O2 -g -fPIC
creating /tmp/tmpif5aglmi/tmp
creating /tmp/tmpif5aglmi/tmp/tmpif5aglmi
compile options: '-I/sage/local/include/python3.9 -c'
extra options: '-std=c++14'
g++: /tmp/tmpif5aglmi/main.cpp
g++: error: unrecognized command line option '-std=c++14'
C compiler: g++ -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wno-unused -O2 -g -fPIC
creating /tmp/tmpjrgp9vmy/tmp
creating /tmp/tmpjrgp9vmy/tmp/tmpjrgp9vmy
compile options: '-I/sage/local/include/python3.9 -c'
extra options: '-std=c++11'
g++: /tmp/tmpjrgp9vmy/main.cpp
C compiler: g++ -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wno-unused -O2 -g -fPIC
creating /tmp/tmpik_q_vbd/tmp
creating /tmp/tmpik_q_vbd/tmp/tmpik_q_vbd
compile options: '-I/sage/local/include/python3.9 -c'
g++: /tmp/tmpik_q_vbd/main.c
C compiler: g++ -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wno-unused -O2 -g -fPIC
creating /tmp/tmpv4ojh26z/tmp
creating /tmp/tmpv4ojh26z/tmp/tmpv4ojh26z
compile options: '-I/sage/local/include/python3.9 -c'
extra options: '-pthread'
g++: /tmp/tmpv4ojh26z/main.c
C compiler: g++ -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wno-unused -O2 -g -fPIC
creating build/temp.linux-x86_64-3.9/scipy/fft
creating build/temp.linux-x86_64-3.9/scipy/fft/_pocketfft
compile options: '-DPOCKETFFT_PTHREADS -I/sage/local/lib/python3.9/site-packages/pybind11/include -I/sage/local/lib/python3.9/site-packages/pybind11/include -I/sage/local/lib/python3.9/site-packages/numpy/core/include -Ibuild/src.linux-x86_64-3.9/numpy/distutils/include -I/sage/local/include/python3.9 -c'
extra options: '-std=c++11 -pthread -fvisibility=hidden -msse -msse2 -msse3'
g++: scipy/fft/_pocketfft/pypocketfft.cxx
In file included from scipy/fft/_pocketfft/pypocketfft.cxx:16:0:
/sage/local/lib/python3.9/site-packages/pybind11/include/pybind11/numpy.h:328:5: error: 'is_trivially_copyable' is not a member of 'std'
std::is_trivially_copyable<T>,
^
/sage/local/lib/python3.9/site-packages/pybind11/include/pybind11/numpy.h:328:5: error: 'is_trivially_copyable' is not a member of 'std'
/sage/local/lib/python3.9/site-packages/pybind11/include/pybind11/numpy.h:328:33: error: template argument 2 is invalid
std::is_trivially_copyable<T>,
^
/sage/local/lib/python3.9/site-packages/pybind11/include/pybind11/numpy.h:968:49: error: 'is_pod_struct' is not a member of 'pybind11::detail'
struct format_descriptor<T, detail::enable_if_t<detail::is_pod_struct<T>::value>> {
^
/sage/local/lib/python3.9/site-packages/pybind11/include/pybind11/numpy.h:968:49: error: 'is_pod_struct' is not a member of 'pybind11::detail'
/sage/local/lib/python3.9/site-packages/pybind11/include/pybind11/numpy.h:968:72: error: template argument 1 is invalid
struct format_descriptor<T, detail::enable_if_t<detail::is_pod_struct<T>::value>> {
^
/sage/local/lib/python3.9/site-packages/pybind11/include/pybind11/numpy.h:968:75: error: template argument 2 is invalid
struct format_descriptor<T, detail::enable_if_t<detail::is_pod_struct<T>::value>> {
^
/sage/local/lib/python3.9/site-packages/pybind11/include/pybind11/numpy.h:968:80: error: expected unqualified-id before '>' token
struct format_descriptor<T, detail::enable_if_t<detail::is_pod_struct<T>::value>> {
error: Command "g++ -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wno-unused -O2 -g -fPIC -DPOCKETFFT_PTHREADS -I/sage/local/lib/python3.9/site-packages/pybind11/include -I/sage/local/lib/python3.9/site-packages/pybind11/include -I/sage/local/lib/python3.9/site-packages/numpy/core/include -Ibuild/src.linux-x86_64-3.9/numpy/distutils/include -I/sage/local/include/python3.9 -c scipy/fft/_pocketfft/pypocketfft.cxx -o build/temp.linux-x86_64-3.9/scipy/fft/_pocketfft/pypocketfft.o -MMD -MF build/temp.linux-x86_64-3.9/scipy/fft/_pocketfft/pypocketfft.o.d -std=c++11 -pthread -fvisibility=hidden -msse -msse2 -msse3" failed with exit status 1
Likely caused by the pybind11 update (from 2.6.0 to 2.7.1; https://pybind11.readthedocs.io/en/stable/changelog.html) done as part of the Jupyter upgrade in #31280.
Broken:
linuxmint-17(gcc 4.8.4-2ubuntu1~14.04.3,__GLIBCXX__ = 20150426),ubuntu-trusty(4.8.4-2ubuntu1~14.04.4,__GLIBCXX__ = 20150426)
OK:
centos-74.8.5 20150623 (Red Hat 4.8.5-44,__GLIBCXX__ = 20150623)debian-jessie(gcc 4.9.2-10+deb8u2),linuxmint-18(gcc 5.4.0-6ubuntu1~16.04.6),fedora-26(7.3.1 20180130 (Red Hat 7.3.1-2))
Opened pybind11 upstream issue: pybind/pybind11#3269, PR pybind/pybind11#3270 (merged in the 2.7 maintenance branch)
CC: @dimpase @orlitzky @jhpalmieri @kliem
Component: packages: standard
Author: Matthias Koeppe
Branch/Commit: d0e1e95
Reviewer: Jonathan Kliem
Issue created by migration from https://trac.sagemath.org/ticket/32515
Description changed:
---
+++
@@ -61,4 +61,4 @@
Likely caused by the `pybind11` update done as part of the Jupyter upgrade in #31280.
-
+`linuxmint-18`, `debian-jessie` are OK.Description changed:
---
+++
@@ -59,6 +59,6 @@
struct format_descriptor<T, detail::enable_if_t<detail::is_pod_struct<T>::value>> {
```
-Likely caused by the `pybind11` update done as part of the Jupyter upgrade in #31280.
+Likely caused by the `pybind11` update (from 2.6.0 to 2.7.1; https://pybind11.readthedocs.io/en/stable/changelog.html) done as part of the Jupyter upgrade in #31280.
`linuxmint-18`, `debian-jessie` are OK.Description changed:
---
+++
@@ -61,4 +61,4 @@
Likely caused by the `pybind11` update (from 2.6.0 to 2.7.1; https://pybind11.readthedocs.io/en/stable/changelog.html) done as part of the Jupyter upgrade in #31280.
-`linuxmint-18`, `debian-jessie` are OK.
+`linuxmint-18`, `debian-jessie`, `fedora-26` are OK.I don't see anything in the pybind11 changelog nor in https://pybind11.readthedocs.io/en/stable/upgrade.html that indicates that C++14 would now be needed
Description changed:
---
+++
@@ -57,6 +57,9 @@
^
/sage/local/lib/python3.9/site-packages/pybind11/include/pybind11/numpy.h:968:80: error: expected unqualified-id before '>' token
struct format_descriptor<T, detail::enable_if_t<detail::is_pod_struct<T>::value>> {
+
+
+error: Command "g++ -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wno-unused -O2 -g -fPIC -DPOCKETFFT_PTHREADS -I/sage/local/lib/python3.9/site-packages/pybind11/include -I/sage/local/lib/python3.9/site-packages/pybind11/include -I/sage/local/lib/python3.9/site-packages/numpy/core/include -Ibuild/src.linux-x86_64-3.9/numpy/distutils/include -I/sage/local/include/python3.9 -c scipy/fft/_pocketfft/pypocketfft.cxx -o build/temp.linux-x86_64-3.9/scipy/fft/_pocketfft/pypocketfft.o -MMD -MF build/temp.linux-x86_64-3.9/scipy/fft/_pocketfft/pypocketfft.o.d -std=c++11 -pthread -fvisibility=hidden -msse -msse2 -msse3" failed with exit status 1
```
Likely caused by the `pybind11` update (from 2.6.0 to 2.7.1; https://pybind11.readthedocs.io/en/stable/changelog.html) done as part of the Jupyter upgrade in #31280.OK, C++14 is irrelevant. Looks like the failing compilers do not implement C++11 completely.
https://stackoverflow.com/questions/25123458/is-trivially-copyable-is-not-a-member-of-std
Description changed:
---
+++
@@ -64,4 +64,13 @@
Likely caused by the `pybind11` update (from 2.6.0 to 2.7.1; https://pybind11.readthedocs.io/en/stable/changelog.html) done as part of the Jupyter upgrade in #31280.
-`linuxmint-18`, `debian-jessie`, `fedora-26` are OK.
+Broken:
+- `linuxmint-17` uses gcc 4.8.4-2ubuntu1~14.04.3, `ubuntu-trusty`
+
+- to be checked:
+- `centos-7` 4.8.5 20150623 (Red Hat 4.8.5-44)
+
+OK:
+- `linuxmint-18` (gcc 5.4.0-6ubuntu1~16.04.6), `debian-jessie` (gcc 4.9.2-10+deb8u2), `fedora-26` (7.3.1 20180130 (Red Hat 7.3.1-2))
+
+Description changed:
---
+++
@@ -65,12 +65,12 @@
Likely caused by the `pybind11` update (from 2.6.0 to 2.7.1; https://pybind11.readthedocs.io/en/stable/changelog.html) done as part of the Jupyter upgrade in #31280.
Broken:
-- `linuxmint-17` uses gcc 4.8.4-2ubuntu1~14.04.3, `ubuntu-trusty`
+- `linuxmint-17` (gcc 4.8.4-2ubuntu1~14.04.3), `ubuntu-trusty` (4.8.4-2ubuntu1~14.04.4)
-- to be checked:
+To be checked:
- `centos-7` 4.8.5 20150623 (Red Hat 4.8.5-44)
OK:
-- `linuxmint-18` (gcc 5.4.0-6ubuntu1~16.04.6), `debian-jessie` (gcc 4.9.2-10+deb8u2), `fedora-26` (7.3.1 20180130 (Red Hat 7.3.1-2))
+- `debian-jessie` (gcc 4.9.2-10+deb8u2), `linuxmint-18` (gcc 5.4.0-6ubuntu1~16.04.6), `fedora-26` (7.3.1 20180130 (Red Hat 7.3.1-2))
Description changed:
---
+++
@@ -65,12 +65,13 @@
Likely caused by the `pybind11` update (from 2.6.0 to 2.7.1; https://pybind11.readthedocs.io/en/stable/changelog.html) done as part of the Jupyter upgrade in #31280.
Broken:
-- `linuxmint-17` (gcc 4.8.4-2ubuntu1~14.04.3), `ubuntu-trusty` (4.8.4-2ubuntu1~14.04.4)
-
-To be checked:
-- `centos-7` 4.8.5 20150623 (Red Hat 4.8.5-44)
+- `linuxmint-17` (gcc 4.8.4-2ubuntu1~14.04.3),
+- `ubuntu-trusty` (4.8.4-2ubuntu1~14.04.4)
OK:
-- `debian-jessie` (gcc 4.9.2-10+deb8u2), `linuxmint-18` (gcc 5.4.0-6ubuntu1~16.04.6), `fedora-26` (7.3.1 20180130 (Red Hat 7.3.1-2))
+- `centos-7` 4.8.5 20150623 (Red Hat 4.8.5-44)
+- `debian-jessie` (gcc 4.9.2-10+deb8u2),
+- `linuxmint-18` (gcc 5.4.0-6ubuntu1~16.04.6),
+- `fedora-26` (7.3.1 20180130 (Red Hat 7.3.1-2))
Description changed:
---
+++
@@ -74,4 +74,5 @@
- `linuxmint-18` (gcc 5.4.0-6ubuntu1~16.04.6),
- `fedora-26` (7.3.1 20180130 (Red Hat 7.3.1-2))
+Opened `pybind11` upstream issue: https://github.com/pybind/pybind11/issues/3269
Description changed:
---
+++
@@ -65,11 +65,11 @@
Likely caused by the `pybind11` update (from 2.6.0 to 2.7.1; https://pybind11.readthedocs.io/en/stable/changelog.html) done as part of the Jupyter upgrade in #31280.
Broken:
-- `linuxmint-17` (gcc 4.8.4-2ubuntu1~14.04.3),
-- `ubuntu-trusty` (4.8.4-2ubuntu1~14.04.4)
+- `linuxmint-17` (gcc 4.8.4-2ubuntu1~14.04.3, `__GLIBCXX__ = 20150426`),
+- `ubuntu-trusty` (4.8.4-2ubuntu1~14.04.4, `__GLIBCXX__ = 20150426`)
OK:
-- `centos-7` 4.8.5 20150623 (Red Hat 4.8.5-44)
+- `centos-7` 4.8.5 20150623 (Red Hat 4.8.5-44, `__GLIBCXX__ = 20150623`)
- `debian-jessie` (gcc 4.9.2-10+deb8u2),
- `linuxmint-18` (gcc 5.4.0-6ubuntu1~16.04.6),
- `fedora-26` (7.3.1 20180130 (Red Hat 7.3.1-2))Author: Matthias Koeppe
New commits:
d7a2ef3 | build/pkgs/pybind11/patches: Add fix for linuxmint-17, ubuntu-trusty |
Tested successfully using tox -e docker-ubuntu-trusty-standard -- scipy
Description changed:
---
+++
@@ -74,5 +74,5 @@
- `linuxmint-18` (gcc 5.4.0-6ubuntu1~16.04.6),
- `fedora-26` (7.3.1 20180130 (Red Hat 7.3.1-2))
-Opened `pybind11` upstream issue: https://github.com/pybind/pybind11/issues/3269
+Opened `pybind11` upstream issue: https://github.com/pybind/pybind11/issues/3269, PR https://github.com/pybind/pybind11/pull/3270 (merged in the 2.7 maintenance branch)
Let's get this in please
Reviewer: Jonathan Kliem
LGTM.
Thank you!
Changed branch from u/mkoeppe/linuxmint_17__ubuntu_trusty__scipy_build_error_with_pybind11 to d0e1e95