2016-10-03 2 views
0

Я пытаюсь ввести код на C на mac (el capitan) и вам нужно использовать OPENSSL. ОС поставляется с version 0.9.8zh 14 Jan 2016.OpenSSL не связан с Homebrew

Я использовал homebrew для обновления и установки openssl (получил версию 1.0.2h), но я не могу правильно связать его, чтобы использовать его. Я столкнулся с той же проблемой, что упоминалось в этом вопросе: Homebrew refusing to link OpenSSL

Кажется, ответы на вышеуказанный вопрос недействительны в большей степени из-за некоторого обновления в вареве.

Мой путь ссылки /usr/local/bin как первый.

Ран этой команды: ln -s /usr/local/Cellar/openssl/1.0.2j/include/openssl /usr/local/include/openssl (нашел это решение здесь: https://medium.com/@zlwaterfield/openssl-with-el-capitan-456bf68bf43a#.f9tkjeo7w среди других мест)

не получил никакого вывода ошибки, поэтому я предположил, что это сработало. Но ..

which openssl дает мне этот выход: /usr/local/bin/openssl

openssl version дает мне этот выход: OpenSSL 0.9.8zh 14 Jan 2016

Любые идеи о том, как поступить?

@jww не уверен, что вы подразумеваете под «создайте свой материал». Я не программист и, следовательно, не совсем понимаю слова. Просто пытаюсь узнать кое-что.

Я побежал

brew update

brew install openssl

brew link --force openssl

, который дал мне ошибку говоря

Warning: Refusing to link: openssl.

Я не писал это для краткости, и вместо этого я предоставил ссылку на вопрос, который показал именно ту проблему, с которой я столкнулся. Coz ранее мне сказали, что я не был достаточно кратким в создании que.

Кроме того, команда, я бегу на CLI, который привел меня на этот путь был это (если это поможет):

openssl dgst -sha256 -sign ec-priv.pem ex-message.txt >ex-signature.der.

дает мне ошибку:

EVP_SignFinal:wrong public key type.

Googling привел меня к пониманию его старой версии openssl, которую мне нужно обновить. Отвечает ли это на ваш вопрос?

+0

Состояние, в котором находится OpenSSL, который вы хотите использовать.Покажите, как вы настроили свой проект, если его Autoconf основан. Покажите свои команды компилятора и компоновщика. Также см. [Brew, отказывающийся связывать openssl] (http://stackoverflow.com/q/38670295), [Обновить OpenSSL на OS X с Homebrew] (http://stackoverflow.com/q/15185661), [Как установить последняя версия opensl Mac OS X El Capitan] (http://stackoverflow.com/q/35129977), [Как обновить OpenSSL в OS X?] (http://apple.stackexchange.com/q/126830), [Установка Openssl с использованием HomeBrew не работает] (http://superuser.com/q/486389) и т. Д. – jww

+0

Спасибо @jww: вы уже видели эти вопросы. Где открывается openssl: '/ usr/local/Cellar/openssl/1.0.2j'. Никакого проекта как такового. Просто выкладывается с простым кодом C, отредактированным с помощью 'vi', скомпилированным с использованием' gcc', с использованием команд 'CLI'. –

+0

Спасибо @Tuhina. Я проголосовал за закрытие, потому что вы не будете предоставлять команды, которые вы используете, чтобы создавать свои вещи. Если вы все ищете, как положить 'openssl' на путь, тогда вы должны спросить на соответствующем сайте, например [Суперпользователь] (http://superuser.com/) или [Apple Stack Exchange] (http: // apple.stackexchange.com/). – jww

ответ

0

Итак, проблема связи openssl была решена следующим образом: Мне нужно было закрыть окно старой оболочки и запустить новое окно оболочки для запуска команды openssl version, и она показала мне правильную новую версию. В основном явное связывание работало с командой, которую я указал в вопросе.

Смежные вопросы