Skip to content

Possibly incorrect default value for pyqt_sip_dir #34

Closed
@parekhnish

Description

@parekhnish

(Environment instructions at the end of this post)

When performing setup.py build_ext without any additional options, the script uses this code to determine pyqt_sip_dir:

python-poppler-qt5/setup.py

Lines 205 to 211 in 22e0f8b

def __find_pyqt_sip_dir(self):
if self.pyqtconfig:
return self.pyqtconfig.pyqt_sip_dir
import sipconfig
return os.path.join(sipconfig.Configuration().default_sip_dir, 'PyQt5')

For my version of PyQt5 == 5.14.1, the if self.pyqtconfig check failed, so the code got the directory from sipconfig. Thus, the value of the directory was set to:

pyqt_sip_dir = "/path/to/virtualenv/share/sip/PyQt5"

which caused an error in the build process:

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

I figured this was because pyqt_sip_dir was possibly incorrect; manually checking that path revealed there was no such folder! Instead, I had to supply manually a path, with the cmdline argument:

--pyqt-sip-dir==/path/to/virtualenv/lib/python3.7/site-packages/PyQt5/bindings

, and this was the only change needed for setup.py build to successfully build the library.

I wonder if this is an issue with the install for sip itself, installation of PyQt5, or if the way pyqt_sip_dir is set;
Is it possible to change the default from the sipconfig way to this /lib/python/... way?


My Environment:

Using pipenv:

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions