Opened 3 years ago

Closed 3 years ago

#62515 closed defect (fixed)

py39-pyqt5-webengine 5.15.4_0 and py39-pyqt5-chart 5.15.4_0: Unable to upgrade neither py39-pyqt5-webengine nor py39-pyqt5-chart

Reported by: JD-Veiga Owned by:
Priority: Normal Milestone:
Component: ports Version: 2.6.4
Keywords: Cc: michaelld (Michael Dickens), reneeotten (Renee Otten)
Port: py39-pyqt5-webengine py39-pyqt5-chart py39-pyqt5 py39-sip

Description

Hi,

I am not able to upgrade neither py39-pyqt5-webengine nor py39-pyqt5-chart.

The problem is quite similar to one that I have been in the past related to Python 3.8 (See #60741). Now, I have upgraded Python 3.8 py38-pyqt5-webengine and py38-pyqt5-chart without any inconvenience but not Python 3.9 corresponding ports.

py39-pyqt5-chart fails because:

sip: Unable to find file "QtGui/QtGuimod.sip"

while py39-pyqt5-webengine fails because:

sip: Unable to find file "QtCore/QtCoremod.sip"

Of course, both QtGui/QtGuimod.sip and QtCore/QtCoremod.sip can be found in:

  • /opt/local/Library/Frameworks/Python.framework/Versions/3.9/share/sip/PyQt5/QtGui/QtGuimod.sip and
  • /opt/local/Library/Frameworks/Python.framework/Versions/3.9/share/sip/PyQt5/QtCore/QtCoremod.sip.

My system is:

macos Mojave 10.14.6 (18G8022)
MacPorts 2.6.4

The installed ports are:

py39-pyqt5-chart @5.15.2_0
py39-pyqt5-webengine @5.15.2_0

The output of sudo port -v upgrade py39-pyqt5-webengine is:

Executing:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_python_py-pyqt5/py39-pyqt5-webengine/work/PyQtWebEngine-5.15.4" && /opt/local/Library/Frameworks/Python.framework/Versions/3.9/bin/python3.9 configure.py -q /opt/local/libexec/qt5/bin/qmake --verbose --sip=/opt/local/bin/sip-3.9 --no-qsci-api --no-dist-info --spec=macx-clang 
Error: Unable to create the C++ code.
Configuring PyQtWebEngine 5.15.4...
The PyQtWebEngine .sip files will be installed in
/opt/local/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/PyQt5/bindings.
PyQtWebEngine will be installed in
/opt/local/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/PyQt5.
PyQt 5.15.4 is being used.
Qt 5.15.2 is being used.
sip 4.19.25 is being used.
The sip executable is /opt/local/bin/sip-3.9.
PyQtWebEngine is being built with 'protected' redefined as 'public'.
The PEP 484 stubs will be installed in
/opt/local/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/PyQt5.
Generating the C++ source for the QtWebEngine module...
/opt/local/bin/sip-3.9 -I /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_python_py-pyqt5/py39-pyqt5-webengine/work/PyQtWebEngine-5.15.4/sip -I /opt/local/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/PyQt5/bindings -n sip -t WS_MACX -t Qt_5_15_0 -B Qt_6_0_0 -t QtWebEngine_5_15_0 -y QtWebEngine.pyi -P -o -c /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_python_py-pyqt5/py39-pyqt5-webengine/work/PyQtWebEngine-5.15.4/QtWebEngine /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_python_py-pyqt5/py39-pyqt5-webengine/work/PyQtWebEngine-5.15.4/sip/QtWebEngine/QtWebEnginemod.sip
sip: Deprecation warning: the -B flag is deprecated
sip: Unable to find file "QtCore/QtCoremod.sip"
Command failed:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_python_py-pyqt5/py39-pyqt5-webengine/work/PyQtWebEngine-5.15.4" && /opt/local/Library/Frameworks/Python.framework/Versions/3.9/bin/python3.9 configure.py -q /opt/local/libexec/qt5/bin/qmake --verbose --sip=/opt/local/bin/sip-3.9 --no-qsci-api --no-dist-info --spec=macx-clang 
Exit code: 1
Error: Failed to configure py39-pyqt5-webengine: configure failure: command execution failed

The output of is:

Executing:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_python_py-pyqt5/py39-pyqt5-chart/work/PyQtChart-5.15.4" && /opt/local/Library/Frameworks/Python.framework/Versions/3.9/bin/python3.9 configure.py -q /opt/local/libexec/qt5/bin/qmake --verbose --sip=/opt/local/bin/sip-3.9 --no-qsci-api --no-dist-info --spec=macx-clang 
Error: Unable to create the C++ code.
Configuring PyQtChart 5.15.4...
QtChart 5.15.2 is being used.
The QtChart .sip files will be installed in
/opt/local/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/PyQt5/bindings.
PyQtChart will be installed in
/opt/local/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/PyQt5.
PyQt 5.15.4 is being used.
Qt 5.15.2 is being used.
sip 4.19.25 is being used.
The sip executable is /opt/local/bin/sip-3.9.
PyQtChart is being built with 'protected' redefined as 'public'.
The PEP 484 stubs will be installed in
/opt/local/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/PyQt5.
Generating the C++ source for the QtChart module...
/opt/local/bin/sip-3.9 -I /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_python_py-pyqt5/py39-pyqt5-chart/work/PyQtChart-5.15.4/sip -I /opt/local/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/PyQt5/bindings -n sip -t WS_MACX -t Qt_5_15_0 -B Qt_6_0_0 -t QtChart_5_15_0 -y QtChart.pyi -P -o -c /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_python_py-pyqt5/py39-pyqt5-chart/work/PyQtChart-5.15.4/QtChart /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_python_py-pyqt5/py39-pyqt5-chart/work/PyQtChart-5.15.4/sip/QtChart/QtChartmod.sip
sip: Deprecation warning: the -B flag is deprecated
sip: Unable to find file "QtGui/QtGuimod.sip"
Command failed:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_python_py-pyqt5/py39-pyqt5-chart/work/PyQtChart-5.15.4" && /opt/local/Library/Frameworks/Python.framework/Versions/3.9/bin/python3.9 configure.py -q /opt/local/libexec/qt5/bin/qmake --verbose --sip=/opt/local/bin/sip-3.9 --no-qsci-api --no-dist-info --spec=macx-clang 
Exit code: 1
Error: Failed to configure py39-pyqt5-chart: configure failure: command execution failed

Thanks a lot.

Change History (7)

comment:1 Changed 3 years ago by jmroot (Joshua Root)

Cc: michaelld added

comment:2 Changed 3 years ago by JD-Veiga

Hi,

Still having the same problem.

Meanwhile I have tried a clean installation (just removing py38-pyqt5-webengine, py38-pyqt5-chart, and their dependencies. It fails too.

comment:3 Changed 3 years ago by JD-Veiga

Finally, I re-installed macports from zero (following migration instructions https://trac.macports.org/wiki/Migration) in order to build last versions of py38-pyqt5-webengine and py38-pyqt5-chart.

Re-installing py38-pyqt5-webengine and py38-pyqt5-chart using restore_ports script fails, so I suspect that other ports are possibly conflicting with pyqt5 ports (I cannot build qscintilla support for py-qt5 either).

So, the solution was installing py38-pyqt5-chart and py38-pyqt5-webengine first via sudo port -v install py38-pyqt5-webengine py38-pyqt5-chart. Then I installed all remaining ports via sudo ./restore_ports.tcl myports.txt.

It takes more time than simply upgrade py38-pyqt5-webengine and py38-pyqt5-chart but works.

comment:4 Changed 3 years ago by JD-Veiga

I have found a better and simpler solution.

I have noticed that the installation tries to use bindings stored in /opt/local/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/PyQt5/bindings directory (currently installing for Python 3.9 with similar issues). That directory is empty since bindings are installed in the parent directory /opt/local/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/PyQt5.

Simply deleting /opt/local/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/PyQt5/bindings solved the problem and py*-pyqt5-* were installed without further difficulties.

comment:5 Changed 3 years ago by reneeotten (Renee Otten)

Cc: reneeotten added

I've switched the building of this port to use upstream's recommended way using pyqt-builder and updated to the latest sip version as well. Hopefully this will resolve (some of) the issues described in this ticket. Please give it a try to update and report back here. It builds fine on the buildbot for macOS 10.4, so I'd hope it is all good now...

comment:6 Changed 3 years ago by JD-Veiga

I have upgraded all p39-pyqt* ports last night on a macos Mojave 10.14.6 (18G9323) without any problem.

Thanks a lot.

Last edited 3 years ago by JD-Veiga (previous) (diff)

comment:7 Changed 3 years ago by reneeotten (Renee Otten)

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.