"nmake"에 해당되는 글 1건

  1. 2009/04/10 OpenSSL Win32 컴파일

OpenSSL Win32 컴파일

2009/04/10 08:36
OpenSSL Windows nmake Visual Studio MASM32 Assambler C++ Compile Win32

OpenSSL 윈도우에서 컴파일 방법

준비물 ActivePerl , Visual Studio Express 2008 (VC6 ,VC2008)

1. ActivePerl 을 다운로드 받는다 .Confirure 를 해주기 위해 Perl 이 사용된다
ActiveState www.activestate.com/
직접 주소 (http://downloads.activestate.com/ActivePerl/Windows/5.10/ActivePerl-5.10.0.1004-MSWin32-x86-287188.msi)

일반적인 윈도우용 프로그램과 동일한 방식으로 설치가 진행이 된다.

2. OpenSSL 소스를 다운로드 받는다 현재 0.9.8k 버전이 최신으로 올라와 있다.
OpenSSL (www.openssl.org/source)
직접주소 (http://www.openssl.org/source/openssl-0.9.8k.tar.gz)

위 소스를 적당한 디렉토리에 풀어 놓는다. 여기서는 C:\W32Build 라는 디렉토리 안에 압축을 해제 했다.

3. OpenSSL컴파일을 위한 cmd 창 실행
일반적으로 사용하는 명령프롬프트 창은 컴파일을 하기 위해 환경변수(PATH 등)이 지정이 안되어 있다. 시작메뉴에 Visual Studio 명령프롬프트 가 있을 경우에는 실행시키면 된다.
VC6 : C:\Program Files\Microsoft Visual Studio\VC98\Bin\VCVARS32.BAT
VC9 : C:\Program Files\Microsoft Visual Studio 9.0\VC\bin\vcvars32.bat
** 설치 경로가 틀린경우 위와 동일하지 않을 수 있음

cmd를 실행시킨 후 위 배치파일을 실행시켜 환경 변수를 적용시킨다.

OpenSSL을 압축 해제한 C:\W32Build\openssl-0.9.8k\ 로 이동을 한다.

C:\W32Build\openssl-0.9.8k>perl Configure VC-WIN32 --openssldir=C:\OpenSSL

위 구문을 실행시킨다.  그럼 아래와 같은 내용이 출력이 된다 환경이 적용된것인데 현재 사용하는 컴파일러는 어떤것이고 암호화 알고리즘은 어떤것을 사용한다 등의 OpenSSL의 설정화면이 나오게 된다.

이제 Makefile 을 만들어야 한다. 여기서 실행시킬 스크립트는 do 디렉토리에 있는 do_masm.bat , do_ms.bat 파일이다 이 파일은 MASM 어셈블러를 이용할것인 가를 선택하는것인데 암호화 라이블러리이기 때문에 성능 및 속도의 이유로 어셈블러를 선택할 수있다. MASM은 기본적으로 VC에 포함이 되어 있지 않다.

어셈블러를 사용할 때만 설치하세요
MASM www.masm32.com
직접 주소 (http://website.assemblercode.com/masm32/m32v10r.zip)

위 파일을 압축을 해제 하고 설치파일을 실행을 시켜 MASM32를 설치한다. 설치된 경로는 C:\masm32 가 된다.

-1- C:\W32Build\openssl-0.9.8k>
ms\do_masm.bat

 이 부분은 어셈블러로 작업할 부분을 설정하는 부분이다 이때 메이크 파일을 변경을 하게 된다.

-2- C:\W32Build\openssl-0.9.8k>ms\do_masm.bat
위와 같이 하면 어셈블러를 사용하지 않고 설치가 가능하다.

이제 컴파일을 하면 되는데 nt.mak 파일과 ntdll.mak 파일이 있다
nt.mak파일은 openssl 을 일반적으로 컴파일하는것이고 ntdll.mak 파일은 openssl 라이블러리를 이용해 개발을 하기 위한 파일이다. 원하는것을 선택을 하면 된다.

이 예제에서는 Openssl 의 라이블러리(dll)만 사용하려 하므로 ntdll.mak 파일을 사용한다.
C:\W32Build\openssl-0.9.8k>SET PATH=%PATH%;c:\masm32\bin\; (MASM32경로설정)
C:\W32Build\openssl-0.9.8k>nmake -f ms\ntdll.mak

위 명령을 입력하면 컴파일을 진행하게 된다.

C:\W32Build\openssl-0.9.8k>nmake -f ms\ntdll.mak test
컴파일된 결과물을 테스트 한다.

C:\W32Build\openssl-0.9.8k>nmake -f ms\ntdll.mak install

위 과정이 끝나면 앞에서 지정한 C:\OpenSSL에 라이블러리 및 include 파일이 설치가 되어 있다.


"Windows" 카테고리의 다른 글