흐르는 시간의 블로그...

C++11과 C++14를 사용하기 위해 GCC 5.4.0 버전을 인스톨 했었다.

현재 6.2버전까지 있는 것으로 보인다.


https://ftp.gnu.org/gnu/gcc/ - GCC Source


다시 하려니 기억이 나질 않는다. ㅡㅡ;


그래서 과정을 하나씩 정리해보려 한다.


1. 소스 다운로드

[root@ordweb install]# wget https://ftp.gnu.org/gnu/gcc/gcc-5.4.0/gcc-5.4.0.tar.gz


2. 압축 해제

[root@ordweb install]# tar xvzpf gcc-5.4.0.tar.gz


3. 선행 요구사항 다운로드

[root@ordweb install]# cd gcc-5.4.0/

[root@ordweb gcc-5.4.0]# ./contrib/download_prerequisites


4. 컴파일 - 약 한시간 이상 걸린다. ㅠ.ㅠ

[root@ordweb gcc-5.4.0]# ./configure --prefix=/usr/local/gcc5.4 --enable-checking=release --enable-languages=c,c++


... 에러 발생 ...

...32bit lib가 없어서 발생...


[root@ordweb gcc-5.4.0]# ./configure --prefix=/usr/local/gcc5.4 --enable-checking=release --disable-multilib --enable-languages=c,c++

[root@ordweb gcc-5.4.0]# make

[root@ordweb gcc-5.4.0]# make install





관련해서... 또 다른 삽질...

내가 작성할 application이 실행할따 기존 버전의 gcc library 참조. ㅠ.ㅠ

gcc5.4의 lib64를 먼저 참조하도록 LD_LIBRARY_PATH 변경


[ub1st@ordweb ~]$ vi ~/.bash_profile

...

LD_LIBRARY_PATH=/usr/local/gcc5.4/lib64/:/usr/local/lib:/usr/lib:$LD_LIBRARY_PATH:$ORACLE_HOME/lib

export LD_LIBRARY_PATH

...

[ub1st@ordweb ~]$ source ~/.bash_profile




POCO Library를 gcc 5.4.0으로 컴파일 하기

  •  결국 다시 4.8 버전으로 컴파일해서 올림. ㅠ.ㅠ(앞의 글에서 적었던 문제)

[root@ordweb poco-1.7.5]# cd build/config

[root@ordweb poco-1.7.5]# vi Linux


CROSS_COMPILE = /usr/local/gcc5.4/bin/ 

CC      = ${CROSS_COMPILE}gcc

CXX     = ${CROSS_COMPILE}g++

...
#STRIP   = ${CROSS_COMPILE}strip
STRIP   = strip



perl에 CPAN 설치하고 cpan 콘솔에서 Archive:Zip 설치하려고 삽질하다 실패하고...

걍 git에서 다운받아서 설치.. (아... 눈물난다. ㅠ.ㅠ)


[root@ordweb install]# git clone https://github.com/redhotpenguin/perl-Archive-Zip.git

[root@ordweb install]# cd perl-Archive-Zip/

[root@ordweb perl-Archive-Zip]# perl Makefile.PL

[root@ordweb perl-Archive-Zip]# make

[root@ordweb perl-Archive-Zip]# make test

[root@ordweb perl-Archive-Zip]# make install





관련해서... 오라클의 인코딩이 이상해... ㅠ.ㅠ

한글을 제대로 못 읽는다!


[ub1st@ordweb ~]$ vi ~/.bash_profile

...

NLS_LANG=KOREAN_KOREA.KO16MSWIN949

export NLS_LANG

...

[ub1st@ordweb ~]$ source ~/.bash_profile





마지막 삽질...

코딩중에 file을 열고/쓰고/닫기 위해 기존 C언어의 open/write/close 를 사용...

나름 좀 좋게 해보겟다고 C++의  ofstream 사용... 

그러나 ofstream에서 UTF8 Write는 또 다른 문제 야기...

다시 C언어의 함수로 돌아옴... ㅠ.ㅠ