질문&답변
클라우드/리눅스에 관한 질문과 답변을 주고 받는 곳입니다.
리눅스 분류

idled 컴파일에서 에러

작성자 정보

  • 히무라 작성
  • 작성일

컨텐츠 정보

본문

idled 컴파일에서 자꾸에러가 납니다

# Linux
# Note:  NOT all version of Linux have yyrestart().  Remove the
#        -DHAVE_YYRESTART if you have problems.
# You should do a 'make clean' before 'make', so that parse.c
# and scan.c will be created on your system.
#DEFS += -DSYSV -DUTMPPID -DUTMPHOST -DHAVE_SETSID -DHAVE_YYRESTART
DEFS += -DSYSV -DUTMPPID -DUTMPHOST -DHAVE_SETSID
SPECLIBS =
INSTTYPE = install1
#
DEST    = /usr/local/bin
CFDEST  = /usr/local/lib
MDEST   = /usr/local/man
LOGDEST = /var/log
#
OWNER   = root
CFOWNER = root
MOWNER  = root
#
GROUP   = root
CFGROUP = root
#
MODE    = 750
CFMODE  = 664
MMODE   = 644

[root@root idled-1.16]# make
gcc -DSYSV -DHAVE_PROC_FS -DUTMPPID -DHAVE_SETSID -DHAVE_UTMPX -DUTMPHOST -DRUDEKILL -DSYSV -DUTMPPID -DUTMPHOST -DHAVE_SETSID  -DCONFIG="/usr/local/lib/idled.cf" -DLOGFILE="/var/log/idled.log"    -c -o insque.o insque.c
yacc -d parse.y
mv y.tab.c parse.c
gcc -DSYSV -DHAVE_PROC_FS -DUTMPPID -DHAVE_SETSID -DHAVE_UTMPX -DUTMPHOST -DRUDEKILL -DSYSV -DUTMPPID -DUTMPHOST -DHAVE_SETSID  -DCONFIG="/usr/local/lib/idled.cf" -DLOGFILE="/var/log/idled.log"    -c -o list.o list.c
gcc -DSYSV -DHAVE_PROC_FS -DUTMPPID -DHAVE_SETSID -DHAVE_UTMPX -DUTMPHOST -DRUDEKILL -DSYSV -DUTMPPID -DUTMPHOST -DHAVE_SETSID  -DCONFIG="/usr/local/lib/idled.cf" -DLOGFILE="/var/log/idled.log"    -c -o parse.o parse.c
lex scan.l
mv lex.yy.c scan.c
gcc -DSYSV -DHAVE_PROC_FS -DUTMPPID -DHAVE_SETSID -DHAVE_UTMPX -DUTMPHOST -DRUDEKILL -DSYSV -DUTMPPID -DUTMPHOST -DHAVE_SETSID  -DCONFIG="/usr/local/lib/idled.cf" -DLOGFILE="/var/log/idled.log"    -c -o scan.o scan.c
gcc -DSYSV -DHAVE_PROC_FS -DUTMPPID -DHAVE_SETSID -DHAVE_UTMPX -DUTMPHOST -DRUDEKILL -DSYSV -DUTMPPID -DUTMPHOST -DHAVE_SETSID  -DCONFIG="/usr/local/lib/idled.cf" -DLOGFILE="/var/log/idled.log"    -c -o idled.o idled.c
gcc -DSYSV -DHAVE_PROC_FS -DUTMPPID -DHAVE_SETSID -DHAVE_UTMPX -DUTMPHOST -DRUDEKILL -DSYSV -DUTMPPID -DUTMPHOST -DHAVE_SETSID  -DCONFIG="/usr/local/lib/idled.cf" -DLOGFILE="/var/log/idled.log"    -c -o warn.o warn.c
gcc -DSYSV -DHAVE_PROC_FS -DUTMPPID -DHAVE_SETSID -DHAVE_UTMPX -DUTMPHOST -DRUDEKILL -DSYSV -DUTMPPID -DUTMPHOST -DHAVE_SETSID  -DCONFIG="/usr/local/lib/idled.cf" -DLOGFILE="/var/log/idled.log"    -c -o xlock_check.o xlock_check.c
xlock_check.c: In function `xlock_check':
xlock_check.c:98: warning: return makes integer from pointer without a cast
xlock_check.c:110: error: `PIOCPSINFO' undeclared (first use in this function)
xlock_check.c:110: error: (Each undeclared identifier is reported only once
xlock_check.c:110: error: for each function it appears in.)
xlock_check.c:114: error: structure has no member named `pr_ttydev'
xlock_check.c:114: error: `NODEV' undeclared (first use in this function)
xlock_check.c:124: error: structure has no member named `pr_start'
make: *** [xlock_check.o] 오류 1

이유를 모르겠습니다

그럼 답글 기다리겠습니다

안녕히계세요

 

관련자료

댓글 1

주진은님의 댓글

  • 주진은
  • 작성일
소스에 문제가 있군요!
해결방법은 다음과 같습니다.

1. byacc가 설치되어는지 확인합니다.
  (확인 방법 : rpm -qa | grep byacc)

  설치되어 있지 않으면 아래주소의 파일을 다운로드하여 설치하십시오.
  http://ftp.superuser.co.kr/pub/fedora/core4/i386/RPMS/byacc-1.9-29.i386.rpm
  설치방법 : rpm -Uhv byacc-1.9-29.i386.rpm

2. Makefile 수정
  교재에 나와있는대로 수정합니다.

3. make clean 실행

4. parse.y 수정
  #ifndef HAVE_YYRESTART
  void yysrestart(handle)
    FILE *handle;
  {
          extern int  linenum;

          linenum = 1;
  }
  #endif

라고 되어있는 부분을 주석처리하거나 또는 아래와 같이 삭제하십시오.
  #ifndef HAVE_YYRESTART
  #endif

5. 다음 명려어를 순서대로 입력하십시오.

  # mkdir /usr/local/man
  # ln -s /usr/share/man/man5 /usr/local/man/man5
  # make
  # make install
  # cp /usr/local/lib/idled.cf.template /usr/local/lib/idled.cf

6. 다음은 교재에 나와있는 순으로 설정하시면 됩니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,043 명
  • 현재 강좌수 :  35,853 개
  • 현재 접속자 :  99 명