Python 2.4.4 and devel/ncurses

LI Xin delphij at delphij.net
Wed Feb 14 14:34:34 UTC 2007


Hi,

Rong-En Fan wrote:
> distinfo pkg-plist ports/lang/python24/files patch-CVE-2006-4980
> patch-setup.py]
> Reply-To: 
> In-Reply-To: <20070214130732.GA58681 at voodoo.bawue.com>
> 
> [I move to ports@ for discussion. Also CC'ing ncurses author]
> 
> On Wed, Feb 14, 2007 at 02:07:32PM +0100, Kirill Ponomarew wrote:
[...]
>> Upgrading from python24-2.4.3_3 to python24-2.4.4 fails on AMD64 6.2 RELEASE.
>>
>> cc -DNDEBUG -O2 -fno-strict-aliasing -pipe -D__wchar_t=wchar_t -DTHREAD_STACK_SIZE=0x20000 -fPIC -fno-strict-aliasing -I. -I/usr/ports/lang/python24/work/Python-2.4.4/./Include -I/usr/local/include -I/usr/ports/lang/python24/work/Python-2.4.4/Include -I/usr/ports/lang/python24/work/Python-2.4.4 -c /usr/ports/lang/python24/work/Python-2.4.4/Modules/_cursesmodule.c -o build/temp.freebsd-6.2-PRERELEASE-amd64-2.4/_cursesmodule.o
>> cc -shared -pthread -O2 -fno-strict-aliasing -pipe -D__wchar_t=wchar_t -DTHREAD_STACK_SIZE=0x20000 build/temp.freebsd-6.2-PRERELEASE-amd64-2.4/_cursesmodule.o -L/usr/local/lib -lncurses -o build/lib.freebsd-6.2-PRERELEASE-amd64-2.4/_curses.so
>> Segmentation fault (core dumped)
>> *** Error code 139
> 
> I can reproduce this with both i386/amd64 6.2-RELEASE with devel/ncurses
> installed. ldd ${WRKSRC}/build/.../_curses.so says it is linked against
> local/lib/libncurses.so.6 (ktrace on python executable also confirms that).
> 
> gdb shows (I have devel/ncurses-devel installed instead of ncurses 5.6):
> 
> (gdb) run
> Starting program:
> /home/admin/usr/ports/lang/python24/work/Python-2.4.4/python
> warning: Unable to get location for thread creation breakpoint: generic
> error
> [New LWP 100158]
> Python 2.4.4 (#1, Feb 14 2007, 21:57:09)
> [GCC 3.4.6 [FreeBSD] 20060305] on freebsd6
> Type "help", "copyright", "credits" or "license" for more information.
> [New Thread 0x604000 (LWP 100158)]
>>>> import _curses
> 
> Program received signal SIGSEGV, Segmentation fault.
> [Switching to Thread 0x604000 (LWP 100437)]
> 0x00000008011ad7d4 in keybound () from /lib/libncurses.so.6
> (gdb) bt
> #0  0x00000008011ad7d4 in keybound () from /lib/libncurses.so.6
> #1  0x00000008012fe281 in keyname () from /usr/local/lib/libtinfo.so.5.6
> #2  0x000000080142c1be in init_curses ()
>     at /home/admin/usr/ports/lang/python24/work/Python-2.4.4/Modules/_cursesmodule.c:2605
> #3  0x000000000047215f in _PyImport_LoadDynamicModule (
>     name=0x7fffffffdf70 "_curses",
>     pathname=0x7fffffffdac0 "/home/admin/usr/ports/lang/python24/work/Python-2.4.4/build/lib.freebsd-6.2-PRERELEASE-amd64-2.4/_curses.so", fp=0x80142b3b9)
>     at ./Python/importdl.c:53
> #4  0x0000000000470255 in load_module (name=0x7fffffffdf70 "_curses",
>     fp=0x101, buf=0x1 <Error reading address 0x1: Bad address>, type=3,
>     loader=0x101)
>     at /home/admin/usr/ports/lang/python24/work/Python-2.4.4/Python/import.c:1689
> #5  0x000000000047061d in import_submodule (mod=0x5b3ea0,
>     subname=0x7fffffffdf70 "_curses", fullname=0x7fffffffdf70 "_curses")
>     at /home/admin/usr/ports/lang/python24/work/Python-2.4.4/Python/import.c:2276
> [...]
> 
> I can build python 2.4.4 without problems on 7.x i386, which has ncurses
> 5.6 in base. Moreover, python 2.5 builds fine on these machines, i.e., 
> with devel/ncurses installed. 
> 
> So, my guess is that devel/ncurses + base ncurses confuses python 2.4.4
> build in someway...

Hmm...  So I guess this is machine independent?  I'll try to see if I
can produce this on my i386 crashbox, thanks for the clue.

Cheers,
-- 
Xin LI <delphij at delphij.net>	http://www.delphij.net/
FreeBSD - The Power to Serve!

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 249 bytes
Desc: OpenPGP digital signature
Url : http://lists.freebsd.org/pipermail/freebsd-ports/attachments/20070214/dd443f52/signature.pgp


More information about the freebsd-ports mailing list