본문 바로가기
기타/분류하기애매한무언가

Visual Studio를 이용해서 OpenSSL 직접 컴파일하기

by hirudev 2022. 3. 11.

zlib 처럼 그냥 압축풀고 대충 소스 껴넣고 실행하면 실행이 안된다.

( opensslconf.h.in 처럼 따로 스크립트를 처리해줄 수 있다면 사실상 컴파일까지는 필요없다. )

 

OpenSSL 압축을 풀면 INSTALL과 NOTES.WIN 라는 파일이 있으니 자세한 내용은 여기를 참고하는 것이 좋다.

 

필자는 포터블성애자라 포터블 처리 기준으로 작성하였다.

 

[선행되어야할 준비물]

Visual Studio

OpenSSL ( https://www.openssl.org/ )

Perl ( https://www.perl.org/ )

( ActiveState Perl 이나 Strawberry Perl 이나 아무거나 상관없다. 참고로 필자는 Strawberry Perl 를 사용하였다. )

 

[절차]

1. OpenSSL, Perl 를 모두 압축을 풀어준다.

(두가지 다 바이너리로도 제공하고 있어서 따로 설치할 필요가 없다.)

 

2. 

32bit 기준 x86 Native Tools Command Prompt for VS 20xx

64bit 기준 x64 Native Tools Command Prompt for VS 20xx

을 실행한다.

(보통 VS를 설치하면 시작 메뉴>Visual Studio 20xx 폴더 내에 존재한다.)

(20xx의 xx는 버전을 의미한다. Visual Studio 2007, 2010, 2012, 2015 등..)

 

3.

Perl은 Perl.exe가 있는 곳( (압축풀린 폴더)\Perl\bin\ )

위 경로를 환경변수에 등록해준다.

ex. $ set PATH=%PATH%;(Perl 경로);

※ Perl 도 위와 마찬가지로 32bit, 64bit 에 유의한다. 똑같이 맞춰주어야한다.

 

4. OpenSSL 가 풀린 경로로 이동한다.

ex. $ cd (OpenSSL 경로)

 

5. 컴파일 옵션은 아래와 같다.

VC-WIN32 no-asm : x86

VC-WIN64A-masm : x64

ex. $ perl Configure VC-WIN32 no-asm

ex. $ perl Configure VC-WIN64A-masm

(지원하는 어셈블리 옵션은 perl Configure 입력을 통해 확인 가능하다)

(그 외 컴파일 옵션은 INSTALL에서 확인 가능하다.)

※ VC-WIN32, VC-WIN64A 단일 옵션의 경우 NASM( https://www.nasm.us/ ) 을 별도로 다운로드 받아서 처리해줘야 한다.

 

 

6. 컴파일을 시작한다.

ex. $ nmake

 

7. 사용시 프로젝트 옵션에서

C/C++ > include 디렉토리

linker > library 디렉토리

두가지를 설정해서 사용하면 된다.

댓글