블로그 이미지
BJcomm
bjcomm

공지사항

최근에 받은 트랙백

글 보관함

calendar

            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31          
08-06 03:34

1. expat 라이브러리설치

shell>wget http://sourceforge.net/projects/expat/files/expat/2.0.1/expat-2.0.1.tar.gz/download
shell>tar xvfz expat-2.0.1.tar.gz
shell>cd expat-2.0.1
shell>./configure --prefix=/usr/local/expat && make && make install


2. python설치

shell>wget http://www.python.org/ftp/python/2.6.4/Python-2.6.4.tar.bz2
shell>tar xvfj Python-2.6.4.tar.bz2
shell>cd Python-2.6.4
shell>./configure && make && make install
shell>cd /usr/bin
shell>rm python
shell>ln -s /usr/local/bin/python2.6 python


3. apache설치

shell>wget http://mirror.khlug.org/apache/httpd/httpd-2.2.14.tar.bz2
shell>tar xvfj httpd-2.2.14.tar.bz2
shell>cd httpd-2.2.14
shell>./configure --enable-dav --enable-so --enable-maintainer-mode --prefix=/home/www --with-expat=/usr/local/expat && make && make install


4. mod_python설치

shell>wget http://apache.tt.co.kr/httpd/modpython/mod_python-3.3.1.tgz
shell>tar xvfz mod_python-3.3.1.tgz
shell>cd mod_python-3.3.1
shell>./configure --with-apxs=/home/www/bin/apxs --with-python=/usr/local/bin/python2.6 && make && make install

위와 같이 했을 때 다음과 같이 src/connobject.c 142라인에서 에러가 나는것을 확인할 수 있다.

connobject.c: In function `_conn_read':
connobject.c:142: error: request for member `next' in something not a structure or union
apxs:Error: Command failed with rc=65536
.
make[1]: *** [mod_python.so] 오류 1
make[1]: Leaving directory `/root/install/mod_python-3.3.1/src'
make: *** [do_dso] 오류 2

이때는 직접 src/connobject.c 를 vi에디터로 열어서 뒤에 있는 b를 bb로 바꾸면 된다.

shell>vi ./src/connobject.c
142 라인의 !(b == APR_BRIGADE_SENTINEL(b) || 에서 뒤에 b를 다음과 같이 bb로 고친후 저장한다.
!(b == APR_BRIGADE_SENTINEL(bb) ||
shell>./configure --with-apxs=/usr/local/apache/bin/apxs --with-python=/usr/local/bin/python2.6 && make && make install


5. setupTools설치

shell>wget http://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c11.tar.gz#md5=7df2a529a074f613b509fb44feefe74e
shell>tar xvfz setuptools-0.6c11.tar.gz
shell>cd setuptools-0.6c11
shell>python ./setup.py install


6. sqlite 설치

shell>wget http://www.sqlite.org/sqlite-amalgamation-3.6.20.tar.gz
shell>tar xvfz sqlite-amalgamation-3.6.20.tar.gz
shell>cd sqlite-3.6.20/
shell>./configure --prefix=/usr/local/sqlite3 && make && make install


7. subversion설치

shell>tar xvfj subversion-1.6.18.tar.gz
shell>cd subversion-1.6.18
shell>mkdir sqlite-amalgamation
shell>cp /usr/local/src/sqlite-3.6.20/sqlite3.c sqlite-amalgamation/
shell>./configure --with-apxs=/home/www/bin/apxs --with-apr=/home/www/bin/apr-1-config --with-apr-util=/usr/local/src/httpd-2.2.21/srclib/apr-util && make && make install

shell>make swig-py
shell>make install-swig-py
shell>echo /usr/local/lib/svn-python > /usr/local/lib/python2.6/site-packages/subversion.pth


8. subversion 레파지토리 생성

shell>cd /home
shell>mkdir trac
shell>cd trac
shell>mkdir repos
shell>cd repos
shell>svnadmin create Project1


9. svn접속 계정 생성

shell>cd /home/trac/repos
shell>/usr/local/apache/bin/htpasswd -c passwd username1


10. 아파치 svn설정

shell>vi /usr/local/apache/conf/httpd.conf

마지막 부분에 다음 내용 추가
<Location /svn/Project1>
DAV svn
SVNPath /home/trac/repos/Project1
AuthType Basic
AuthName "Project1's Repository"
AuthUserFile /home/trac/repos/passwd
Require valid-user
< /Location>


11. pysqlite설치

shell>wget http://pysqlite.googlecode.com/files/pysqlite-2.5.5.tar.gz
shell>tar xvfz pysqlite-2.5.5.tar.gz
shell>cd pysqlite-2.5.5
shell>python ./setup.py install


12. Genshi설치

shell>easy_install Genshi


13. Trac설치

shell>easy_install Trac


14. Trac레파지토리 생성

shell>cd /home/trac/
shell>mkdir projects
shell>cd projects
shell>trac-admin ./Project1 initenv

Project Name : 프로젝트 명 입력
Database connection string : sqlite선택(그냥엔터입력)
Repository type : svn(그냥엔터입력)
Path to repository : 아까 생성한 레파지토리주소입력(/home/trac/repos/Project1)

마지막에 Congratulations! 이라고 뜨면 정성적으로 레파지토리가 생성된 것임


15. 아파치 Trac설정

shell>vi /usr/local/apache/conf/httpd.conf

아래 항목 추가
LoadModule python_module modules/mod_python.so
< Location /trac>
SetHandler mod_python
PythonInterpreter main_interpreter
PythonHandler trac.web.modpython_frontend
PythonOption TracEnvParentDir /home/trac/projects
PythonOption TracUriRoot /trac
PythonOption PYTHON_EGG_CACHE /tmp
< /Location>
< LocationMatch "/trac/[^/]+/login">
AuthType Basic
AuthName "Type your ID, Password"
AuthUserFile /home/trac/repos/passwd
Require valid-user
< /LocationMatch>


16. trac디렉토리 권한 설정

기본적으로 아파치 웹서버가 daemon.daemon으로 뜨기 때문에 다음과 같이 바꿔준다.
shell>cd /home
shell>chown -R daemon.daemon trac


17. 아파치 데몬 실행

shell>/usr/local/apache/bin/apachectl start


18. python원본파일 복원

shell>cd /usr/bin
shell>mv python python2.6
shell>ln -s ./python2.3 python


19. 브라우져 확인

http://localhost/svn/Project1
http://localhost/trac/Project1

위의 주소에서 페이지가 정상적으로 뜬다면 설치가 완료된 것임

 

accountmanagerplugin
iniadminplugin
timingandestimationplugin
추가로 설치 필요.

Comment

  1. wget http://python.org/ftp/python/2.7.6/Python-2.7.6.tar.xz
    tar xf Python-2.7.6.tar.xz
    cd Python-2.7.6
    ./configure --prefix=/usr/local --enable-unicode=ucs4 --enable-shared LDFLAGS="-Wl,-rpath /usr/local/lib"
    make && make altinstall
    cd /usr/bin
    rm python
    ln -s /usr/local/bin/python2.7 python
    cp /usr/local/bin/python2.7 /usr/local/bin/python