vs210编译sevenzip 7-zip出现link error opt:nowin98的错误解决办法
在http://sourceforge.net/projects/sevenzip/files/7-Zip/下载 7z922.tar.bz2 源代码,就是windows下 7-zip的源代码。解压后编译,他使用的是vc++6.0
我直接用 vs2010 的nmake -f makefile来编译
打开 cmd 进入7z920\CPP\7zip\UI> nmake 开始编译
cl编译cpp没有问题
在link链接obj阶段出现:
link -nologo -OPT:NOWIN98 -OPT:REF -OPT:ICF -out:O\ LINK : fatal error LNK1117: syntax error in option 'OPT:NOWIN98' NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 10.0\VC\Bi n\link.EXE"' : return code '0x45d' Stop.
link -OPT:NOWIN98 -nologo -OPT:REF -OPT:ICF -out:O\7z.exe O\StdAfx.obj O\Client7z.obj O\IntToString.obj O\NewHandler.obj O\MyString.obj O\StringCo nvert.obj O\StringToInt.obj O\MyVector.obj O\Wildcard.obj O\DLL.obj O\FileD ir.obj O\FileFind.obj O\FileIO.obj O\FileName.obj O\PropVariant.obj O\PropV ariantConversions.obj O\FileStreams.obj oleaut32.lib ole32.lib user32.lib adva pi32.lib shell32.lib LINK : fatal error LNK1117: 选项“OPT:NOWIN98”中的语法错误 NMAKE : fatal error U1077: “"C:\Devtools\Microsoft Visual Studio 10.0\VC\BIN\li nk.EXE"”: 返回代码“0x45d” Stop. NMAKE : fatal error U1077: “"C:\Devtools\Microsoft Visual Studio 10.0\VC\BIN\nm ake.exe"”: 返回代码“0x2” Stop.
解决办法
nmake NEW_COMPILER=1 MY_STATIC_LINK=1
nmake后面加两个 参数就可以取消 nowin98 的提示了。当然手动 将 link xxxxxx 后面的 -OPT:NOWIN98 去掉 也可以,只不过麻烦,所以才找到这个方法的。
参考:
http://sourceforge.net/p/sevenzip/discussion/45797/thread/ea126d68#1f08
------------------------------------------------------------------------------------------------
一定要专业!本博客定位于 ,C语言,C++语言,Java语言,Android开发和少量的Web开发,之前是做Web开发的,其实就是ASP维护,发现EasyASP这个好框架,对前端后端数据库 都很感觉亲切啊。. linux,总之后台开发多一点。以后也愿意学习 cocos2d-x 游戏客户端的开发。