Visual Studio 2017 编译 gens 世嘉模拟器

1) 下载源代码 2.14 版本

http://gens.me/downloads.shtml

2) 下载 老版本 DirectX 并且安装

https://github.com/apitrace/apitrace/wiki/DirectX-SDK

我用了下面的 2007年的版本

Last to include D3D8 headers and libraries: August 2007

https://www.microsoft.com/en-gb/download/details.aspx?id=13287

3) 加入环境变量

编辑 E:\tool\VS2017\Common7\Tools\VsDevCmd.bat

在:ext_end 之前,加入下面的代码

set DXSDK_DIR="C:\Program Files (x86)\Windows Kits\DirectX_SDK_2007\"
call %DXSDK_DIR%Utilities\Bin\dx_setenv.cmd i386

4 ) 因为老版本 dinput.lib 用了老的 libc.lib , 而 VS2017 默认用了 ucrt. 所以会有冲突。

编辑gens的Makefile,加上link选项 /NODEFAULTLIB:libc

变更后:

$(GENSPATH)\gens.exe: $(OBJS)
	$(LINK)  /NODEFAULTLIB:libc /SUBSYSTEM:WINDOWS /OUT:"$@" /PDB:"$(SYMPATH)\$(@B).pdb" $(GENS_LIBS) $**

参考:

https://docs.microsoft.com/en-us/cpp/c-runtime-library/crt-library-features?view=vs-2019

猜你喜欢

转载自www.cnblogs.com/johnsonshu/p/11902027.html