再谈VS2010编译更高平台vs2012(v110),vs2015(v140)的objectARX程序
2018-03-19 11:36
411 查看
前段时间我贴了一篇vs2010批量编译vc6~vs2008的ARX版本,实际上那一篇是我在研究vs2010编译v110,v140平台的附带收获,正应了那句话,有心栽花花不开,无心插柳柳成荫,因为vs2010编译更高版本的ARX目前需要的平台集是v110(vs2012,2013)和v140(vs2015,2017),分别对应CAD的R20(cad2015,2016),R21(cad2017,2018),而WindowsXp仅仅支持vs2010,所以必须使用win7以及以上的系统才能实现批量编译。准备vs2012,vs2015绿色便携版,或者安装版。
绿色便携版下载地址,vs绿色便携版下载
下面我们来提取编译器,实际上vs开发工具集成编译环境IDE包含编辑器和编译器,而我们仅仅需要vc编译器+必要的windows SDK即可实现编译,
1,打开便携版目录,我们主要关心这两个文件夹。
先打开common7\IDE
找到以下4个文件,右键复制
进去VC\bin目录,粘贴,如果提示重复,可以跳过不覆盖。
在这个文件夹下面运行以下cl.exe,link.exe等exe,看是否能运行,可以打开cmd运行拖动exe到cmd中执行。。。。
已经能够提示用法,表示这个exe程序可以正常执行,其他的一样的可以测试一下。
下面我们为vs2010添加新的平台集,v140
打开如下路径
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Platforms\x64\PlatformToolsets
新建两个文件夹,v140,v110
进入v90,选择这两个文件复制到v140,v110
粘贴到v140后,修改这两个文件的名字v90改v140
然后用记事本或者notepad++打开这两个文件。
替换所有v90文本为v140
找到这个文件的第一个<VCInstallDir>
将目录改成你的vs2015的vc目录,如:E:\Visual Studio 2015 Enterprise\VC\ ,注意最后的斜杠。
我这个文件后面还有一个 <VCInstallDir Condition="'$(VCInstallDir)' == ''">d:\vc\vc9\</VCInstallDir> 这句可以不要,可以删除。。
按照上次的例子添加相关项目,如图。
现在我们可以用vs2010新建一个项目测试测试,看看有什么问题。。
更改项目平台为v140
直接编译。
用everything搜索一下。
这个是我win10系统下的目录,因为我这台电脑上没有安装vs2015相关的windwos SDK,所以无法找到这个文件。。
所以必须找到一份windws10的SDK,因为我已经有了,我就不去折腾了,自行百度解决吧。而且这个文件夹有1.78G,不好上传。
回归主题,继续编辑Microsoft.Cpp.X64.v140 这个文件,找到第一个<WindowsSdkDir 后面的路径改为winsows10 SDK的路径如。
G:\Program Files (x86)\Windows Kits\10
再次编译。
这个是winver版本设置低了的缘故。打开项目文件的stdafx.h
替换一下
?
再次编译
启动调试
测试一下断点。
正常。。
至此,v140x64编辑完成,同样的方式,win32,v110都是类似的。。不再重复。。
附 上完整的x64 prop文件,仅供参考。
?
绿色便携版下载地址,vs绿色便携版下载
下面我们来提取编译器,实际上vs开发工具集成编译环境IDE包含编辑器和编译器,而我们仅仅需要vc编译器+必要的windows SDK即可实现编译,
1,打开便携版目录,我们主要关心这两个文件夹。
先打开common7\IDE
找到以下4个文件,右键复制
进去VC\bin目录,粘贴,如果提示重复,可以跳过不覆盖。
在这个文件夹下面运行以下cl.exe,link.exe等exe,看是否能运行,可以打开cmd运行拖动exe到cmd中执行。。。。
已经能够提示用法,表示这个exe程序可以正常执行,其他的一样的可以测试一下。
下面我们为vs2010添加新的平台集,v140
打开如下路径
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Platforms\x64\PlatformToolsets
新建两个文件夹,v140,v110
进入v90,选择这两个文件复制到v140,v110
粘贴到v140后,修改这两个文件的名字v90改v140
然后用记事本或者notepad++打开这两个文件。
替换所有v90文本为v140
找到这个文件的第一个<VCInstallDir>
将目录改成你的vs2015的vc目录,如:E:\Visual Studio 2015 Enterprise\VC\ ,注意最后的斜杠。
我这个文件后面还有一个 <VCInstallDir Condition="'$(VCInstallDir)' == ''">d:\vc\vc9\</VCInstallDir> 这句可以不要,可以删除。。
按照上次的例子添加相关项目,如图。
现在我们可以用vs2010新建一个项目测试测试,看看有什么问题。。
更改项目平台为v140
直接编译。
用everything搜索一下。
这个是我win10系统下的目录,因为我这台电脑上没有安装vs2015相关的windwos SDK,所以无法找到这个文件。。
所以必须找到一份windws10的SDK,因为我已经有了,我就不去折腾了,自行百度解决吧。而且这个文件夹有1.78G,不好上传。
回归主题,继续编辑Microsoft.Cpp.X64.v140 这个文件,找到第一个<WindowsSdkDir 后面的路径改为winsows10 SDK的路径如。
G:\Program Files (x86)\Windows Kits\10
再次编译。
这个是winver版本设置低了的缘故。打开项目文件的stdafx.h
替换一下
?
再次编译
启动调试
测试一下断点。
正常。。
至此,v140x64编辑完成,同样的方式,win32,v110都是类似的。。不再重复。。
附 上完整的x64 prop文件,仅供参考。
?
相关文章推荐
- 用vs打开更高版本的工程(如VS2010打开VS2012的工程)
- VS2015编译boost1.58 Linux平台编译
- Win10+VS2015 编译win平台hadoop2.9.0
- VS2015编译错误:调用的目标发生了异常--->此实现不是Windows平台FLPS验证的加密算法的一部分。
- glog--介绍以及vs2010 vs2013 vs2015下编译
- VS2015+QT5.7+VS_A编译平台
- 用vs2013编译用vs2015写的memcached遇到的平台问题
- glog--介绍以及vs2010 vs2013 vs2015下编译
- Visual Studio 的生成事件 (vs2010,vs2012,vs2013,vs2015)
- VS2010,VS2012,VS2015等的自动提示不能默认选中的功能解决办法
- LASlib在VS2015 x64平台下的编译
- VS2010 VS2012 VS2013 VS2015启动调试时老是提示正在下载公共符号
- Atitit. visual studio vs2003 vs2005 vs2008 VS2010 vs2012 vs2015新特性 新功能.doc
- VC++6.0 VS2005 VS2008 VS2010 VS2012 VS2013 编译 连接时候到底调用了那些东东
- VS2015编译错误:调用的目标发生了异常--->此实现不是Windows平台FLPS验证的加密算法的一部分。
- 安装完VS2010之后再安装VS2012以后,发现VS工程编译出现--fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
- Qt5.6 windows下vs2015(vs2012)编译ODBC
- VS2010、VS2012、VS2013、VS2015对C++11的支持进度
- Atitit.vs2017 visual studio vs2003 vs2005 vs2008 VS2010 vs2012 vs2015新特性 新功能.docx Atitit. visual st
- websocket 库 "boost.beast" windows 平台 VS2015 编译过程记录