Версия для печати
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум на Исходниках.RU > Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets > Проблемы со сборкой OpenSSL


Автор: ter_nk_ 24.10.16, 12:34
Студия 2015, собираю так Сборка

Проблемы с окружением сборки (32 и 64), поэтому вызываю командную строку и загружаю переменные окружения

c:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\vcvars64.bat

Была 10 студия, снесена.

Исправлено здесь
<{CODE_COLLAPSE_OFF}><{CODE_WRAP_OFF}>
    @if not "%1"=="store" @if not "%1"=="8.1" @if not "%userinput:~0,3%"=="10." goto usage


8.1 на 10 чтобы с Program Files (x86)\Windows Kits

подхватывать что надо

Были вопросы с путями, добавил

<{CODE_COLLAPSE_OFF}><{CODE_WRAP_OFF}>
    set INCLUDE=%INCLUDE%;C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\rm\crt
    set INCLUDE=%INCLUDE%;C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt
    set LIBPATH=%LIBPATH%;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x64
    set LIBPATH=%LIBPATH%;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\lib\amd64


Затык

<{CODE_COLLAPSE_OFF}><{CODE_WRAP_OFF}>
    @call perl Configure VC-WIN64A --prefix=C:\Build-OpenSSL-VC-64
    @call ms\do_win64a
    @call nmake -f ms\nt.mak


Building OpenSSL
perl .\util\copy-if-different.pl ".\crypto\buildinf.h" "tmp32\buildinf.h"
Copying: ./crypto/buildinf.h to tmp32/buildinf.h
perl .\util\copy-if-different.pl ".\crypto\opensslconf.h" "inc32\openssl\opensslconf.h"
NOT copying: ./crypto/opensslconf.h to inc32/openssl/opensslconf.h
link /nologo /subsystem:console /opt:ref /debug /out:out32\constant_time_test.exe @C:\Temp\nm7F40.tmp
LINK : fatal error LNK1104: не удается открыть файл "libucrt.lib"

В путях она есть, видимо делается х32

Автор: Cfon 24.10.16, 13:02
:wacko: ты сам понял что написал?

Добавлено
что за обрывки фраз

Добавлено
там по ссылке вроде все ясно написано

Автор: ter_nk_ 24.10.16, 13:36
Цитата Cfon @
там по ссылке вроде все ясно написано


Да там все понятно, у меня ошибка выскакивает

Автор: Mr.Delphist 25.10.16, 17:34
Насколько помню, там сборка из двух этапов:
1) генерация SLN-файла с проектами через перл-скрипты в папку vsout
2) компиляция этого SLN в Студии

На каком этапе проблема? Неочевидно. Исходное сообщение действительно сумбурное (без обид - сам не раз бывал в такой ситуации что мозги уже кипят и толком обрисовать проблему трудно, сейчас вот начинаю сборку PDFium под Windows и полон аналогичных предчувствий :D )

Автор: ter_nk_ 25.10.16, 17:40
Ссылку как делаю приводил, в процесс сборки
@call nmake -f ms\nt.mak

получаю то что привел.

Автор: Mr.Delphist 25.10.16, 18:31
А зачем дёргать руками батник vcvars? Лучше запускать Visual Studio Command Prompt, там всё уже есть из коробки.

Автор: ter_nk_ 25.10.16, 18:40
Цитата Mr.Delphist @
А зачем дёргать руками батник vcvars? Лучше запускать Visual Studio Command Prompt, там всё уже есть из коробки.


Что-то не установился, а потом я так с настройкой среды пробовал.

Автор: Mr.Delphist 26.10.16, 10:32
Тогда что-то с самой Студией не то - Prompt должен быть. У меня оно такое:

Цитата
%comspec% /k ""C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools\VsDevCmd.bat""

Автор: KILLER 30.10.16, 17:58
Когда работаешь на винде - лучше запускай студию - открывай проект(солюшин(*.sln)) и компилируй из под студии, а не с командной строки. Командная строка для компиляции должна быть вообще другой, даже и близко не похоже на то что ты привел. Если у тебя на винде стоит CYGWIN, и ты можешь получить *.sln файл или хотя бы *.vcproj - то с ним и работай, студия по другому не умеет. Все твои "set INCLUDE" - она не поймет. OpenSSL собирал под винду вообще без проблем, но компилил не с командной строки а открывал именно MSVS.

Добавлено
А вообще проще будет скачать OpenSSL под винду и скомпилить студией. Там все есть и файлы проекта и солюшн и компилится сразу и без ошибок. Единственное может быть какие то пути придется прописать в настройках.

Powered by Invision Power Board (https://www.invisionboard.com)
© Invision Power Services (https://www.invisionpower.com)