[Kde-bindings] [Bug 140302] New: kdebindings-3.5.6 build broken with python 2.4

Elan Ruusamäe glen at delfi.ee
Fri Jan 19 17:15:41 UTC 2007


------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
         
http://bugs.kde.org/show_bug.cgi?id=140302         
           Summary: kdebindings-3.5.6 build broken with python 2.4
           Product: bindings
           Version: unspecified
          Platform: unspecified
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: NOR
         Component: general
        AssignedTo: kde-bindings kde org
        ReportedBy: glen delfi ee


Version:           unknown (using KDE 3.5.5, PLD Linux Distribution)
Compiler:          gcc version 3.3.6 (PLD Linux)
OS:                Linux (x86_64) release 2.6.16.35-1smp

building 
d26b5f54f062b765a949d66657c2ab3c *kdebindings-3.5.6.tar.bz2
with python-2.4.4 outputs:

/usr/include/features.h:150:1: warning: this is the location of the previous definition
marshaller.cpp: In member function `bool
  PythonDCOP::Marshaller::marshalDict(const PythonDCOP::PCOPType&, const
  PythonDCOP::PCOPType&, PyObject*, QDataStream*) const':
marshaller.cpp:129: error: cannot convert `ssize_t*' to `int*' for argument `2'
  to `int PyDict_Next(PyObject*, int*, PyObject**, PyObject**)'
marshaller.cpp:138: error: cannot convert `ssize_t*' to `int*' for argument `2'
  to `int PyDict_Next(PyObject*, int*, PyObject**, PyObject**)'
make[4]: *** [marshaller.lo] Error 1
make[4]: Leaving directory `/home/builder/rpm/pld/BUILD/kdebindings-3.5.6/dcoppython/shell'

first patch is to python 2.4 to backport Py_ssize_t type:
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SOURCES/Attic/python-Py_ssize_t.patch

after that patch in python:
marshaller.cpp: In member function `bool
  PythonDCOP::Marshaller::marshalDict(const PythonDCOP::PCOPType&, const
  PythonDCOP::PCOPType&, PyObject*, QDataStream*) const':
marshaller.cpp:129: error: cannot convert `ssize_t*' to `int*' for argument `2'
  to `int PyDict_Next(PyObject*, int*, PyObject**, PyObject**)'
marshaller.cpp:138: error: cannot convert `ssize_t*' to `int*' for argument `2'
  to `int PyDict_Next(PyObject*, int*, PyObject**, PyObject**)'
make[1]: *** [marshaller.lo] Error 1
make[1]: Leaving directory `/home/builder/rpm/pld/BUILD/kdebindings-3.5.6/dcoppython/shell'
make: *** [all] Error 2

so there's second patch is to use Py_ssize_t in place where expected:
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SOURCES/Attic/kdebindings-ssize_t.patch

for 2.5 python defines special type: Py_ssize_t  not ssize_t.



More information about the Kde-bindings mailing list