使用MSVC 2010构建OpenSSL 1.0.1c时出错

时间:2012-12-24 09:12:04

标签: windows visual-c++ openssl visual-studio-2010

我已成功配置OpenSSL进行构建,但是当我运行nmake时,我得到了这个:

c:\Development\Qt\5\OpenSSL>nmake -f ms\ntdll.mak test

Microsoft (R) Program Maintenance Utility Version 10.00.30319.01
Copyright (C) Microsoft Corporation.  All rights reserved.

cl /Fotmp32dll\md4test.obj -Iinc32 -Itmp32dll /MD /Ox /O2 /Ob2 -DOPENSSL_THREADS  -DDSO_WIN32
-W3 -Gs0 -GF -Gy -nologo -DOPENSSL_SYSNAME_WIN32 -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -D_CRT_SECURE_NO_DEPRECATE
-DOPENSSL_USE_APPLINK -I. -DOPENSSL_NO_RC5 -DOPENSSL_NO_MD2 -DOPENSSL_NO_KRB5 -DOPENSSL_NO_JPAKE
-DOPENSSL_NO_STATIC_ENGINE /Zi /Fdtmp32dll/app -c .\crypto\md4\md4test.c

.\crypto\md4\md4test.c : fatal error C1033: cannot open program database 'c:\development\qt\5\openssl\tmp32dll\app.pdb'
NMAKE : fatal error U1077: '"c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\BIN\cl.EXE"' : return code '0x2'
Stop.

建议表示赞赏。

2 个答案:

答案 0 :(得分:3)

当其他某个应用程序同时尝试访问该文件时,通常会发生这种情况。对我来说,它是Dropbox。所以,我不得不禁用同步。

在编译期间访问PDB文件的另一个程序是mspdbsrv.exe。该程序由构建过程自动启动。杀死它,并删除tmp32dll文件夹中的所有文件。它可能是从之前的构建尝试中遗留下来的。

希望有所帮助!

答案 1 :(得分:1)

当我意外使用“ms \ nt.mak”构建时出现此错误,但后来尝试使用“ms \ ntdll.mak”进行测试。确保使用相同的make文件构建和测试。

相关问题