Как использовать OpenSSL с Visual Studio
Я пытаюсь передать мое консольное приложение, написанное в C
, в Visual Studio 2010. В Linux/Mac приложение работает отлично, включая поддержку OpenSSL
.
Может ли кто-нибудь помочь с использованием/связыванием библиотек OpenSSL
в проекте Visual Studio?
Спасибо!
Ответы
Ответ 1
Я знаю это старое! Я столкнулся с проблемой сам и здесь решение.
Прежде всего, вы должны установить (обычную обычную установку) openssl. (Это от здесь).
Теперь, после создания проекта, я цитирую:
Убедитесь, что в свойстве проекта установлены следующие настройки страниц:
[C/С++ → Общие → Дополнительные каталоги]: OpenSSLs включают каталог на вашем компьютере (например, C:\openssl\include)
[Linker → Общие сведения → Дополнительные библиотечные каталоги] значение: OpenSSLs lib на вашем компьютере (например, C:\openssl\lib)
[Linker → Input → Дополнительные зависимости]: libeay32.lib
Источник.
Ответ 2
Вот некоторые ресурсы: Компиляция и установка OpenSSL для Windows, а также Использование OpenSSL для криптографии (Blowfish, DES, RC2, RC4)
Я сам их пробовал, но я все еще получаю ошибки. OpenSSL и Visual Studio не мои сильные стороны, но, возможно, вы можете понять это.
Ответ 3
Хорошо, это больше, чем год, но я не мог найти ответ, поэтому я пробрался. Я получил openssl-1.0.1e для компиляции с использованием VS 11 как такового:
Я пытался использовать PERL, который поставляется с git, не работал, пришлось установить ActivePerl
Взято из ссылка, предоставленная Nitesh:
perl Configure VC-WIN64A no-asm
Далее следуют:
ms\do_win64a
Per этот пост, я отредактировал ms\ntdll.mak и изменил CC на:
CC="c:\Program Files (x86)\Microsoft visual Studio 11.0\VC\bin\amd64\cl.exe"
Тогда, наконец,
nmake -f ms\ntdll.mak
Я не стал устанавливать и просто добавил каталог openssl-1.0.1e\out32dll в Configuration Properties → Linker → Дополнительные библиотечные каталоги и openssl-1.0.1e\inc32 в Свойства конфигурации → C/С++ → C/С++ → Общие → Дополнительные каталоги Include, скопировали libeay32.dll куда-нибудь на моем пути и назвали это хорошим. Кажется, работает.
Ответ 4
Добавьте связанные заголовочные файлы openssl и ниже заголовков.
#include<windows.h>
#include<winsock2.h>
Открыть ниже Ссылка и загрузка предварительно скомпилированных файлов.
http://www.npcglib.org/~stathis/blog/precompiled-openssl/
extarct и сохранить папку на диске C
Для получения инструкций используйте readme_precompile.txt.
Откройте проект Visual С++ и последующую процедуру, приведенную ниже, чтобы включить и параметры Linker.
Убедитесь, что на страницах свойств проекта установлены следующие настройки:
[C/С++ → Общие → Дополнительные каталоги включения]
value: OpenSSLs включают каталог на вашем компьютере (например, C:\openssl\include) или (например, C:\openssl\include64)
[Linker → Общие сведения → Дополнительные библиотечные каталоги]
значение: каталог OpenSSLs lib на вашем компьютере (например, C:\openssl\lib) или (например, C:\openssl\lib64)
[Linker → Input → Additional Dependencies]
Значение:
ws2_32.lib
libsslMT.lib
Crypt32.lib
libcryptoMT.lib