FS#58282 - [cadence] Add qt5-svg as a dependency

Attached to Project: Community Packages
Opened by [] (genkisky) - Friday, 20 April 2018, 02:32 GMT
Last edited by David Runge (dvzrv) - Tuesday, 24 April 2018, 18:35 GMT
Task Type Bug Report
Category Packages
Status Closed
Assigned To David Runge (dvzrv)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description: cadence should depend on qt5-svg, but does not currently.

Additional info:
* cadence=0.9.0-1

Steps to reproduce: Run cadence without qt5-svg installed. It will fail, because libQt5Svg.so is not available.
This task depends upon

Closed by  David Runge (dvzrv)
Tuesday, 24 April 2018, 18:35 GMT
Reason for closing:  Fixed
Additional comments about closing:  Fixed in 0.9.0-2
Comment by Doug Newgard (Scimmia) - Friday, 20 April 2018, 02:40 GMT
Nothing in the package links to that library.

Actual errors, and checking things out with lddtree would both be helpful. Pretty certain this isn't a problem with the package.
Comment by [] (genkisky) - Friday, 20 April 2018, 03:09 GMT
Sorry, in retrospect, I should've added more details. It's not a direct linking dependency, but via python. Here is what I see:

$ cadence
Using Tray Engine 'Qt'
Traceback (most recent call last):
File "/usr/share/cadence/src/cadence.py", line 42, in <module>
from shared_canvasjack import *
File "/usr/share/cadence/src/shared_canvasjack.py", line 34, in <module>
import patchcanvas
File "/usr/share/cadence/src/patchcanvas.py", line 28, in <module>
from PyQt5.QtSvg import QGraphicsSvgItem, QSvgRenderer
ImportError: libQt5Svg.so.5: cannot open shared object file: No such file or directory

So, the cadence source code directly imports PyQt5.QtSvg. This is provided via python-pyqt5. But, python-pyqt5 lists qt5-svg only as an optional dependency:

$ pacman -Qi python-pyqt5 | grep svg
qt5-svg: QtSvg

python-pyqt5 provides the imported .so, which in turn links with libQt5Svg.so:

$ ldd /usr/lib/python3.6/site-packages/PyQt5/QtSvg.so | grep Svg
libQt5Svg.so.5 => not found

Because qt5-svg is only an optional dep of python-qt5, I didn't have it installed. It seems the best solution is as I posted in the bug (let me know if I'm missing something though).

Loading...