none
Windows Mobile에서 openssl 사용하기 RRS feed

  • 일반 토론

  • Windows Mobile 에서 openssl 을 컴파일 하기 위해서는 다음의 과정을 거치면 됩니다.

    1. OpenSSL source 다운로드
         http://www.openssl.org/source

    2. Perl 다운로드
         http://downloads.activestate.com/ActivePerl/Windows/ (최신버전 알아서 선택)

    3. wcecompat 다운로드
         http://github.com/mauricek/wcecompat
        

    4. Building

        1) VS 와 Active Perl 설치
        2) OpenSSL 압축 풀기
        3) 시작 -> 모든 프로그램 -> Microsoft Visual Studio 2005 -> Visual Studio Tools -> Visual Studio 2005 명령 프롬프트 선택
        4) wcecompat 폴더로 이동
        5) 설정 값 입력 (Program file 패스 지정, Win CE 일경우 해당 SDK 폴더 지정, 현재는 Win Mobile 6 기준임)

    -------------------------------------------------------------------------------------------------------------
    set wcecompat=해당 디렉토리

    set OSVERSION=WCE502

    set TARGETCPU=ARMV4I

    set PLATFORM=VC-CE

    set PATH=D:\Program Files\Microsoft Visual Studio 8\VC\ce\bin\x86_arm;D:\Program Files\Microsoft Visual Studio 8\VC\bin;D:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\bin;D:\Program Files\Microsoft Visual Studio 8\Common7\Tools;D:\Program Files\Microsoft Visual Studio 8\Common7\IDE;D:\Program Files\Microsoft Visual Studio 8\Common7\Tools;D:\Program Files\Microsoft Visual Studio 8\Common7\IDE;D:\Program Files\Microsoft Visual Studio 8\;$(FrameworkSDKDir)Bin;%PATH%

    set INCLUDE=D:\Program Files\Microsoft Visual Studio 8\VC\ce\include;D:\Program Files\Windows Mobile 6 SDK\PocketPC\include\ARMV4I;D:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\include;D:\Program Files\Microsoft Visual Studio 8\SmartDevices\SDK\SQL Server\Mobile\v3.0

    set LIB=D:\Program Files\Windows Mobile 6 SDK\PocketPC\Lib\Armv4i;D:\Program Files\Microsoft Visual Studio 8\VC\ce\atlmfc\lib\ARMV4I;D:\Program Files\Microsoft Visual Studio 8\VC\ce\lib\ARMV4I\;
    -------------------------------------------------------------------------------------------------------------

        6) perl config.pl 실행

        7) nmake 실행 (빌드가 되지 않으면 .vcproj 를 이용해서 빌드 할 수 있음)

        8) OpelSSL 폴더로 이동 후 perl configure VC-CE 입력

        9) ms\do_ms.bat 실행

    10) nmake ms\ce.mak 실행 (static library) 결과는 out32_ARMV4I 에 생김


    ---------------------------------------------
    오류사항 1
    ---------------------------------------------
    f:\openssl\openssl98\crypto\rsa\rsa_pss.c(165) : error C2220: warning treated as

    error - no 'object' file generated

    f:\openssl\openssl98\crypto\rsa\rsa_pss.c(165) : warning C4748: /GS can not prot

    ect parameters and local variables from local buffer overrun because optimizatio

    ns are disabled in function

    NMAKE : fatal error U1077: '"F:\Program Files\Microsoft Visual Studio 8\VC\ce\bi

    n\x86_arm\cl.EXE"' : return code '0x2'

    Stop.

    ---------------------------------------------
    해결 방법 1
    ---------------------------------------------
    ce.mk 에서 /WX 옵션 제거


    ---------------------------------------------
    오류사항 2
    ---------------------------------------------
    when building, a lib “oldnames.lib” is needed, so I add the lib path: F:\Program Files\Microsoft Visual Studio 8\VC\lib;


    ---------------------------------------------
    해결 방법 2
    ---------------------------------------------
    EX_LIBS 에 coredll.lib corelibc.lib 추가
    LFLAGS 에 /NODEFAULTLIB:oldnames.lib /NODEFAULTLIB:libc.lib 추가

    • 이동됨 Alicia CalesMicrosoft employee 2010년 4월 14일 수요일 오전 7:02 Forums Consolidation (이전 위치:Smart Devices Native C++ Development)
    2010년 1월 12일 화요일 오전 1:52