Python 3.2a1 in rawhide
dmalcolm at redhat.com
Tue Aug 24 15:37:26 UTC 2010
On Tue, 2010-08-24 at 09:10 -0500, Jeffrey Ollie wrote:
> On Mon, Aug 23, 2010 at 7:16 PM, David Malcolm <dmalcolm at redhat.com> wrote:
> > A suggested fix (caveat: not tested): ensure that the python-lxml.spec
> > has a
> > BuildRequires: Cython >= 0.12
> > and delete the .c file in the %prep, to ensure that Cython regenerates
> > it during the build.
> > Does this fix it?
> That worked, or at least it let me build. Cython isn't available for
> python3 apparently so you can't let the python3 build stage generate
> the .c files, you need to generate them during the python2 build stage
> and copy them over to the python3 build dir.
As I understand it, the .c files that Cython generates are compilable
against both Python 2 and Python 3: it adds the necessary preprocessor
macros to do the right thing. (The shared libraries that are generated
will be specific to a particular MAJOR.MINOR release of python, though).
Cython itself is implemented in Python; it sounds from the above like
it's written to work with just Python 2 at this stage (which I don't see
as an issue; I think it's perfectly acceptable to require python 2 to
run tools to build python 3 packages; as another example: we use
systemtap's /usr/bin/dtrace during the build of python3, which is in
fact a Python 2 script).
> One other issue I discovered was that I needed to suppress byte
> compiling during the install stage because it seemed that the python3
> installer somehow was doing python2-style byte compilation. (Or maybe
> I'm just misunderstanding things)
That sounds weird. Do you have a build log?
More information about the devel