#c #c #macos #openssl #homebrew
Вопрос:
Я пытаюсь импортировать заголовок openssl в свой файл cpp на macos следующим образом :
#include <openssl/sha.h>
#include <openssl/md5.h>
Я пытаюсь установить openssl с :
brew install openssl
brew link --force openssl
затем я получил это:
Warning: Refusing to link macOS provided/shadowed software: openssl@3
If you need to have openssl@3 first in your PATH, run:
echo 'export PATH="/usr/local/opt/openssl@3/bin:$PATH"' >> ~/.zshrc
For compilers to find openssl@3 you may need to set:
export LDFLAGS="-L/usr/local/opt/openssl@3/lib"
export CPPFLAGS="-I/usr/local/opt/openssl@3/include"
поэтому я бегу :
echo 'export PATH="/usr/local/opt/openssl@3/bin:$PATH"' >> ~/.zshrc
export CPPFLAGS="-I/usr/local/opt/openssl@3/include"
export LDFLAGS="-L/usr/local/opt/openssl@3/lib"
для запуска моего файла я использую g -lcrypto -lssl main.cpp -o main amp;amp; ./main
но я получил все это предупреждение, и библиотека не найдена :
main.cpp:14:3: warning: 'MD5' is deprecated [-Wdeprecated-declarations]
MD5((unsigned char*)s, strlen(s), empreinte);
^
/usr/local/include/openssl/md5.h:52:1: note: 'MD5' has been explicitly marked deprecated here
OSSL_DEPRECATEDIN_3_0 unsigned char *MD5(const unsigned char *d, size_t n,
^
/usr/local/include/openssl/macros.h:182:49: note: expanded from macro 'OSSL_DEPRECATEDIN_3_0'
# define OSSL_DEPRECATEDIN_3_0 OSSL_DEPRECATED(3.0)
^
/usr/local/include/openssl/macros.h:62:52: note: expanded from macro 'OSSL_DEPRECATED'
# define OSSL_DEPRECATED(since) __attribute__((deprecated))
^
1 warning generated.
ld: library not found for -lcrypto
Есть какое-нибудь решение ?
Комментарии:
1. Пожалуйста, замените эти изображения текстом, который они содержат. Это позволяет искать сообщения об ошибках, что вам следовало сделать еще до публикации здесь.