U E D R S I H C RSS
ID
Password
Join
상상력이 없는 인간이 아니라 상상력을 억압하는 인간을 못 참는다. 우리나라에서는 상상력을 기발한 재주 정도로 간주하려는 경향이 있다. 하지만 상상력은 정치의 문제다. 상상력이 작동하려면 자기검열이 작동하지 말아야 한다. 내면화된 기준들을 제거하지 않으면 상상력은 커가지 않는다. 결국 상상력은 기존 체제를 승인하느냐, 마느냐의 문제다. --김영하 from [http]씨네21 인터뷰

 * 혹시나 makefile 문법 모르시는 분 시중에 책도 많고 [http]http://kldp.org 가보시면 관련 글 많습니다.
  • STLFilt의 구조가 필터 소스는 perl로 되어있고 모든 g++의 에러 출력을 받아 필터링하는 구조더군요. cygwin과 같은 환경에서는 그냥 이렇게 쓰는게 더 깔끔한 것 같습니다.

사용기 #

  1. 우선 [http]http://www.bdsoft.com/tools/stlfilt.html에서 [http]gstlfilt.zip을 다운로드 받아서 gSTLFilt.pl화일만 적당한 곳에 복사합니다. (예를 들면 /usr/local/bin)
  2. 작업용 Makefile 만들 때 보통 GPP나 GCC를 정의하게 됩니다. 다음과 같이 적게 되죠. GPP부분과 GPP_TAIL이라는 매크로 변수를 정의해놓습니다. 특히 GPP_TAIL은 복사해놓은 디렉토리에 따라 잘 고쳐서 설정합니다.
    GPP=g++ -mno-cygwin
    GCC=gcc -mno-cygwin -fmessage-length=0
    
    GPP_TAIL= 2>&1 | perl /usr/local/bin/gSTLFilt.pl
    
    INC_DIR=-I/usr/local/include -I../include 
    LIB_DIR=-L/usr/local/lib -L../lib 
    
    CFLAGS= $(INC_DIR) -Wall -ftemplate-depth-50 -D_MT
    
  3. 자, Makefile내에서 컴파일할때마다 써먹습니다. 다음과 같이 적어주기만 하면 됩니다.
    .cpp.o :
    	$(GPP) -c -o $@ $(CFLAGS) $< $(GPP_TAIL)
    .c.o :
    	$(GCC) -c -o $@ $(CFLAGS) $<
    
  4. 즐거운 STL 프로그래밍이 되시길!

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2010-10-28 12:42:52
Processing time 0.5465 sec