#66535 closed defect (fixed)

spice-server: configure: no module named 'six'

Reported by: vallon (Justin) Owned by:
Priority: Normal Milestone:
Component: ports Version: 2.8.0
Keywords: Cc:
Port: spice-server

Description

spice-server fails to configure:

Program python3 found: YES (/opt/local/Library/Frameworks/Python.framework/Versions/3.11/bin/python3.11)
Message: Checking for python module six
WARNING: You should add the boolean check kwarg to the run_command call.
         It currently defaults to false,
         but it will default to true in future releases of meson.
         See also: https://github.com/mesonbuild/meson/issues/9300
Running command: /opt/local/Library/Frameworks/Python.framework/Versions/3.11/bin/python3.11 -c import six
--- stdout ---

--- stderr ---
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ModuleNotFoundError: No module named 'six'



subprojects/spice-common/meson.build:141:6: ERROR: Problem encountered: Python module six not found

The Portfile has py_ver_nodot=310, and has a depends_build on py310-six, but it is actually running Python 3.11 during the configure.

I don't know why it chose Python 3.11. My port select for python3 is "none".

If I switch py_ver_nodot=311, it configures after it installs py311-six.

(But, it fails later with ":info:build asciidoc: ERROR: manual.txt: line 9: only book doctypes can contain level 0 sections", but might be the subject of another ticket)

So, the Portfile tries to depend on py${py_ver_nodot}-six, but the configure appears to be picking some version besides python${py_ver_nodot} for its execution.

Attachments (2)

Portfile.diff (877 bytes) - added by jmroot (Joshua Root) 16 months ago.
configurable-python.patch (396 bytes) - added by jmroot (Joshua Root) 16 months ago.

Download all attachments as: .zip

Change History (10)

comment:1 Changed 16 months ago by kencu (Ken)

have you “sudo port selected” python311 as your python3?

oh, sorry, you already said you did not.

Last edited 16 months ago by kencu (Ken) (previous) (diff)

comment:2 Changed 16 months ago by jmroot (Joshua Root)

The port doesn't actually tell the build system which python to use, so I guess it just picks the latest.

comment:3 Changed 16 months ago by jmroot (Joshua Root)

So meson apparently has no built-in support for choosing which python to use via an environment variable or command line option. Does this work for you?

Changed 16 months ago by jmroot (Joshua Root)

Attachment: Portfile.diff added

Changed 16 months ago by jmroot (Joshua Root)

Attachment: configurable-python.patch added

comment:4 Changed 16 months ago by jmroot (Joshua Root)

In bd429607980029c1f569741f40839e58e3c3e60a/macports-ports (master):

spice-server: attempt to use the right python

See: #66535

comment:5 Changed 16 months ago by jmroot (Joshua Root)

Nope. Have to define the option manually apparently.

comment:6 Changed 16 months ago by jmroot (Joshua Root)

In c07be806f6d49fa9555ac722cbae383e2bc886d0/macports-ports (master):

spice-server: add python option to build system

See: #66535

comment:7 Changed 16 months ago by jmroot (Joshua Root)

In aaac542bffcf9caa2b7d60536b3162c1e92a23f9/macports-ports (master):

spice-server: add python option at top level too

See: #66535

comment:8 Changed 16 months ago by jmroot (Joshua Root)

Resolution: fixed
Status: newclosed

OK, fails on older platforms still, but that's a different issue.

Note: See TracTickets for help on using tickets.