마법같이 싸고, 마법같이 안될거 같은게 다 되는 우리의 친구 라즈베리 파이 3 에 과연 FLTK 가 올라 갈까 ? 라는 의문이 갑자기 들어 직접 해 보았습니다.
특징은 cross compiler 를 쓴 게 아니라, 그냥 RPI3 에서 소스 받아서 빌드 했습니다. 무척이나 느리지만 Debian package 의 위대함은 apt-get 으로 모든걸 다 할 수 있도록 해 놨다는 정도 일까요?
준비물:
- g++ ( RPI3 터미널에서 sudo apt-get install g++ 로 설치 )
- automake
- FLTK-1.3.4-2-ts 소스코드 ( sudo apt-get install git 으로 git 설치 후 clone 하던가, zip 을 내려 받아서 사용 가능)
참고: https://github.com/rageworx/fltk-1.3.4-2-ts/wiki/How-to-configure-fltk-1.3.4-2-ts-in-debian-linux-%3F
과정:
먼저 제가 clone 해서 수정해서 쓰는 FLTK 를 내려 받아 압축을 푼 다음, configure 를 --with-abiversion=10304 를 붙여서 해 줍니다. ABI version 을 지정 안하면 자동으로 1.3.3 으로 설정 하기 때문인데, 이걸 안하면 제가 추가로 구현해 놓은 것들이 배제 됨은 물론 flat scheme 사용이 안됩니다.
또한 apt-get 으로 다음 요소들을 먼저 받습니다.
sudo apt-get install libxft-dev libfontconfig1-dev libxinerama-dev
그리고 make ! ( 이때 automake 가 필요 합니다. 왜 찾는지 모르겠지만, 미리 apt-get 으로 설치 해 두면 편 합니다 )
엄청 오래동안 빌드가 완료 될 때 까지 기다리다 보면 언젠가 끝이 옵니다. 별 다른 오류 없이 빌드 잘 하는거 보면 RPI3 가 진짜 느려도 안되는게 없긴 합니다.
test demo 가 구동 되려면 일단 startx 로 X11 을 돌려야 하므로, 돌려 줍니다. (기본으로 X11 이 안뜨도록 설정 되어 있는 상태)
결과
ABI version 1.3.4 가 설정 되서 제대로 빌드 되었으면 FLTK test demo 에서 flat scheme 적용을 하면 바로 바뀝니다.
그리고 unit test.
VGA 해상도에서 별 반 문제 없이 구동이 가능 합니다. 720P 패널로 변경 후 다시 나중에 구동 해 볼 수 있도록 하겠습니다. RPI3 에 c++ 로 개발을 on board 로 하는게 어렵지 않다는걸 지금 알았습니다. 하지만 OpenGL 은 다음에 붙여 보도록 하겠습니다.