[Paraview] problem configuring python sip in 3.10.1

fbissey at slingshot.co.nz fbissey at slingshot.co.nz
Wed Jun 15 23:11:29 EDT 2011


Hi,

I am actually writing the ebuild for paraview 3.10.1 on Gentoo. While studying
how to enable python sip I came across two problems.
First SIP_PYQT_DIR was put to NOT_FOUND. It is because the path where
QtCore/QtCoremod.sip is located on Gentoo is /usr/share/sip which is not in the
path searched in
  # find .sip files for Qt
  find_path(SIP_PYQT_DIR NAMES QtCore/QtCoremod.sip
    PATHS ${PYTHON_INCLUDE_PATH}/../Lib/site-packages/PyQt4/sip/PyQt4
          ${PYTHON_INCLUDE_PATH}/../sip/PyQt4
          ${PYTHON_INCLUDE_PATH}/../Versions/2.5/share/sip/PyQt4
          ${PYTHON_INCLUDE_PATH}/../share/sip/PyQt4
          /usr/share/sip/PyQt4
          /usr/local/share/sip/PyQt4
    DOC "Root directory containing all PyQt4 sip files."
    )
in VTK/GUISupport/Qt/CMakeLists.txt.
A little hack later I had it properly detected. The next problem is I think a
little bit more serious. Once SIP_PYQT_DIR was found SIP_INCLUDE_DIR wasn't.
The code to set it in VTK/CMakeLists.txt is as follow:
IF(VTK_WRAP_PYTHON_SIP)
  FIND_PROGRAM(SIP_EXECUTABLE NAMES sip DOC "Path to sip executable")
  FIND_PATH(SIP_INCLUDE_DIR NAMES sip.h
    PATHS "${PYTHON_INCLUDE_PATH}"
"${PYTHON_INCLUDE_PATH}/../Lib/site-packages/PyQt4/include")
ENDIF(VTK_WRAP_PYTHON_SIP)

On my box sip.h is in /usr/include/python2.7 which you would expect to be
PYTHON_INCLUDE_PATH. So why wasn't it found. My guess about this is that the
variable is empty because no python detection has occurred at this stage.
Passing -DSIP_INCLUDE_DIR=/usr/include/python2.7 works of course.

Francois



More information about the ParaView mailing list