You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
python-3.3.2-r2: Modules/xxlimited.c:17:error: #error Py_LIMITED_API is incompatible with Py_DEBUG, Py_TRACE_REFS, and Py_REF_DEBUG #63083
Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.
Show more details
GitHub fields:
assignee=Noneclosed_at=<Date2013-08-30.13:57:35.332>created_at=<Date2013-08-30.13:27:32.337>labels= ['build']
title='python-3.3.2-r2: Modules/xxlimited.c:17:error: #error Py_LIMITED_API is incompatible with Py_DEBUG, Py_TRACE_REFS, and Py_REF_DEBUG'updated_at=<Date2013-08-30.15:07:01.138>user='https://bugs.python.org/mmokrejs'
Looks I cannot compile when python-3.3 was configured with --with-pydebug. I use Gentoo Linux, the -r2 shows they added some patches but should not matter I think.
building 'xxlimited' extension
x86_64-pc-linux-gnu-gcc -pthread -fPIC -Wno-unused-result -DDYNAMIC_ANNOTATIONS_ENABLED=1 -O2 -pipe -msse -msse2 -msse3 -mssse3 -msse4.1 -msse4.2 -msse4 -mavx -maes -mpclmul -mpopcnt -march=corei7-avx -fstack-protector-all -fwrapv -DPy_LIMITED_API=1 -IInclude -I. -I/mnt/1TB/var/tmp/portage/dev-lang/python-3.3.2-r2/work/Python-3.3.2/Include -I/mnt/1TB/var/tmp/portage/dev-lang/python-3.3.2-r2/work/x86_64-pc-linux-gnu -c /mnt/1TB/var/tmp/portage/dev-lang/python-3.3.2-r2/work/Python-3.3.2/Modules/xxlimited.c -o build/temp.linux-x86_64-3.3-pydebug/mnt/1TB/var/tmp/portage/dev-lang/python-3.3.2-r2/work/Python-3.3.2/Modules/xxlimited.o
In file included from /mnt/1TB/var/tmp/portage/dev-lang/python-3.3.2-r2/work/Python-3.3.2/Include/Python.h:68:0,
from /mnt/1TB/var/tmp/portage/dev-lang/python-3.3.2-r2/work/Python-3.3.2/Modules/xxlimited.c:17:
/mnt/1TB/var/tmp/portage/dev-lang/python-3.3.2-r2/work/Python-3.3.2/Include/object.h:65:2: error: #error Py_LIMITED_API is incompatible with Py_DEBUG, Py_TRACE_REFS, and Py_REF_DEBUG
I think make should ignore this error unless you fix xxlimited.c sources.
Uh. I don't understand. So did you want to say I should not run configure --with-pydebug in python 3.3 or what? I am fine if you fix the Makefile not to exit on this particular file. I am missing something.
I'm curious how this error gets triggered. I build python --with-pydebug on Gentoo all the time, albeit from a checkout, and I've never seen it. I'm imagining that means it is a Gentoo bug. Well, not even really a bug, since Gentoo doesn't itself support emerging python in debug mode.
I specified only "--with-pydebug --without-pymalloc --with-valgrind". So where does the limited API come from? Bug in configure.ac?
skrah commented on Aug 30, 2013
skrahmannequin
Mannequin
More actions
Well, these look like Gentoo build flags. Did you or "emerge" or
anything else export CFLAGS in the shell?
skrah commented on Aug 30, 2013
skrahmannequin
Mannequin
More actions
I think I understand now: If you used the strategy from msg196520,
of course you get the Gentoo flags.
What you really should do is download a release or get a checkout
from hg.python.org and build that _without_ using "emerge".
mmokrejs commented on Aug 30, 2013
mmokrejsmannequin
MannequinAuthor
More actions
So I conclude that you want to say that some of the configure flags is wrong? Which? I can surely report that at Gentoo. I still think Makefile should be changed so that it make does not even try to compile xxlimited.c if -DPy_LIMITED_API=1 is in CFLAGS regardless how that happened.
Look into the python-3.3.2-r2.ebuild file for what it does, and how does differ from 3.7.5-r2.ebuild which can be compiled fine through emerge abd thsoe 3 configure arguments I requested.
Activity
mmokrejs commentedon Aug 30, 2013
Looks I cannot compile when python-3.3 was configured with --with-pydebug. I use Gentoo Linux, the -r2 shows they added some patches but should not matter I think.
building 'xxlimited' extension
x86_64-pc-linux-gnu-gcc -pthread -fPIC -Wno-unused-result -DDYNAMIC_ANNOTATIONS_ENABLED=1 -O2 -pipe -msse -msse2 -msse3 -mssse3 -msse4.1 -msse4.2 -msse4 -mavx -maes -mpclmul -mpopcnt -march=corei7-avx -fstack-protector-all -fwrapv -DPy_LIMITED_API=1 -IInclude -I. -I/mnt/1TB/var/tmp/portage/dev-lang/python-3.3.2-r2/work/Python-3.3.2/Include -I/mnt/1TB/var/tmp/portage/dev-lang/python-3.3.2-r2/work/x86_64-pc-linux-gnu -c /mnt/1TB/var/tmp/portage/dev-lang/python-3.3.2-r2/work/Python-3.3.2/Modules/xxlimited.c -o build/temp.linux-x86_64-3.3-pydebug/mnt/1TB/var/tmp/portage/dev-lang/python-3.3.2-r2/work/Python-3.3.2/Modules/xxlimited.o
In file included from /mnt/1TB/var/tmp/portage/dev-lang/python-3.3.2-r2/work/Python-3.3.2/Include/Python.h:68:0,
from /mnt/1TB/var/tmp/portage/dev-lang/python-3.3.2-r2/work/Python-3.3.2/Modules/xxlimited.c:17:
/mnt/1TB/var/tmp/portage/dev-lang/python-3.3.2-r2/work/Python-3.3.2/Include/object.h:65:2: error: #error Py_LIMITED_API is incompatible with Py_DEBUG, Py_TRACE_REFS, and Py_REF_DEBUG
I think make should ignore this error unless you fix xxlimited.c sources.
skrah commentedon Aug 30, 2013
A similar issue was closed, see msg157249. The error looks deliberate
to me, so let's close this, too.
mmokrejs commentedon Aug 30, 2013
Uh. I don't understand. So did you want to say I should not run configure --with-pydebug in python 3.3 or what? I am fine if you fix the Makefile not to exit on this particular file. I am missing something.
bitdancer commentedon Aug 30, 2013
I'm curious how this error gets triggered. I build python --with-pydebug on Gentoo all the time, albeit from a checkout, and I've never seen it. I'm imagining that means it is a Gentoo bug. Well, not even really a bug, since Gentoo doesn't itself support emerging python in debug mode.
mmokrejs commentedon Aug 30, 2013
See for what I did to Gentoo: http://bugs.python.org/issue18843#msg196520
skrah commentedon Aug 30, 2013
Martin, msg196534 shows that you are building with -DPy_LIMITED_API=1.
You can either use the limited API or --with-pydebug, but not both.
[As I said in the other issue, IMHO it is better to use a minimal set
of build options when reporting bugs.]
mmokrejs commentedon Aug 30, 2013
Hmm, but I did not add -DPy_LIMITED_API=1. Python 2.7.5 can be compiled using same configuration. Going back to the build.log file I see:
configure --prefix=/usr --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --libdir=/usr/lib64 --with-fpectl --enable-shared --disable-ipv6 --with-threads --infodir=${prefix}/share/info --mandir=${prefix}/share/man --with-computed-gotos --with-dbmliborder=gdbm --with-libc= --enable-loadable-sqlite-extensions --with-system-expat --with-system-ffi --with-pydebug --without-pymalloc --with-valgrind
I specified only "--with-pydebug --without-pymalloc --with-valgrind". So where does the limited API come from? Bug in configure.ac?
skrah commentedon Aug 30, 2013
Well, these look like Gentoo build flags. Did you or "emerge" or
anything else export CFLAGS in the shell?
skrah commentedon Aug 30, 2013
I think I understand now: If you used the strategy from msg196520,
of course you get the Gentoo flags.
What you really should do is download a release or get a checkout
from hg.python.org and build that _without_ using "emerge".
mmokrejs commentedon Aug 30, 2013
So I conclude that you want to say that some of the configure flags is wrong? Which? I can surely report that at Gentoo. I still think Makefile should be changed so that it make does not even try to compile xxlimited.c if -DPy_LIMITED_API=1 is in CFLAGS regardless how that happened.
http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/dev-lang/python/
Look into the python-3.3.2-r2.ebuild file for what it does, and how does differ from 3.7.5-r2.ebuild which can be compiled fine through emerge abd thsoe 3 configure arguments I requested.
bitdancer commentedon Aug 30, 2013
Python2 doesn't support the limited ABI, so that flag is a noop for 2.7.