Trac 설정 Linux 2009.02.26 11:20
admin 권한 주기

trac-admin projectPath permission add punbear TRAC_ADMIN

Trac Explorer plugin 설치(http://tracexplorer.devjavu.com/)

TracXMLRPC + HTTPAuth Plugin 설치

cd TracXMLRPC...
sudo python setup.py install
sudo easy_install TracXMLRPC.......egg

cd TracHTTPAuth...
sudo python setup.py install
sudo easy_install TracHTTPAuth.......egg

===== 설치 끝 =====

trac.ini 파일에 추가
[components]
tracrpc.* = enabled

[httpauth]
paths = /xmlrpc, /login/xmlrpc

다음과 같이 trac 계정에 XML_RPC권한을 추가해줌

trac-admin projectPath permission add punbear XML_RPC


Flex porting Linux 2009.02.09 09:44

Flex porting

 

아래 사이트가서 source를 다운받고 적당한 디렉토리에 푼다..

ftp://ftp.gnu.org/gnu/non-gnu/flex/flex-2.5.4a.tar.gz

이 과정이 끝나면 flex-2.5.4 란 디렉토리가 생긴다.

 

flex-2.5.4 디렉토리로 이동해서 아래와 같이 환경설정을 한다

[punbear@localhost flex-2.5.4]exprort CC=powerpc-405-linux-gnu-gcc AR=powerpc-405-linux-gnu-ar RANLIB=powerpc-405-linux-gnu-ranlib

[punbear@localhost flex-2.5.4]

./configure powerpc-linux --prefix=/home/funbear/powerpc

[punbear@localhost flex-2.5.4]make ALL

[punbear@localhost flex-2.5.4]make install

Termcap porting Linux 2009.02.09 09:43

Termcap porting

 

아래 사이트가서 source를 다운받고 적당한 디렉토리에 푼다..

http://www-ftp.lip6.fr/pub/linux/GCC/termcap-2.0.8.tar.gz

이 과정이 끝나면 termcap-2.0.8 란 디렉토리가 생긴다.

Termcap-2.0.8 디렉토리로 이동해서 Makefile을 아래와 같이 수정한다.(10~13,  line)

 

 10 CC=powerpc-405-linux-gnu-gcc(cross(ppc))

11 CFLAGS=-O -I.

 12

 13 AR=powerpc-405-linux-gnu-ar(cross(ppc))

 28 prefix=/home/funbear/powerpc(toolchain 설치된 경로)

 

수정 후 tparam.c 28 line을 아래와 같이 주석처리 한다.

//#define bcopy(s, d, n) memcpy ((d), (s), (n))

 

그리고 termcap.texi 2615 line을 아래와 같이 수정한다.

Before : but in that regard it is obsolete (@xref{Cursor Motion}).

After : but in that regard it is obsolete @xref{Cursor Motion}.

 

[punbear@localhost termcap-2.0.8]make

[punbear@localhost termcap-2.0.8]make install

 

toolchain 디렉토리의 lib 로가서 아래 3개파일이 생성되었는지 확인하자

libtermcap.so  libtermcap.a  libtermcap.so.2.0.8

TinyX(XFree86 4.2.0) porting (powerpc cross compile)

 

 

1.  TinyX를 설치하기전에 powerpc용 툴체인이 설치 되어 있어야 한다.

2.  termcap 라이브러리가 powerpc용으로 porting 되어 있어야 한다.

3.  flex 라이브러리가 powerpc용으로 porting 되어 있어야 한다.

 

- 위의 3개 항목이 다 설치되어 있어야한다만약에 설치가 되어있지 않았다면..

  마지막 장을 참조바람..

 

 

아래 사이트 가서 XFree86 4.2.0 파일(3개 파일)을 다운 받는다..

X420src-1.tgz(source)

X420src-2.tgz(font 관련)

X420src-3.tgz(doc 관련)

http://www.xfree86.org/

 

아래 사이트 가서 버그 패치파일(4개 파일)을 다운 받는다..

4.2.0-libGLU-bad-extern.patch

4.2.0-xlib-i18n-module.patch

4.2.0-xlib-security.patch

4.2.0-zlib-security.patch

http://netmirror.org/mirror/xfree86.org/4.2.0/fixes/

 

X420src-1.tgz 패키지파일을 풀고 patch 한다.

[punbear@localhost ~]tar zxvf X420src-1.tgz

[punbear@localhost ~]cd  xc

[punbear@localhost xc]cat ../4.2.0-libGLU-bad-extern.patch | p1

나머지파일 3개도 이와 같이 patch 한다.


Patch가 끝난후 xc/config/cf 디렉토리에 host.def 파일을 아래와 같이 생성한다.

 - host.def

 

#define KDriveXServer              YES

#define KdriveServerExtraDefines   -DMAXSCREENS=2

#define TinyXServer                YES

#define CrossCompiling             YES

#define TouchScreen                NO

#undef BuildRandR

#define BuildRandR                 YES

#define BuildXInputLib             YES

#define ProjectRoot                /usr/X11R6

#define Freetype2Dir               $(TOP)/extras/freetype2

#define Freetype2LibDir            $(TOP)/exports/lib

#define BuildXTrueType             YES

#define BuildScreenSaverExt        YES

#define BuildScreenSaverLibrary    YES

#define SharedLibXss               YES

#define ServerXdmcpDefines

#define XfbdevServer               YES

 

cross.def 파일은 생성되어 있는데..cross compiler 환경에 맞게끔 수정해주어야 한다.

 

- cross.def

 

#undef i386Architecture

#define PpcArchitecture

 

#undef OptimizedCDebugFlags

#define OptimizedCDebugFlags    -O2

#define ServerCDebugFlags       -O2

#undef StandardDefines

#define StandardDefines         -Dlinux -D__ppc__ -D_POSIX_SOURCE \

                                -D_BSD_SOURCE -D_GNU_SOURCE -DX_LOCALE

#undef CcCmd

#define StdIncDir /home/funbear/powerpc/include

#define PreIncDir

#undef PostIncDir

#define PostIncDir /home/funbear/powerpc/lib/gcc-lib/powerpc-405-linux-gnu/3.3.2/include

#define CcCmd /home/funbear/powerpc/bin/powerpc-405-linux-gnu-gcc

#undef CplusplusCmd

#define HasCplusplus YES

#define CplusplusCmd /home/funbear/powerpc/bin/powerpc-405-linux-gnu-g++

#define DoRanlibCmd YES

#define RanlibCmd /home/funbear/powerpc/bin/powerpc-405-linux-gnu-ranlib

 

#undef ExtraLoadFlags

#define ExtraLoadFlags

#define FbNoPixelAddrCode

#undef TermcapLibrary

#define TermcapLibrary -ltermcap

 

#undef LdPostLib

#define LdPostLib       -L/home/funbear/powerpc/lib

 

#undef ExtensionOSDefines

#define ExtensionOSDefines

 

#define ServerXdmcpDefines      /**/

 

#include <cross.rules>

 

cross.def 파일 수정후 /xc/programs/xdm/Makefile vi열어서 아래와 같이 수정한다.

 

418 line XONLYLIB =  -lX11 이부분을 XONLYLIB =  -lX11 lcrypt 로 수정한다.

- 이부분을 수정하지 않고서 컴파일 하였을 때.. crypt 라이브러리 링크가 제대로

 되지가 않아서 오류가 나게 된다..

 

 

Makefile 파일 수정후 xc 디렉토리로 이동하여 make 한다.

[punbear@localhost xc]make World

host 사양에 따라서 10~15분정도 소요..

echo Full build of Release 6.6 of the X Window System complete.

위의 message가 나왔다면 make가 성공적으로 컴파일 된것이다..

 

[punbear@localhost xc]make DESTDIR=$PWD/../ppc install

X가 설치된 디렉토리는 ../ppc 에 생성된다..

 

현재 설치된 디렉토리에서 ../ppc 내용을 tar로 묶고 nfs 디렉토리로 옮긴다.

[punbear@localhost ~]tar cvf ppcX.tar ppc

 

이제 타겟보드를 부팅하고 tmp 디렉토리로 이동해서 묶음을 푼다..

#cd /tmp

#tar xvf /(nfs디렉토리)/ppcX.tar

 

모두 풀렸으면 /ppc/usr/X11R6 /usr 로 옮긴다.

#mv ./ppc/usr/X11R6 /usr

다 옮겼으면 /ppc 에 나머지들은 다 지운다..

 

그리고나서 bin 디렉토리 PATH 설정 및 LD_LIBRARY_PATH export 시킨다.

#export PATH=$PATH:/usr/X11R6/bin

#export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/X11R6/lib

 

설정은 다 마무리 되었으며X 서버를 뛰워서 간단한 test 프로그램들을 뛰어본다.

#Xfbdev &

#x11perf rect100

제대로 실행이 된다면설치가 완료 된것이다^^

$ sudo apt-get install subversion
$ sudo mkdir /home/svn
$ sudo svnadmin create 프로젝트명
$ cd 프로젝트명
$ sudo vi conf/svnserve.conf ( 파일을 열어서 아래 내용의 주석을 제거 한다 )
  auth-access = write
  password-db = passwd
$ sudo vi conf/passwd (위에서 설정한 password db를 수정한다 )
  [users]
  ID = PASSWORD
  ID = PASSWORD
  ...
$ sudo svnserve -d -r /home/svn/프로젝트명

$ svn mkdir svn://localhost/trunk
$ svn mkdir svn://localhost/branches
$ svn mkdir svn://localhost/tags


chmod -R g+w /home/svn/...

===== 여기까지 서버 설정 =====

$ svn co svn://xxx.xxx.xxx.xxx/trunk sample ( checkout )
$ vi ~/.bash_profile
  export SVN_EDITOR=/usr/bin/vim    (이전에 vim이 설치되어 있어야함)


LOAD
 - svnadmin create /svn/path
 - svnadmin load test < test.dump

load시 아래와 같은 오류가 발생된다면.
svnadmin: File not found: transaction '148-1', path 'xxx/xxx'
다른 repository로 부터 import되어 상위 경로를 찾지 못하여 발생되는것임.

dump파일을 열어서 찾지못하는 Directory를 추가시켜준다.

Node-path: Project
Node-kind: dir
Node-action: add

 
ffmpeg usage Linux 2009.01.28 17:51
ffmpeg 명령은 터미널 프로그램 상에서 아래와 같은 명령으로 사용할 수 있다.
- avi 파일을 플래쉬 파일 포맷인 flv로 변환할때 사용하는 명령어
# ffmpeg -i filename.avi -ar 22050 -ab 32 -f flv -s 320x240 filename.flv
- 변환된 flv 파일에서 원하는 순간의 스크린샷 이미지 추출
(아래 예는 3초 경과 시점의 스크린샷 추출)
# ffmpeg -i filename.flv -f image2 -t 0.001 -ss 3 filename.jpg

[옵션 설명]
-i = Input file name
-ar = Audio sampling rate in Hz (audio sampling frequency. default = 44100 Hz)
-ab = Audio bitrate in kbit/s (default = 64k)
-an = Disable audio recording.
-f = format (Force format)
-s = Frame size (가로x세로)
-t = 레코딩 시간 (hh:mm:ss[.xxx])
-ss = 이미지 캡쳐 시간 (초)
-fs = 파일 사이즈 제한
-vframes = 레코딩하는 비디오 프레임의 수
-r = Frame Rate (Hz, Default=25)
Svn 설치 하기 Linux 2008.12.07 13:02

 Subversion 설치

1. Subversion 설치
 -  sudo apt-get install subversion libapache2-svn

2. Subversion 저장소 생성
 - svnadmin create /svn/path (svn을 저장할 저장소 경로)

3. Subversion 실행
 - svnserver -d -r /svnpath   : svn 데몬 실행

4. 백업한 파일 load 하기
 - svnadmin create /svn/path
 - svnadmin load test > test.dump

 

%!xxd


1. 가상 메모리 파일 생성

dd if=/dev/zero of="/mnt/hdd0/swap_128" bs=1024 count=131072 (128MB)


2. swap 파일 생성

mkswap /mnt/hdd0/swap_128 131072

3. swap on

swapon /mnt/hdd0/swap_128

4. swap off

swapoff /mnt/hdd0/swap_128



5. 부팅시 자동으로 스왑 파일을 활성화

/etc/rc.d/rc.local 파일끝에 swapon /mnt/hdd0/swap_128 추가

SSMTP 사용법 Linux 2008.10.24 10:56



ssmtp.conf 파일 내용

root=postmaster
mailhub=mail.applition.com                 <=SMTP 서버
AuthUser=funbear                            <= 계정
AuthPass=dlwwlakfwk                      <= 패스워드
hostname=DVR
FromLineOverride=YES