ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

Windows 下 C++ primer 5 代码编译 ( namke )

2022-05-11 13:02:14  阅读:241  来源: 互联网

标签:bat x86 Windows namke C++ 编译 64 vcvars64 nmake


C++ primer 源码下载:https://www.informit.com/store/c-plus-plus-primer-9780321714114 选择  “Download the source code files for MS Visual Studio 2012

下载的源码文件夹(局部):

 Visual Studio 2012 README.pdf  提示的编译命令:

# Windows machines
> nmake # compiles all the programs
> nmake clean # removes all the object files and stackdumps
> nmake clobber # removes executable, object and stackdump files

nmake 相当于l inux 中的make, 会调用源码目录的 makefile 进行编译工作。但是 命令提示符 ( cmd )窗口 不能直接执行 nmake , 需要配置一番,调用 Visual Studio 的编译工具。 详情见  从命令行使用 Microsoft C++ 工具集 ,电脑未安装 visual studio 的可以安装 专门的 组件,也可以 直接装 visual studio 。

 

编译环境配置:

 法 一 :

源码根目录编写 compille64.bat ,内容:( vcvars64.bat 路径需要根据 实际情况更改)

@echo off
call "F:\VisualStudio2022Enterprise\VC\Auxiliary\Build\vcvars64.bat"
cmd

vcvars64.bat   用于原编译平台是 64位 目标平台也是 64位 ( 记录:vcvars64.bat 会调用 VsDevCmd.bat)。也可以选择与 vcvars64.bat 同路径的其他几个:

 

它们的区别是:

命令文件主机和目标架构
vcvars32.bat 使用 32 位 x86 原生工具构建 32 位 x86 代码。
vcvars64.bat 使用 64 位 x64-native 工具构建 64 位 x64 代码。
vcvarsx86_amd64.bat 使用 32 位 x86-native 交叉工具构建 64 位 x64 代码。
vcvarsamd64_x86.bat 使用 64 位 x64-native 交叉工具构建 32 位 x86 代码。
vcvarsall.bat 使用参数来指定主机和目标体系结构、Windows SDK 和平台选择。有关支持的选项列表,请使用/help参数调用。

 

 

法 二:

编写  compile.bat 直接调用 VsDevCmd.bat :(VsDevCmd.bat 需根据实际情况更改)

@echo off
call "F:\VisualStudio2022Enterprise\Common7\Tools\VsDevCmd.bat"
cmd

开发人员命令提示符命令文件 VsDevCmd.bat 位于Common7\Tools子目录中。未指定参数时,它将环境设置为使用 x86-native 工具构建 32 位 x86 代码。

 

执行编译:

双击 写好的 compile 64.bat  或者 compile.bat 文件 在 唤起的 cmd 窗口执行 nmake 命令。

 

标签:bat,x86,Windows,namke,C++,编译,64,vcvars64,nmake
来源: https://www.cnblogs.com/Huae/p/16257500.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有