Opened 3 years ago

Closed 3 years ago

Last modified 9 months ago

#63568 closed defect (fixed)

qgis3: configure failure due to configure script try finding pyuic5 binary with which

Reported by: i0ntempest Owned by: reneeotten (Renee Otten)
Priority: Normal Milestone:
Component: ports Version: 2.7.1
Keywords: Cc: Veence (Vincent), reneeotten (Renee Otten)
Port: qgis3

Description

Line 62 of work/qgis-QGIS-d3e6fb5/cmake/FindPyQt5.py is 'pyqt_bin_dir': os.path.dirname(shutil.which("pyuic5")),, which I think is the script trying to find pyuic5 binary to use, but the actual binary has "-3.9" (or the version of your python) appended so this line fails, giving a configure error. Change the code to find pyuic5-3.9 fixes the configure, but the build still fails with python/CMakeFiles/python_module_qgis__core_autogen.dir/build.make:761: *** missing separator. Stop.
Could be related to the recent dependency change.

Attachments (1)

main.log (48.0 KB) - added by i0ntempest 3 years ago.

Download all attachments as: .zip

Change History (9)

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

I don't think that anything has changed in that respect with the recent change of dependencies (it's part of py-pyqt5, which still installs that binary. In the Portfile it defines where to find that binary configure.args-append -DPYUIC_PROGRAM=${prefix}/bin/pyuic5-${pyversion}, that location exists so that should still work... But I see that the builds fails currently; I can try and take a look although I don't know anything about qgis3.

Changed 3 years ago by i0ntempest

Attachment: main.log added

comment:2 Changed 3 years ago by i0ntempest

Thanks, would really help if you could take a look. Just attached my main.log.
Also on https://ports.macports.org/port/qgis3/details/ builds on all bots failed.

Last edited 3 years ago by i0ntempest (previous) (diff)

comment:3 Changed 3 years ago by slarew

Cc: slarew added

comment:4 Changed 3 years ago by piyushrpt

Unfortunately, cmake really wants to find a binary named pyuic5 - this is hardcoded in the cmake files that look for qt5/pyqt. Temporarily creating a symlink called pyuic5 to point to pyuic5-${pyversion} manually and then installing qgis3 should work fine.

comment:5 Changed 3 years ago by i0ntempest

That will indeed allow the port to pass configure, but still fails building with the error above I mentioned.

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

I think I have it building again. One can just add the location of pyicu5 to the PATH, no need to make symlinks. I think I need to revert back to using py-sip4, there are upstream commits to have it build with recent versions of SIP but I cannot get that to work. Let me verify this tonight once more and if it indeed works, then I'll push that chang

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

Owner: set to reneeotten
Resolution: fixed
Status: newclosed

In f476b9ca3850dcec9e5c201e10bc7137b82faaea/macports-ports (master):

qgis3: fix build failure

  • add PATH to pyuic5 binary (not sure if it's needed in all three phases, but it takes forever to build/test and it doesn't hurt)
  • revert to building with py-sip4

Closes: #63568

comment:8 Changed 9 months ago by slarew

Cc: slarew removed
Note: See TracTickets for help on using tickets.