FireBreath 란?
브라우저 플러그인을 쉽게 만들어 주는 멀티플랫폼 개발 프레임워크로
단 하나의 C++ 소스로 모든 브라우저를 지원해주는 플러그인을 만들어줍니다 ( Activex컨트롤 + NPAPI플러그인 )
또한 Windows, MAC, Linux 에서 지원합니다!
자세한 내용과 지원플랫폼은 아래 홈페이지에서 확인하시기 바랍니다
FireBreath Home http://www.firebreath.org/display/documentation/FireBreath+Home
Platform Support http://www.firebreath.org/display/documentation/Features
아래 내용은 FireBreath 홈페이지의 동영상 튜토리얼과 동일합니다
http://www.firebreath.org/display/documentation/Getting+Started
http://www.firebreath.org/display/documentation/Windows+Video+Tutorial
※ 자세한 설명은 생략하고 세팅 절차 위주로 작성하였습니다.
※ 아래부터 붉은색 글자는 command 창 명령이니 참고하시기 바랍니다.
* 글쓴이 컴퓨터 환경
- Windows XP
- Visual Studio 2010 ( 2005, 2008도 세팅 가능 )
개요
1. 사전준비
1.1 git 설치
1.2 python 설치
1.3 cmake 설치
1.4 python, cmake 명령어 PATH 등록
2. 프로젝트 생성
2.1 FireBreath 설치
2.2 최초 프로젝트 생성
3. 프로젝트 빌드 & 테스트
3.1 Visual Studio 프로젝트 실행
3.2 프로젝트 빌드
3.3 플러그인 등록
3.4 테스트
1. 사전 준비
1.1 git 설치
- http://code.google.com/p/msysgit/downloads/list접속
- Git-1.7.9-preview20120201.exe 다운로드 후 설치 ( 포터블을 사용은 비추합니다 이유는 아래 나옴 )
- 설치 중 Adjusting your PATH environment 선택 옵션이 뜨면 Run Git from the Windows Command Prompt 를 선택 ( PATH 등록 ) 나머지는 기본옵션으로 설치
1.2 python 설치
- http://www.python.org/getit/접속
- Python 2.7.2 Windows Installer 다운로드 후 설치
( FireBreath 에선 2.5 , 2.6 , 2.7 버전에 대한 테스트만 확인되었고 기타 버전에선 테스트 되지 않았지만 아마 동작할것이라 명시되어 있습니다.. 2.7로 설치하시는걸 추천합니다 )
1.3 cmake 설치
- http://www.cmake.org/cmake/resources/software.html 접속
- cmake-2.8.7-win32-x86.exe 다운로드 후 설치
1.4 python, cmake 명령어 PATH 등록
- command 창에서 명령어를 사용할 수 있도록 PATH를 지정합니다
- 내컴퓨터 - 등록정보 - 고급 - 환경변수 - 시스템변수 - Path에 기존 내용에 아래내용을 추가
;C:\Python27;C:\Program Files\CMake 2.8\bin;
2. 프로젝트 생성
2.1 FireBreath 설치
- FireBreath와 프로젝트가 위치할 폴더를 하나 생성 ( 여기서는 D:\code\sc )
- command 창을 뛰우고 생성한 폴더로 이동
- git을 이용하여 FireBreath 다운로드 & submodule 업데이트
D:\code\sc\> git clone git://github.com/firebreath/FireBreath firebreath
D:\code\sc\> cd firebreath
D:\code\sc\firebreath\> git submodule update --recursive --init
주의 - git 포터블 버전을 사용할 경우 명령어 옵션이 먹지 않는 경우가 있으니 설치버전 사용을 권장합니다
2.2 최초 프로젝트 생성
- python 을 이용하여 프로젝트를 생성합니다. 기본적인 플러그인 정보를 다음과 같이 입력합니다
( 각 항목에 대한 내용은 프로젝트 생성 후에도 수정가능합니다.. 이부분은 다음 포스팅에서 설명하겠습니다 )
D:\code\sc\firebreath> python fbgen.py
Plugin Name[]: Plugin Test
Plugin Identifier [Plugin Test]:
Plugin Prefx [PTE]:
Plugin MIME type [application/x-plugintest]:
Plugin Description []: Test Plugin
Plugin has no UI [false] : false
Company Name []: FireBreath
Company Identifier [FireBreath]:
Company Domain [firebreath.com]: firebreath.org
- 프로젝트 폴더 이동
D:\code\sc\firebreath> move projects ..
D:\code\sc\firebreath> cd ..
- 환경별 프로젝트 빌드
D:\code\sc> firebreath\prep2010.cmd projects build
현재 설치된 Visual Studio에 따라 prep2005.cmd , prep2008.cmd 등으로 변경해줍니다
( 진행되지 않는 경우 cmake 문제일 가능성이 큼.. command창에서 cmake 명령어가 실행되는지 확인해봅니다 )
3. 프로젝트 빌드 & 테스트
3.1 Visual Studio 프로젝트 실행
D:\code\sc> cd build
D:\code\sc\build> start FireBreath.sln
솔루션 탐색기에 아까 생성한 PluginTest 프로젝트가 있는지 확인합니다
기타 프로젝트들이 많이 보이는데 이것들은 FireBreath Core 프로젝트 들입니다
3.2 프로젝트 빌드
- 솔루션탐색기 - PluginTest 우클릭 - 빌드
3.3 플러그인 등록
- 생성된 dll 파일 등록
D:\code\sc\build> cd bin
D:\code\sc\build\bin> cd PluginTest
D:\code\sc\build\bin\PluginTest> cd Debug
D:\code\sc\build\bin\PluginTest\Debug> regsvr32 npPluginTest.dll
3.4 테스트
- 파이어폭스 실행후 주소창에 about:plugins 입력하여 등록된 플러그인 확인
- 테스트페이지 실행
D:\code\sc\build> cd projects\PluginTest
D:\code\sc\build\projects\PluginTest> cd gen
D:\code\sc\build\projects\PluginTest\gen> start .
실행된 윈도우 탐색기에서 FBControl.htm 을 실행한다
모든 브라우저에서 정상 동작 되는것을 확인 할 수 있습니다
( ie, firefox, chrome, safari, opera )
DLL 이 등록되지 않은 경우로 위 절차를 다시 한번 확인해봅니다
이상으로 윈도우 XP에서 FireBreath 세팅하기를 마치겠습니다
아직 모든 OS 브라우저를 확인해보진 않았지만 호환성이 꽤 좋은듯 합니다
- mac os 10.6 ( 모든브라우저 동작 , 브라우저종료현상없음 )
FireBreath 기본구조 및 기초API , 디버깅 방법등은 정리가 되는대로 포스팅하도록 하겠습니다