From 9944c84b9d6ded2a4dc5a935777e30d371c9f4e2 Mon Sep 17 00:00:00 2001 From: Pavel Danilov Date: Thu, 21 Apr 2022 15:27:57 +0000 Subject: [PATCH] blowfish README.md macOS case --- blowfish/README.md | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/blowfish/README.md b/blowfish/README.md index 33685ef..78f8ebc 100644 --- a/blowfish/README.md +++ b/blowfish/README.md @@ -13,7 +13,23 @@ ``` - Реализация не должна делать динамического выделения памяти. -- Для сборки этой задачи, на вашей системе должен быть установлен dev пакет openssl. На ubuntu установить пакет можно командой `sudo apt-get install libssl-dev`. Сборка под другие платформы не гарантируется. +- Для сборки этой задачи, на вашей системе должен быть установлен dev пакет openssl. На ubuntu установить пакет можно командой `sudo apt-get install libssl-dev`. Сборка под другие платформы не гарантируется. На macOS должна сработать следующая последовательность действий: +``` +Установка openssl через Heomebrew + +$ brew install openssl + +Далее нужно указать путь до библиотеки одним из способов: + +1. Установка переменной окружения через GoLand: Run -> Edit Configurations -> Environment: +CGO_LDFLAGS=-L/usr/local/opt/openssl/lib + +2. Установка переменной окружения через консоль и запуск тестов: +$ CGO_LDFLAGS=-L/usr/local/opt/openssl/lib go test -v ./blowfish/… + +3. Добавить флаг прямо в коде: +// #cgo LDFLAGS: -lcrypto -L/usr/local/opt/openssl/lib +``` **Disclaimer:** Эта задача дана в учебных целях. Помните, что (1) нельзя реализовывать собственную криптографию, (2) шифр blowfish устарел, (3) в стандартной библиотеке есть pure go реализация для большинства криптографических примитивов.