Russian Qt Forum

Программирование => Общий => Тема начата: Mish_ka от Апрель 30, 2011, 13:37



Название: [РЕШЕНО] nmake - что это за зверь такой?
Отправлено: Mish_ka от Апрель 30, 2011, 13:37
Помогите пожалуста!
собираю OpenSSL по инструкции http://qtcoder.blogspot.com/2010/02/qt-2.html
проблема в строчке nmake -f ms\ntdll.mak

ругается
Код
DOS
c:\1>nmake -f ms\ntdll.mak
"nmake" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
c:\1>

В переменных среды добавил переменную
nmake с ключём c:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\nmake.exe

ругается так же

делаю через командную строку MSVS
ругается
Код
DOS
Building OpenSSL
       perl util/copy.pl ".\crypto\buildinf.h" "tmp32dll\buildinf.h"
Copying: ./crypto/buildinf.h to tmp32dll/buildinf.h
       perl util/copy.pl ".\crypto\opensslconf.h" "inc32\openssl\opensslconf.h"
 
Copying: ./crypto/opensslconf.h to inc32/openssl/opensslconf.h
       cl /Fotmp32dll\uplink.obj -Iinc32 -Itmp32dll /MD /Ox /O2 /Ob2 -DOPENSSL_
THREADS  -DDSO_WIN32 -W3 -WX -Gs0 -GF -Gy -nologo -DOPENSSL_SYSNAME_WIN32 -DWIN3
2_LEAN_AND_MEAN -DL_ENDIAN -D_CRT_SECURE_NO_DEPRECATE -DOPENSSL_BN_ASM_PART_WORD
S -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM
-DMD5_ASM -DRMD160_ASM -DAES_ASM -DWHIRLPOOL_ASM -DOPENSSL_USE_APPLINK -I. -DOP
ENSSL_NO_RC5 -DOPENSSL_NO_MD2 -DOPENSSL_NO_KRB5 -DOPENSSL_NO_JPAKE -DOPENSSL_NO_
STATIC_ENGINE /Zi /Fdtmp32dll/lib -D_WINDLL  -c ms\uplink.c
uplink.c
ms\uplink.c(11) : fatal error C1083: Не удается открыть файл include: windows.h:
No such file or directory
NMAKE : fatal error U1077: "C:\Program Files (x86)\Microsoft Visual Studio 9.0\V
C\BIN\cl.EXE": возвращенный код "0x2"
Stop.
C:\1>

делаю через MinGW
ругается
Код
DOS
c:\1>c:\MinGW\bin\mingw32-make.exe -f ms\ntdll.mak
ms\ntdll.mak:421: *** Recursive variable `EXHEADER' references itself (eventuall
y).  Stop.
c:\1>

перепробывал всё что можно, перегуглил, но не понимаю ни чего объясните для особо одарённого =)

Система Win7 Sp1 x64
Qt 4.7.2


Как понимаю мне нужен файл qca-ossl2.dll, он разве любой не подойдёт или мне гемороится всё же надо?


Название: Re: namke - что это за зверь такой?
Отправлено: QCasper от Апрель 30, 2011, 14:34
nmake это сборщик компилятора msvc.

Я как раз, за последние пару дней, несколько раз собирал openssl - нет никаких проблем.
Только я делал не do_ms, а do_nasm. Но для этого конечно надо сам nasm поставить и добавить путь к nasm.exe в path.
Всё делал из консоли VS.


Название: Re: namke - что это за зверь такой?
Отправлено: Mish_ka от Апрель 30, 2011, 14:44
дай пожалуйста подробную инструкцию
где скачать
куда ставить что прописать

а то я уже потихоньку с ума с хожу


а готовая твоя qca-ossl2.dll мне не подойдёт?


Название: Re: namke - что это за зверь такой?
Отправлено: SeverusSnape от Апрель 30, 2011, 15:14
Запустите Visual Studio 2008 Command Prompt из состава Microsoft Visual и наберите nmake


Название: Re: namke - что это за зверь такой?
Отправлено: Mish_ka от Апрель 30, 2011, 15:55
Запустите Visual Studio 2008 Command Prompt из состава Microsoft Visual и наберите nmake

Код
DOS
Setting environment for using Microsoft Visual Studio 2008 x86 tools.
 
c:\Program Files (x86)\Microsoft Visual Studio 9.0\VC>nmake
 
Служебная программа обслуживания программ Microsoft (R), версия 9.00.30729.01
(C) Корпорация Майкрософт (Microsoft Corporation). Все права защищены.
 
NMAKE : fatal error U1064: MAKEFILE не найден и конечный файл не задан
Stop.
 
c:\Program Files (x86)\Microsoft Visual Studio 9.0\VC>


Название: Re: nmake - что это за зверь такой?
Отправлено: QCasper от Апрель 30, 2011, 17:30
1. Качаем и распаковываем OpenSSL (http://www.openssl.org/source/openssl-1.0.0d.tar.gz).
2. Качаем и устанавливаем Active Perl (http://downloads.activestate.com/ActivePerl/releases/5.12.3.1204/ActivePerl-5.12.3.1204-MSWin32-x86-294330.msi).
3. Качаем и устанавливаем NASM (http://www.nasm.us/pub/nasm/releasebuilds/2.09.08/win32/nasm-2.09.08-installer.exe).
4. Открываем консоль (win+r -> cmd) и настроим окружение сборки (для ленивых батник в аттаче, только переименуйте расширение на .bat сами, а то не аттачится так), заменив пути актуальными:

Код:
@set "PATH=C:\nasm;%PATH%"
@set "PATH=C:\perl\bin;%PATH%"
"C:\Program Files\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x86

Далее всё делаем из той консоли, что открыли в предыдущем пункте:
5. Создаём каталог C:\openssl (впрочем это можно сделать когда угодно и откуда угодно).
6. Переходим в каталог с исходниками OpenSSL (тот, что скачали в первом пункте).
7. Выполняем следующие команды:

Код:
perl Configure VC-WIN32 --prefix=c:\openssl
ms\do_nasm
nmake -f ms\ntdll.mak
nmake -f ms\ntdll.mak install

8. Идём в C:\openssl и радуемся там собранным либам :)

Всё вышеописанное только что проверил попунктно.
Win7 32 bit, VC++ Express 2010.


Название: Re: nmake - что это за зверь такой?
Отправлено: Mish_ka от Апрель 30, 2011, 17:41
щаз попробую
если прокатит с меня пиво =)


Название: Re: nmake - что это за зверь такой?
Отправлено: Mish_ka от Май 05, 2011, 14:29
Твоя инструкция мне очень помогла!

В личку кинь куда пиво слать  ;)

Я собрал ентот самый qca-ossld2.dll

только вот не задача
по инструкции сказано:
http://qtcoder.blogspot.com/2010/02/qt-2.html
что после этих действий мне будет счастье с кучей алгоритмов шифрования, но их нет =(

делаю:
Код
C++ (Qt)
QCA::init();
QStringList capabilities;
QString p;
capabilities = QCA::supportedFeatures();
p=capabilities.join(",");
QMessageBox::critical(0,"1",p);

как выдавал МД5 и ША1 так и выдаёт их

может сможешь подсказать?
(всё делал чётко по инструкции, всё собиралось без багов)






Вопрос решил, решение в этой ветке (т.к. по сути вопросу же другой):
http://www.prog.org.ru/index.php?topic=17974.msg120565#msg120565


Всем спасибо!