Linux From Scratch - Version 12.1-systemd | ||
---|---|---|
Chapter 8. Installing Basic System Software | ||
이전 | 위로 / 처음으로 | 다음 |
Tcl-8.6.3 | DejaGNU-1.6.3 |
Expect 패키지에는 스크립트 대화문를 통해 telnet, ftp, passwd, fsck, rlogin, tip과 같은 대화형 애플리케이션을 자동화하기 위한 도구가 포함되어 있습니다. Expect는 이러한 애플리케이션을 테스트하는 데도 유용하며, 다른 어떤 것으로도 엄청나게 어려운 모든 종류의 작업을 쉽게 처리할 수 있습니다. DejaGnu 프레임워크는 Expect로 작성되었습니다.
Expect가 작동하려면 PTY가 필요합니다. 간단한 테스트를 수행하여 PTY가 chroot 환경 내에서 제대로 작동하는지 확인합니다.
python3 -c 'from pty import spawn; spawn(["echo", "ok"])'
이 명령은 ok
가 출력되어야 합니다. 만약 출력에 OSError: out of pty devices
가 포함된다면 PTY 작동을 위한 환경이 설정되지 않은 것입니다. 루트 환경을 종료하고 섹션 7.3, "가상 커널 파일 시스템 준비하기"를 다시 읽고 devpts 파일 시스템(및 기타 가상 커널 파일 시스템)이 올바르게 마운트되었는지 확인해야 합니다. 그런 다음 섹션 7.4, "루트 환경으로 들어가기"에 따라 chroot 환경으로 다시 들어갑니다. 계속하기 전에 이 문제를 해결하지 않으면 Expect가 필요한 테스트 스위트(예: Bash, Binutils, GCC, GDBM은 물론 Expect 자체의 테스트 스위트)가 치명적으로 실패하고 다른 미묘한 손상도 발생할 수 있습니다.
Expect 컴파일를 준비합니다.
./configure --prefix=/usr \
--with-tcl=/usr/lib \
--enable-shared \
--mandir=/usr/share/man \
--with-tclinclude=/usr/include
패키지를 빌드합니다.
make
결과를 테스트하려면
make test
패키지를 설치합니다.
make install
ln -svf expect5.45.4/libexpect5.45.4.so /usr/lib