본문 바로가기

C++

윈도우 FireBreath 세팅(설치)하기



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 

                

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 을 실행한다

Plugin loaded 메시지가 뜨면 플러그인 실행 성공 !
모든 브라우저에서 정상 동작 되는것을 확인 할 수 있습니다
( ie, firefox, chrome, safari, opera )

           
Plugin is not working 메시지가 뜬 경우 플러그인 실행 실패 ! -_-
DLL 이 등록되지 않은 경우로 위 절차를 다시 한번 확인해봅니다







이상으로 윈도우 XP에서 FireBreath 세팅하기를 마치겠습니다

아직 모든 OS 브라우저를 확인해보진 않았지만 호환성이 꽤 좋은듯 합니다
현재까지 아래 OS에서 빌드시 정상 동작 하는것을 확인하였습니다  ( mac은 다른분이 테스트 해보셨습니다 ) 
- windows xp 32bit ( 모든 브라우저 동작 ,  브라우저종료현상없음  )
- mac os 10.6 ( 모든브라우저 동작 ,  브라우저종료현상없음   )

FireBreath 기본구조 및 기초API ,  디버깅 방법등은 정리가 되는대로 포스팅하도록 하겠습니다