Использование реализации CMS OpenSSL в C ++ - PullRequest
2 голосов
/ 04 января 2011

Итак, мой проект сегодня заключался в создании класса C ++, который объединяет большинство наших обычно используемых задач шифрования. У меня много чего получалось, но тут возникла небольшая загвоздка. Для справки, я использую XCode 3.2.5 на OS 10.6.5.

Я пытаюсь использовать некоторые функции CMS OpenSSL. Страница MAN OpenSSL для одной из функций, которые я пытаюсь использовать, упоминает, что она была включена в версию 0.9.8. Это версия, которую XCode позволил мне импортировать, не выполняя ничего необычного (Цель -> Общие -> Добавить связанную библиотеку). Тем не менее с этим добавленным XCode сообщает, что не может найти openssl / cms.h.

Поэтому, подумав, что, может быть, существует некоторое несоответствие между версией OS X 0.9.8 и той, что на странице OpenSSL, я скачал исходный код для 1.0.0c и собрал его. После того, как он был построен, я добавил libcrypto.a и libssl.a в свой проект как связанные библиотеки и добавил «some / dirs / openssl-1.0.0c / include / **» в качестве пути поиска заголовка. Теперь он может найти openssl / cms.h, но я получаю ошибку связывания с любой вызываемой мной функцией CMS.

Кто-нибудь сделал это успешно? Любая помощь будет признательна.

Спасибо!

1 Ответ

1 голос
/ 04 января 2011

В итоге я создал новый SDK и вызвал

./Configure darwin64-x86_64-cc --prefix=/path/to/sdk/usr --openssldir=/System/Library/OpenSSL enable-cms shared

Чтобы обновить версию OpenSSL, включенную в этот SDK.Это, похоже, сработало.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...