Simpler Navigation for Servers and Operating Systems
Completed: a much simpler Servers and Operating Systems section of the Community. We combined many of the older boards, so you won't have to click through so many levels to get at the information you need. Check the consolidated boards here as many sub-forums are now single boards.
General
cancel
Showing results for 
Search instead for 
Did you mean: 

kernel compilation: ncurses issue

amit mehta_2
Regular Advisor

kernel compilation: ncurses issue

Hi,

While trying to build the linux kernel - 2.6.24.2,
i get the following error message during initial phase(make menuconfig) :
scripts/kconfig/lxdialog/dialog.h:32:20: error: curses.h: No such file or directory <===
In file included from scripts/kconfig/lxdialog/checklist.c:24:

It seems that something is wrong with 'ncurses'

#include CURSES_LOC



# Where is ncurses.h?
ccflags()
{
if [ -f /usr/include/ncurses/ncurses.h ]; then
echo '-I/usr/include/ncurses -DCURSES_LOC=""'
elif [ -f /usr/include/ncurses/curses.h ]; then
echo '-I/usr/include/ncurses -DCURSES_LOC=""'
elif [ -f /usr/include/ncurses.h ]; then
echo '-DCURSES_LOC=""'
else
echo '-DCURSES_LOC=""'
fi
}



After looking into the /usr/include directory , i got to know that the header ncurses.h is absent

On the same machine,i could see an rpm by the name "ncurses-5.5-24.20060715"
[amit@localhost include]$ rpm -qa|grep -i ncurses
ncurses-5.5-24.20060715

[amit@localhost include]$ rpm -qi ncurses-5.5-24.20060715
Name : ncurses Relocations: (not relocatable)
Version : 5.5 Vendor: Red Hat, Inc.
Release : 24.20060715 Build Date: Thu 31 Aug 2006 05:41:08 PM IST
Install Date: Thu 07 Feb 2008 08:30:07 PM IST Build Host: hs20-bc1-7.build.redhat.com
Group : System Environment/Libraries Source RPM: ncurses-5.5-24.20060715.src.rpm
Size : 2829883 License: distributable
Signature : DSA/SHA1, Thu 18 Jan 2007 09:40:59 PM IST, Key ID 5326810137017186
Packager : Red Hat, Inc. <>
URL : NCURSES - New Curses
Summary : A terminal handling library
Description :
The curses library routines are a terminal-independent method of
updating character screens with reasonable optimization. The ncurses
(new curses) library is a freely distributable replacement for the
discontinued 4.4 BSD classic curses library.

i tried to install the latest ncurses(version 5.6) downloaded from the site:

ftp://ftp.gnu.org/gnu/ncurses/ncurses-5.6.tar.gz, but this also failed during the 'make' step

Now to configure the kernel, i can go through the .config file and edit the parameters there,
but this would be really a tedious job(though heard that most of the programmers prefer this)

One guy asked me to install the development library,and while doing the same,following issues creeped up

I tried a lot to find the ncurses-development library for version 5.5 for Redhat 5 over net,but could not

[root@localhost ]# rpm -qa|grep -i *ncurses*
ncurses-5.5-24.20060715

[root@localhost ]# locate libncurses.so.5
/usr/lib/libncurses.so.5
/usr/lib/libncurses.so.5.5

on Debian, i guess the package manager is "synaptic", but what is the packet manager over here(redhat 5)?
i also tried to remove the "ncurses-5.5-24.20060715" which gave me a lot of dependecies issues
[root@localhost ]# rpm -e ncurses-5.5-24.20060715
error: Failed dependencies:
libncurses.so.5 is needed by (installed) info-4.8-14.el5.i386
libncurses.so.5 is needed by (installed) procps-3.2.7-8.1.el5.i386
libncurses.so.5 is needed by (installed) sqlite-3.3.6-2.i386
libncurses.so.5 is needed by (installed) crash-4.0-3.14.i386
-----------------
-----------------
so should i go ahead with removing the "ncurses-5.5-24.20060715" and install the latest version,i.e. Version ncurses 5.6 and corrosponding development library ? will there be any bad impact on dependents ?

~amit
1 REPLY
Matti_Kurkela
Honored Contributor

Re: kernel compilation: ncurses issue

Don't remove the existing ncurses package. Removing it will break all programs that use ncurses.

You're missing the _development headers_ package for ncurses. It's usually named like "ncurses-dev".

It is packaged separately so that you won't need to install the development header files (=lots of small files) if you never compile any software.

The package manager of RedHat Enterprise Linux 5 is "yum". If you use it to request the installation of any package, it should be able to download it from the RedHat Network automatically... assuming your system is registered with RHN.

MK
MK