Apache 1.3.37, configure에서 오류가 발생합니다.
글쓴이: 사랑천사 / 작성시간: 금, 2006/11/10 - 7:26오전
2.2.x를 쓰고 있는데, 오랜만에 1.3.x대의 Apache를 설치 해 보려고 소스를 받아 아래와 같이 해 보았습니다.
근대 역시 아래를 보시면 아시겠지만 문제가 생깁니다.
root@main:~/programs/srcs/apache_1.3.37# cat ../apache1ins.sh #!/bin/sh CPLAGS="-O3 -march=prescott -pipe" CXXFLAGS=$CFLAGS CPPFLAGS=$CFLAGS export CFLAGS CXXFLAGS CPPFLAGS #cd srclib/apr #./configure --prefix=/usr/local/apr --enable-ssl --enable-threads \ #--with-ssl && \ #make clean && \ #make all && \ #make install #cd ../apr-util #./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr \ #--enable-ssl --enable-threads \ #--with-ssl && \ #make clean && \ #make all && \ #make install #cd ../.. ./configure --prefix=/usr/LECL/apache \ --enable-module=all --enable-shared=max --enable-rule=SHARED_CORE root@main:~/programs/srcs/apache_1.3.37# ../apache1ins.sh Configuring for Apache, Version 1.3.37 + Warning: Your 'echo' command is slightly broken. + It interprets escape sequences per default. We already + tried 'echo -E' but had no real success. If errors occur + please set the SEO variable in 'configure' manually to + the required 'echo' options, i.e. those which force your + 'echo' to not interpret escape sequences per default. + using installation path layout: Apache (config.layout) Creating Makefile Creating Configuration.apaci in src Syntax error --- The configuration file is used only to define the list of included modules or to set Makefile in src options or Configure rules, and I don't see that at all: `$(SRCDIR)/apaci` yes default no no no yes no default no default default root@main:~/programs/srcs/apache_1.3.37# ./congigure --prefix=/usr/local/apache -su: ./congigure: No such file or directory root@main:~/programs/srcs/apache_1.3.37# ./configure --prefix=/usr/local/apache Configuring for Apache, Version 1.3.37 + Warning: Your 'echo' command is slightly broken. + It interprets escape sequences per default. We already + tried 'echo -E' but had no real success. If errors occur + please set the SEO variable in 'configure' manually to + the required 'echo' options, i.e. those which force your + 'echo' to not interpret escape sequences per default. + using installation path layout: Apache (config.layout) Creating Makefile Creating Configuration.apaci in src Syntax error --- The configuration file is used only to define the list of included modules or to set Makefile in src options or Configure rules, and I don't see that at all: `$(SRCDIR)/apaci` default default no no no yes no default no default default root@main:~/programs/srcs/apache_1.3.37#
이렇게 되는 군요. (오타 난 부분은 상관 없는 내용입니다. 으윽.)
중요한 것은 Apache 소스 내부에 문제가 잇는 거 같진 않고 이게 분석을 해 본 결과 sed나 뭐 이런거 수행 되는 과정에서 문제가 있는 거 같더군요. 결국 시스템 어딘가에 문제가 있는 거 같은데 정확한 원인을 알 수가 없네요. APACI를 이용해선 설치가 안 되는 건지 이러면... 이전엔 직접 들어가서 Configuratation.tmpl을 가져다가 복사하고 수정하고 해서 컴파일을 해서 썼었는데 그 때는 별 문제 없었거든요.
아! 1.3.35 버젼 정도를 가져다가 컴파일 해 보려고 했더니 소스가 없더군요 미러에.
아무튼 저게 왜 저런 오류를 내는지 ... 그리고 어덯게 해결 할 수 잇는지 좀 알려 주시면 합니다. apache-kr.org에도 가 봤으나 별 소득을 못 얻고 돌아 왔습니다.
추가.
OS는 Ubuntu 6.10입니다. 하드웨어 사양 까진 안 적어도 되겠죠 설마 으음...
Forums:
경고 메세지 자체의
경고 메세지 자체의 내용은 'echo' 커맨드가 configure 스크립트가 요구하는대로 동작하지 않고 있다...는 소리군요.
조금 더 정확하게는, "echo 커맨드에 문제가 있다. echo 커맨드가 기본적으로(디폴트로) 'escape sequence' 를 해석해 버린다."
라는 이야기네요.
(echo 커맨드는 -e 옵션을 주지 않으면 'escape sequence' 캐릭터를 해석하지 않고 그냥 출력합니다.)
해결을 위해서는 configure 스크립트에 SEO 변수에 'escape sequence' 를 해석하지 않고 그냥 출력하는 동작을 하는
echo 커맨드의 '옵션'을 셋팅해 달라....라는군요. (option...아마도 -e 같은 녀석들을 이야기하는 것일 겁니다.)
리눅스를 안 쓰기 시작한지 좀 돼서 정확한지는 모르겠지만,
echo 커맨드는 따로 실행파일이 있는게 아니라 bash 에 포함된 내장명령어로 기억하고 있습니다.
만약에 그런 경우라면, Ubuntu 6.10 에 포함된 bash 에 버그가 있는 것이거나 아니면 기본 옵션 셋팅이 기존에 비해 변한 것일수도 있습니다.
bash 메뉴얼등을 확인해 보시고,
echo 커맨드가 'escape sequence' 를 해석하지 않게 하는 옵션을 찾아서
경고메세지에 적혀있는데로 configure 스크립트 안에 SEO 변수를 셋팅해서 해결해야 할 듯 싶습니다.
음...
우선 답변 감사 드립니다. 근대 중요한 것은... 저 echo부분의 내용은 저도 이해를 합니다만, 저게 전체적인 문제를 일으키는 부분인가 하는 의문이 든다는 점이고, 그게 아니라면 echo문제를 해결 한다고 해서 특별히 수정 될 수 있는 저지가 없다는 점입니다. 마냥 '이전엔 안 그랬는데...' 하고 잇을 수도 없어서요 음.
추가.
자꾸 중요한 것들을 빼 먹고 적습니다. 죄송합니다. 제 글에서 문제가 되는 부분의 핵심은 Syntax error ... ... ... 이 부분 부터입니다. echo는 문제를 해결 할 방법을 추운히 찾을 수 있을 거 같습니다만... 그 뒤 부분이 핵심 문제와 관련 잇는지는 아직 분석 해 내지 못 했습니다.
----
Lee Yeosong(이여송 사도요한)
E-Mail: yeosong@gmail.com
MSN: ysnglee2000@hotmail.com
----
웃음... 행복... 평화... (진정한...) 희망... 사랑... 이 세상 모든것이 그렇다면 얼마나 좋을까...(꿈 속의 바램일 뿐인가...)
사람천사
echo 부분을 해결하고
echo 부분을 해결하고 나서도 Syntax Error 가 나는지부터 확인해야 할 듯 싶네요.
쉘스크립트들의 대부분은 동적으로 생성해내야 하는 변수 값들을 만들어낼때 echo 커맨드를 많이 사용합니다.
그렇기 때문에, echo 커맨드가 쉘스크립트 작성시에 생각했던 봐대로 동작하지 않는다면
동적으로 생성해낸 변수 값들에 문제가 생길 수 있으며,
이것이 원인이 되어 Syntax Error 를 만들어 낼 수 있습니다.
P.S.)시간여유가 좀 있다면 어디 짱박혀 있는 리눅스 서버 찾아서 configure 스크립트 돌려보고 답변을 드릴텐데,
그렇게 하지를 못하네요;;
네!
음... echo의 manpage를 봤습니다 그런 이유로. 하지만 이유를 알 수가 없군요. 전혀 답이 안 나옵니다.(-e가 자동으로 적용 되는 것도 아닌 듯 합니다. 쉘 상에서 echo를 사용 한다고 해도 별 문제가 생기는 것 같지 않습니다. 이스케이프로 사용 되는 역슬레쉬를 넣어도 정상적으로 동작을 하고 있습니다. 이것을 해석해서처리 하지 않는다는 거죠.) 하지만 configure 부분은 한번 더 분석 해 봐야 겠습니다. 아무튼 감사 드립니다. 여러가지로 해 봐도 안 된다 싶으면 다시 오겠습니다.
----
Lee Yeosong(이여송 사도요한)
E-Mail: yeosong@gmail.com
MSN: ysnglee2000@hotmail.com
----
웃음... 행복... 평화... (진정한...) 희망... 사랑... 이 세상 모든것이 그렇다면 얼마나 좋을까...(꿈 속의 바램일 뿐인가...)
사람천사
의외의 곳에서..
의외의 곳에서 답을 얻었습니다. configure의 쉘을 sh 에서 bash로 바꾸니 잘 동작 하는 군요. sh가 dash로 연결 되어 잇는데 이 dash란 녀석이 내부적으로 가진 echo는 상당히 이상한 것 같습니다. echo가 들어오는 인자를 제대로 처리하지 못 해서 생긴 문제였습니다. 아무튼 정말 감사합니다...
----
Lee Yeosong(이여송 사도요한)
E-Mail: yeosong@gmail.com
MSN: ysnglee2000@hotmail.com
----
웃음... 행복... 평화... (진정한...) 희망... 사랑... 이 세상 모든것이 그렇다면 얼마나 좋을까...(꿈 속의 바램일 뿐인가...)
사람천사
댓글 달기