(dot -T plain < vtep/vtep.gv | /var/tmp/portage/net-misc/openvswitch-2.17.2/temp/python3.10/bin/python3 ./ovsdb/dot2 pic -f 3) > vtep/vtep.pic.tmp && \ mv vtep/vtep.pic.tmp vtep/vtep.pic reading sources... [ 41%] intro/index ^ reading sources... [ 42%] intro/install/afxdp Traceback (most recent call last): File "/var/tmp/portage/net-misc/openvswitch-2.17.2/work/openvswitch-2.17.2/./ovsdb/dot2pic", line 113, in <module> dot2pic(sys.stdin, sys.stdout) File "/var/tmp/portage/net-misc/openvswitch-2.17.2/work/openvswitch-2.17.2/./ovsdb/dot2pic", line 30, in dot2pic scale = float(words[1]) ValueError: could not convert string to float: '%.5g' Traceback (most recent call last): File "/var/tmp/portage/net-misc/openvswitch-2.17.2/work/openvswitch-2.17.2/./ovsdb/dot2pic", line 113, in <module> dot2pic(sys.stdin, sys.stdout) File "/var/tmp/portage/net-misc/openvswitch-2.17.2/work/openvswitch-2.17.2/./ovsdb/dot2pic", line 30, in dot2pic scale = float(words[1]) ValueError: could not convert string to float: '%.5g' make[2]: *** [Makefile:7352: vtep/vtep.pic] Error 1 Reproducible: Always
This same problem happened before the python3_10 rollout as well.
Created attachment 789983 [details] build.log
Created attachment 789986 [details] emerge --info
I have same problem. 2.17.0 and 2.17.1 fail to compile too.
Additional data point (maybe): I built openvswitch 2.17.2 successfully today with both python 3.9 and 3.10, then trying to rebuild it with only 3.10, after switching most of the rest of the system to 3.10, ran into this failure.
Downgrading graphviz to 2.50.0 fixes the problem. The output from dot 4.0.0 on either vswitch.gv or vtep.gv looks like sprintf formats with no conversions applied, e.g. "node %s %.5g %.5g %.5g %.5g %s %s %s %s %s", which explains the ValueError. I had installed graphviz 4.0.0 with python 3.9 prior to a successful build of openvswitch, so maybe this is a bug in graphviz 4 only on python 3.10. Interestingly openvswitch doesn't explicitly depend on graphviz; the build system just opportunistically uses it if available, so this probably will only affect people who have graphviz installed for some other reason.
I just checked equery files media-gfx/graphviz-4.0.0-r1 | grep python .... /usr/lib/python3.9/site-packages/__pycache__ /usr/lib/python3.9/site-packages/__pycache__/gv.cpython-39.opt-1.pyc /usr/lib/python3.9/site-packages/__pycache__/gv.cpython-39.opt-2.pyc /usr/lib/python3.9/site-packages/__pycache__/gv.cpython-39.pyc /usr/lib64/graphviz/python3/__pycache__/gv.cpython-39.opt-1.pyc /usr/lib64/graphviz/python3/__pycache__/gv.cpython-39.opt-2.pyc /usr/lib64/graphviz/python3/__pycache__/gv.cpython-39.pyc ... and I have the problem to build net-misc/openvswitch-2.17.2. So if there is a bug in graphviz 4 it's not only on python 3.10 but 3.9 too.
I have the same problem with building net-misc/openvswitch-2.17.2 with python 3.9 and media-gfx/graphviz-4.0.0-r1. Upgrading media-gfx/graphviz to media-gfx/graphviz-5.0.0 without changing python fixed the problem for me. I suggest the problem is limited to media-gfx/graphviz-4.0.0.
(In reply to Mike Benson from comment #8) > I have the same problem with building net-misc/openvswitch-2.17.2 with > python 3.9 and media-gfx/graphviz-4.0.0-r1. > > Upgrading media-gfx/graphviz to media-gfx/graphviz-5.0.0 without changing > python fixed the problem for me. > > I suggest the problem is limited to media-gfx/graphviz-4.0.0. FWIW I have now been able to build net-misc/openvswitch-2.17.2 on ~amd64 with media-gfx/graphviz-5.0.0 and dev-lang/python-3.10.5 (where python-3.10 is the system default): [ebuild N ] net-misc/openvswitch-2.17.2::gentoo USE="ssl -debug -dist-kernel -modules -monitor" PYTHON_TARGETS="python3_10 -python3_8 -python3_9 -python3_11"
Same for me: with media-gfx/graphviz-5.0.0 and dev-lang/python-3.10.5, net-misc/openvswitch-2.17.2 build. I think the ebuild for versions 2.17.* could have this dependences or graphviz-5.0 at least (I still have Python 3.9 in my PYTHON_TARGETS).
I'm also able to build openvswitch 2.17.2 with graphviz 5.0.0 now, using python 3.10
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=572c7a8f682b9662b1e8300ede6466a07c34ded3 commit 572c7a8f682b9662b1e8300ede6466a07c34ded3 Author: Sam James <sam@gentoo.org> AuthorDate: 2022-07-24 00:40:04 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2022-07-24 00:40:23 +0000 net-misc/openvswitch: disable automagic graphviz usage Noticed because of build failures w/ certain versions of graphviz (fixed upstream in graphviz now). Bug: https://bugs.gentoo.org/854663 Closes: https://bugs.gentoo.org/856286 Signed-off-by: Sam James <sam@gentoo.org> net-misc/openvswitch/openvswitch-2.17.2-r1.ebuild | 4 ++++ 1 file changed, 4 insertions(+)