2015-05-25 4 views
-1

Я пытаюсь скомпилировать OpenSSL для WP 8.0 с использованием этого репо. https://github.com/Microsoft/opensslКомпиляция OpenSSL для Windows Phone 8.0

Как я могу это сделать:

  1. Выполните следующий скрипт в источнике корневого дерева.

    ms\do_vsprojects.bat

  2. Open Visual Studio решение, созданное

    vsout\openssl.sln

  3. Run Unit Test App Проекты

  4. ms\do_packwinapp.bat

Наконец я получил два DLLs ssleay32.dll и libeay32.dll от пути "\openssl\vsout\package\bin\Phone\8.0\Dll\Unicode\Release\arm". Я пытаюсь добавить это DLLS в мой WP8.0 проект, и я получаю сообщение об ошибке:

"A reference to a higher version or incompatible assembly cannot be added to the project." 

Что я делаю не так?

+0

Возможный дубликат [Построение собственной библиотеки OpenSSL для платформы WP8] (http://stackoverflow.com/questions/24322250/build-native-openssl-library-for-wp8- платформа) – jww

+0

В настоящее время OpenSSL не компилируется для Windows Phone или Windows RT. Или, может быть, лучший способ выразить это, «его официально не поддерживали». См. Например, [Где sockaddr_in в Windows RT?] (Http://stackoverflow.com/q/18120275). У меня есть куча исправлений, но это было очень больно. – jww

+0

Protip: вы не можете просто скомпилировать случайные приложения, чтобы они запускались на платформе Windows-телефона. – Will

ответ

0

Эти библиотеки были скомпилированы для целевой платформы, отличной от Windows Phone.

См. Варианты сборки этих библиотек в VS.

+0

Я выбрал для ARM, мой проект также ARM-платформа – lineelik

0

Вы пытаетесь связать эти C++ .dll прямо с кодом C# (чтобы убедиться в этом, я пробовал то же самое в VS и получил ту же ошибку). Это не будет работать.

Что вам нужно сделать, так это создать проект на C++ в своем решении для телефона C#. В VS 2015 щелкните правой кнопкой мыши решение -> Добавить новый проект -> Visual C++ -> Windows -> Windows 8 -> Windows Phone -> Windows Runtime Component (есть несколько вариантов для 8.0/8.1/silverlight). выберите тот, который соответствует вашему телефонному приложению).

В этом новом проектном компоненте Windows Windows для разработки приложений на языке C++ вы сможете писать и вызывать код C++. Библиотеки DLL OpenSSL необходимо связать с этим проектом C++.

Я просто попытался связать статические библиотеки openssl в моем проекте телефона с Windows, и это сработало (потребовалось некоторое время, но оно сработало).

Вы должны найти дополнительную информацию о том, как написать код на C++ для приложения Windows Phone в Google. Это может быть хорошим местом для начала: https://msdn.microsoft.com/en-us/library/windows/apps/hh441569%28v=vs.110%29.aspx

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