ViewCVS 에서 python 오류 : enscript 및 SVN 브라우징 시
글쓴이: extrealm / 작성시간: 일, 2005/03/13 - 10:02오후
안녕하세요. CVS 서버 운영하면서 ViewCVS를 쓰고 있는데,
RedHat 7.x 에서 Apache2 + PHP4 로 변경하면서 python 오류가 발생합니다.
업글이후 설정문제로 몇가지 동작이 안되었는데, (zboard라든지 wiki라든지)문제가 있었지만, httpd.conf 조정후 정상화 되었고요.
다만, ViewCVS에서는 syntax hilight 보려면 아래와 같은 오류가 납니다.(txt, inc 등은 문법강조 없이 잘보입니다만)
Failure during use of an external program: enscript --color -W html -Ecpp -o - - Python Exception Occurred Traceback (innermost last): File "/usr/local/viewcvs-0.9.2/lib/viewcvs.py", line 2625, in run_cgi main() File "/usr/local/viewcvs-0.9.2/lib/viewcvs.py", line 2589, in main view_checkout(request) File "/usr/local/viewcvs-0.9.2/lib/viewcvs.py", line 1914, in view_checkout markup_stream(request, fp, revision, request.mime_type) File "/usr/local/viewcvs-0.9.2/lib/viewcvs.py", line 662, in markup_stream markup_stream_enscript(lang, fp) File "/usr/local/viewcvs-0.9.2/lib/viewcvs.py", line 493, in markup_stream_enscript enscript.write(chunk) IOError: [Errno 32] Broken pipe
ViewCVS에선는 viewcvs.py 가 아니라 viewcvs.cgi 쓰고있습니다
Forums:
잘 알지 못하믄서도 이것저것 붙여보며 서버를 비대하게 키워오고 있었습니다
잘 알지 못하믄서도 이것저것 붙여보며 서버를 비대하게 키워오고 있었습니다.
행여 도움이 될까, 변경내력을 적어보면 아래와 같습니다.
1. 와우리눅스7.2 ParanR2 (레드햇 7.2로 알고있음)에서 CVS를 굴리고 있었읍죠.
- Apache-1.3.2, MySQL, PHP3 이던가. 잘돌아갔습니다.
- CVS 웹 브라우징을 위해 ViewCVS 0.9.2 에 C문법 컬러링을 위해 enscript 를 엮어서 소스를 잘 보고 있었읍죠. (이떄가 python1.5 였는지 잘 모르겠습니다)
2. 그런데, SF2.6이나 GForge 에서는 PostgresSQL 이 필요하다해서, (기존거엔 pgsql 컴파일이 없었음) 아파치2 컴파일을 다시했습니다.
- apache-2.0.45 에 php-4.3.9, mysql-4.0.12, pqgsql-7.3.2 로 업글했습니다.
3. 몇가지 문제가 있었지만, 정상화 되었고요. httpd.conf 변화된것 몇가지 조정해줘서 정상으로 되었습니다만,
- ViewCVS에서 C 문법 컬러링으로 보려면 오류가 나더라고요. (txt, inc 등은 문법강조 없이 잘보입니다만)
4. php4 빌드시에 --with-python 같은것 안해줘서 그런가 싶었지만, log 보기가 목적이었기에 상관없었습니다.
- 이때 원인분석/개선 했어야 하는데 CVS checkout 이나, annotated 로 소스 볼 수 있었거등요.
- /usr/bin/ 에 python1.5 폴더와 python2.2 폴더가 있더군요.
- python2.2로 업데이트 하였는지는 잘 기억이 안납니다.
5. 이번에 SubVersion을 설치했습니다. 누락하지 않고 컴파일할 엄두가 안나서 RedHat 7.x RPM이라고 나와있는 넘들을 깔았습니다.
- 설치RPM은 대략 apache-2.0.48, apache-libapr-2.0.48, subversion-1.13, subversion-python-1.1.3,
- 성공이었고, repository 설정후 http://xxx/svn 으로 보면 코드들이 보입니다. (성공!)
6. 그러나, CVS/SVN 브라우징이 ViewCVS-0.9.2 에선 안된다하여 ViewCVS-1.0-dev로 교체하였습니다.
- CVS 브라우징 잘 되지만, SVN 브라우징은 안되는군요.
- 여전히 enscript 오류와 유사한, 놈들이 뜹니다.
6. apache에 mod_python 누락되서 그런가 싶어서, 추가로 설치후 so 추가해주었습니다만, 안되는군요.
- 과연 php4 에서 python 설정이 안되서 그런것인지????
고수님들의 철처한 해부와 수정점을 알려주시믄 감사하겠습니다. -_-;
/E/X/T//R/E/A/L/M/ - 그대 품 안의 또하나의 세상
메시지 문의드린 oedalpha 님께서 조언해주신 글입니다.[quot
메시지 문의드린 oedalpha 님께서 조언해주신 글입니다.
/E/X/T//R/E/A/L/M/ - 그대 품 안의 또하나의 세상
[quote="oedalpha"]마지막으로 아래 에러 메시지는 pytho
의견 감사합니다!
우선 viewcvs.cgi 를 사용치 않고, viewcvs.py 스크립트를 직접 호출하는 것으로 문제를 해결하였습니다.
그러고 보니, 문제는 CGI에서 python 호출과 관계되는 것 같네요.
python 스크립트 적용시는 KLDP wiki 의 글 Subversion With ViewCVS For Windows 를 참조하였습니다.
여전히 CGI 부분 원인/해결이 없는 상태입니다. 의견 있으신 분들 댓글 계속 달아주세요.
/E/X/T//R/E/A/L/M/ - 그대 품 안의 또하나의 세상
해결되지 않았던 문제를 알아냈기에 적어봅니다.
viewcvs + enscript관련하여 문제가 있어서 구글신께 검색을 부탁 드렸더니 이 페이지가 나오더군요.. 글 쓰신분이 아직 해결이 안되신것인지 해결방법에 대한 내용이 없길래 일단 답글을 달아봅니다. (이래보니 제가 고대 유물 발굴단이 된것 같네요^^ 어쨋든 해결방법을 적어 놓아야 검색하신 다른분들의 수고를 덜을 수 있을것 같기에 그냥 올립니다.)
결론은 enscript의 옵션때문이었습니다. viewcvs.py의 481~482줄쯤의 -W옵션을 -w로 변경을 하니 잘되네요.. 이유에 대한 내용은 아래의 URL을 참고하시길 바랍니다.
URL: http://www.lyra.org/pipermail/viewcvs-dev/2005-July/002028.html
-----[꼬릿말 절취선 시작]-----
삽질전에 먼저 구글신께 기도하자.
-----[꼬릿말 절취선 끝]-----
-----[꼬릿말 절취선 시작]-----
삽질전에 먼저 구글신께 기도하자.
-----[꼬릿말 절취선 끝]-----
댓글 달기