I can believe fly.

Monday, May 8, 2017

编译directx-jun2010的Effects11工程引发的问题

Microsoft DirectX SDK (June 2010)简称directx-jun2010
在编译directx-jun2010\Samples\C++\Effects11\Effects11_2013.sln工程出错:


找不到directx-jun2010自己相关的头文件,查了一下工程的配置属性,发现VC++目录里使用到环境变量DXSDK_DIR,
由于在构建环境里,directx-jun2010是在其它环境安装后直接拿数据来用的,这就导致了DXSDK_DIR是不存在的。



我是使用nant脚本编译工程的,试着在编译前增加DXSDK_DIR的环境变量,但这对VC来说是不生效的


查询了devenv语法(https://msdn.microsoft.com/zh-cn/library/ms241275.aspx),发现它有一个开关/useenv, 作用是将环境变量加载到“VC++ 目录”对话框中。我尝试着将vccompile改为vccompile_useenv。


结果出现另一个错误


需要调用vsvars32.bat重新初始化VC的环境变量

exec不在同一个进程里,vsvars32.bat的调用无效。
最后,尝试重新设置INCLUDE,LIB环境变量以便工程编译中能找到相关的依赖文件,以下是编译脚本












No comments: