Hi, > > > > > So is there any chance of fixing this? The last time I tried to build > > > > > Vim on CentOS 5.8 was patchlevel 548, and it worked just fine with > > > > > Python (currently 2.4.3), so it's clear the patches to work with > > > > > Python since then have broken something. > > > > > > > > FWIW, I experience this same issue under Scientific Linux 5.3 (has > > > python-2.4.3). > > > > > > > > The first version which fails to build is vim-7.3.569, but that patch is > > > too big for me to say why it is problematic. > > > > > > It seems to me there are a few Py_ssize_t undefined. Maybe just and > > > a "typedef" if it's not defined? > > > > Bram? Are you aware of this issue? (Have you seen these messages?) > > I read the error, but I don't know the proper solution. It appears to > build fine on most systems, thus it's either an issue with a specific > Python version or with that system.
The problem is that Py_ssize_t isn't defined prior to python-2.5, meaning that the current vim trunk cannot be build with e.g. python-2.4. Like lilydjwg suggested vim can provide its own Py_ssize_t in that case, see e.g. the attached patch with which I can build vim trunk. Any web search for Py_ssize_t turns up tons of similar solutions. Maybe this or something simular could be included in the official version? Cheers, Benjamin -- "Good judgment comes from experience. Experience comes from bad judgment."
diff --git a/src/if_py_both.h b/src/if_py_both.h index 6c1aa7f..eda8c14 100644 --- a/src/if_py_both.h +++ b/src/if_py_both.h @@ -12,6 +12,10 @@ * Common code for if_python.c and if_python3.c. */ +#if PY_VERSION_HEX<0x02050000 +typedef int Py_ssize_t; +#endif + #ifdef FEAT_MBYTE # define ENC_OPT p_enc #else
signature.asc
Description: Digital signature
