# Ncurses 6.2
Ncurses 패키지는 터미널 독립적인 문자 화면의 처리를 위한 라이브러리를 제공합니다.
평균 빌드 시간 | 필요한 디스크 공간 |
---|---|
0.7 SBU | 48MB |
# Ncurses의 설치
먼저, gawk
이 설치 중 발견되도록 하십시오:
sed -i s/mawk// configure
그리고 나서 빌드 호스트에서 tic 프로그램을 빌드하기 위해 아래 명령어를 실행하십시오:
mkdir build
pushd build
../configure
make -C include
make -C progs tic
popd
Ncurses의 컴파일을 준비하십시오:
./configure --prefix=/usr \
--host=$LFS_TGT \
--build=$(./config.guess) \
--mandir=/usr/share/man \
--with-manpage-format=normal \
--with-shared \
--without-debug \
--without-ada \
--without-normal \
--enable-widec
새로운 configure 옵션의 의미
--with-manpage-format=normal
이는 Ncurses가 압축된 매뉴얼 페이지를 설치하지 않도록 합니다.
--without-ada
이는 Ncures가 호스트에 있을 수 있지만
chroot
환경에 들어가면 사용할 수 없는 Ada 컴파일러에 대한 지원을 빌드하지 않도록 합니다.--enable-widec
이 옵션을 사용하면 일반 라이브러리(예: libncurses.so.6.2) 대신 넓은 문자 라이브러리(예: libncursesw.so.6.2)가 작성됩니다. 이러한 넓은 문자 라이브러리는 멀티바이트 및 기존 8비트 로케일에서 모두 사용할 수 있지만 일반 라이브러리는 8비트 로케일에서만 제대로 작동합니다. 넓은 문자 및 일반 라이브러리는 소스는 호환되지만 바이너리는 호환되지 않습니다.
--without-normal
이 옵션은 대부분의 정적 라이브러리의 빌드, 설치를 방지합니다.
패키지를 컴파일하십시오:
make
패키지를 설치하십시오:
make DESTDIR=$LFS TIC_PATH=$(pwd)/build/progs/tic install
echo "INPUT(-lncursesw)" > $LFS/usr/lib/libncurses.so
설치 옵션의 의미
TIC_PATH=$(pwd)/build/progs/tic
터미널 데이터베이스를 오류 없이 만들 수 있도록 빌딩 머신에서 실행할 수 있는 방금 만든
tic
의 경로를 넘겨줘야 합니다.echo "INPUT(-lncursesw)" > $LFS/usr/lib/libncurses.so
libncurses.so
라이브러리는 곧 빌드할 몇몇 패키지에 필요합니다. 우리는 이 작은 링커 스크립트를 만듭니다. 이것이 8장에서의 일입니다.
라이브러리를 예상된 위치인 /lib
로 이동하십시오:
mv -v $LFS/usr/lib/libncurses.so.6* $LFS/lib
라이브러리가 이동되었기 때문에, 심볼릭 링크 하나는 존재하지 않는 파일을 가리킵니다. 이를 다시 생성하십시오:
ln -sfv ../../lib/$(readlink $LFS/usr/lib/libncursesw.so) $LFS/usr/lib/libncursesw.so
이 패키지의 자세한 내용은 여기를 참고하십시오.