bug-ncurses
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

tput bug in ncurses-5.7-20090725


From: Rajeev V. Pillai
Subject: tput bug in ncurses-5.7-20090725
Date: Wed, 29 Jul 2009 02:20:00 +0530 (IST)
User-agent: Alpine 2.00 (LNX 1167 2008-08-23)

Hi,

The tput in ncurses-5.7-20090725 does not seem to work with some
of the common capabilities:

$ tput clear
-1

$ tput cup 0 0
-1


strace output (tput clear):

execve("/usr/bin/tput", ["tput", "clear"], [/* 39 vars */]) = 0
brk(0)                                  = 0x8115000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=44137, ...}) = 0
mmap2(NULL, 44137, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb8037000
close(3)                                = 0
open("/usr/lib/libncursesw.so.6", O_RDONLY) = 3
read(3, 
"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\240\263\0\0004\0\0\0<"..., 
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=355113, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb8036000
mmap2(NULL, 322244, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 
0xb7fe7000
mmap2(0xb8033000, 12288, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4b) = 0xb8033000
close(3)                                = 0
open("/lib/libc.so.6", O_RDONLY)        = 3
read(3, 
"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\220k\1\0004\0\0\0\0"..., 512) 
= 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1575139, ...}) = 0
mmap2(NULL, 1317128, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 
0xb7ea5000
mmap2(0xb7fe1000, 12288, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x13c) = 0xb7fe1000
mmap2(0xb7fe4000, 10504, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7fe4000
close(3)                                = 0
open("/lib/libdl.so.2", O_RDONLY)       = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0 \n\0\0004\0\0\0\\"..., 
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=13810, ...}) = 0
mmap2(NULL, 12408, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 
0xb7ea1000
mmap2(0xb7ea3000, 8192, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1) = 0xb7ea3000
close(3)                                = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb7ea0000
set_thread_area({entry_number:-1 -> 6, base_addr:0xb7ea06c0, limit:1048575, 
seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, 
useable:1}) = 0
mprotect(0xb7ea3000, 4096, PROT_READ)   = 0
mprotect(0xb7fe1000, 8192, PROT_READ)   = 0
mprotect(0xb805f000, 4096, PROT_READ)   = 0
munmap(0xb8037000, 44137)               = 0
ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
brk(0)                                  = 0x8115000
brk(0x8136000)                          = 0x8136000
stat64("/home/rvp/.terminfo", 0xbf82fee0) = -1 ENOENT (No such file or 
directory)
stat64("/usr/share/terminfo", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
access("/usr/share/terminfo/x/xterm", R_OK) = 0
open("/usr/share/terminfo/x/xterm", O_RDONLY|O_LARGEFILE) = 3
read(3, "\32\0010\0&\0\17\0\235\1l\5xterm|xterm terminal "..., 4097) = 3258
close(3)                                = 0
ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
ioctl(1, TIOCGWINSZ, {ws_row=49, ws_col=179, ws_xpixel=1440, ws_ypixel=900}) = 0
fstat64(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 0), ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb8041000
write(1, "-1\n"..., 3)                  = 3
exit_group(0)                           = ?


ltrace output (tput clear):

__libc_start_main(0x80497e0, 2, 0xbffb8004, 0x8049b50, 0x8049b40 <unfinished 
...>
_nc_rootname(0xbffb875d, 0, 0, 0, 0)                                            
                              = 0xbffb875d
strlen("tput")                                                                  
                              = 4
strlen("init")                                                                  
                              = 4
strncmp("tput", "init", 4)                                                      
                              = 11
strlen("tput")                                                                  
                              = 4
strlen("reset")                                                                 
                              = 5
getenv("TERM")                                                                  
                              = "xterm"
getopt(2, 0xbffb8004, "ST:V")                                                   
                              = -1
setupterm(0xbffb8799, 1, 0xbffb7f4c, 0, 0)                                      
                              = 0
strlen("clear")                                                                 
                              = 5
strlen("init")                                                                  
                              = 4
strlen("clear")                                                                 
                              = 5
strlen("reset")                                                                 
                              = 5
strncmp("clear", "reset", 5)                                                    
                              = -15
tigetflag(0xbffb8762, 0xb7f6f170, 318960, 0xb7f6b000, 0xb7e32428)               
                              = -1
tigetnum(0xbffb8762, 0xb7f6f170, 318960, 0xb7f6b000, 0xb7e32428)                
                              = -1
printf("%d\n", -1)                                                              
                              = 3
exit(0 <unfinished ...>
+++ exited (status 0) +++


The library was configured as follows:

1. ./configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info \
        --includedir=/usr/include/ncurses --without-ada --without-debug \
        --with-shared --enable-symlinks --with-manpage-symlinks --enable-const \
        --disable-echo --enable-weak-symbols

2. make

3. make install 2>&1 | tee INSTALL.log

# Recompile and install the wide curses library.
#
1. ./configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info \
        --includedir=/usr/include/ncurses --without-ada --without-debug \
        --with-shared --enable-symlinks --with-manpage-symlinks --enable-const \
        --disable-echo --enable-widec --enable-ext-colors --enable-weak-symbols

4. cd /usr/include; \
   for file in ncurses/{curses,eti,form,menu,ncurses,panel,term,unctrl}.h ; \
   do \
        ln -sf $file ${file#*/} ; \
   done


Thanks,

Rajeev




reply via email to

[Prev in Thread] Current Thread [Next in Thread]