Компілюємо бібліотеку openssl 1

OpenSSL - це криптографічний бібліотека, призначена для використання в додатках, яким потрібно безпечне взаємодія в комп'ютерних мережах, наприклад, з метою захисту переданої інформації від прослуховування або для встановлення особи учасника на іншому кінці. Знайти скомпільовану бібліотеку звичайно можна, але не потрібно. Розробники OpenSSL радять компілювати бібліотеку самостійно, щоб врахувати всі необхідні для вашого випадку деталі, такі як особливості архітектури і платформи. У цій статті ми розглянемо, як скомпілювати бібліотеку OpenSSL версії 1.1.0 і вище для платформ Win32 і Win64.

Компілюємо бібліотеку openssl 1

Готуємо все необхідне для компіляції OpenSSL

Перше, що потрібно зробити - це завантажити і встановити необхідні програми:

Після цього скачайте исходники бібліотеки OpenSSL з офіційного сайту звідси. Якщо ви хочете мати відразу дві версії OpenSSL для налагодження, то вам потрібно буде скомпілювати OpenSSL два рази в різні папки. В цьому випадку створіть дві папки: одну для платформи Win32, другу для платформи Win64, наприклад, C: \ openssl-src-32 і C: \ openssl-src-64, і розпакуйте вихідні два рази в обидві ці папки.

Компіляція бібліотеки за замовчуванням відбувається в папку додатків «C: \ Program Files \ OpenSSL» або «C: \ Program Files (86) \ OpenSSL» (в залежності від поточної архітектури Windows), тому командний рядок Visual Studio потрібно запускати з правами адміністратора. Для цього по ярлику / пункту меню потрібно натиснути правою кнопкою мишки і вибрати «Запуск від імені адміністратора».

компілюємо OpenSSL

    1. Відкрийте командний рядок Visual Studio (як це зробити, див. Вище).
    2. Перейдіть в папку з потрібними кодами. Для цього виконайте команду «cd ШЛЯХ». Наприклад, для переходу в папку C: \ openssl-src-32 команда буде виглядати так:

А для переходу в папку C: \ openssl-src-64 так:

    1. Налаштуйте make-файл для конкретної цільової платформи і цільової папки. Для платформи Win32 і цільової папки «C: \ Program Files \ OpenSSL» або «C: \ Program Files (x86)» виконайте команду:

Для компіляції для Win32 в вашу конкретну папку, наприклад, «C: \ Build-OpenSSL-VC-32»:

Для компіляції для Win32 з символьної налагоджування в вашу папку, наприклад, «C: \ Build-OpenSSL-VC-32-dbg»:

Для платформи Win64:

Для компіляції для Win64 в вашу конкретну папку, наприклад, «C: \ Build-OpenSSL-VC-64»:

Для компіляції для Win64 з символьної налагоджування в вашу папку, наприклад, «C: \ Build-OpenSSL-VC-64-dbg»:

Якщо ви вирішили не використовувати модулі на асемблері, то допишіть ще параметр «no-asm». наприклад:

Дізнатися призначення ще більшої кількості параметрів, можна почитавши текстовий файл INSTALL, який знаходиться в папці з вихідними кодами.

Насправді я не виявив різниці між компіляцією з додаванням налагоджувальних символів і без неї. У мене весь час виходить варіант для налагодження: створюються OBJ і PDB-файли. Мабуть при створенні файлу makefile десь закралася помилка, яку в майбутніх версіях виправлять.

    1. Скомпілюйте OpenSSL. Для цього виконайте таку послідовність три команди:

Тут команда «nmake» компілює весь проект, команда «nmake test» проводить тестування, при успішному проведенні якого повинні з'явиться повідомлення «All tests successful» і «Result: PASS», а команда «nmake install» копіює необхідні файли в папки призначення.

Після виконання останньої команди в цільової папці (це папка «C: \ Program Files \ OpenSSL», «C: \ Program Files (x86) \ OpenSSL» або папка, яку ви задали параметром --prefix) з'являться готові файли бібліотеки OpenSSL. Можна їх використовувати.

Як бачите, нічого особливо складного в компіляції OpenSSL немає. Однак особливо ліниві можуть завантажити вже готові дистрибутиви, що містять скомпільовані файли бібліотеки, з сайту Shining Light Productions. або більш старі версії бібліотеки звідси.

Схожі статті