首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Visual C++命令行编译器(CL.EXE)重定向OBJ文件

以下是关于Visual C++命令行编译器(CL.EXE)重定向OBJ文件的完善且全面的答案:

Visual C++命令行编译器(CL.EXE)是一个用于编译C++源代码的工具,它可以将C++源代码编译成目标文件(.obj),然后再将这些目标文件链接成可执行文件或库文件。

在编译过程中,有时需要将编译器生成的目标文件重定向到指定的目录中,而不是将它们放在源代码所在的目录中。这可以通过使用/Fo(指定对象文件名)选项来实现。

例如,如果要将编译器生成的目标文件放在名为“obj”的目录中,可以使用以下命令:

代码语言:txt
复制
cl /Foobj\ /c source.cpp

这将把source.cpp文件编译成obj目录下的source.obj文件。

此外,也可以使用/Fd(指定程序数据库文件名)选项来重定向程序数据库文件(.pdb)的位置,以及使用/link(传递链接器选项)来指定链接器生成的输出文件名和格式。

总之,Visual C++命令行编译器(CL.EXE)提供了丰富的选项来控制编译过程,其中包括重定向OBJ文件的功能。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 用 powershell 脚本 .ps1 写一个自动化的「编译->链接->运行C++文件」脚本

    这就需要额外学习一点东西了: VC++ 内的微软编译器 MSVC cl.exe 使用? 自动完成「编译->链接->运行C++文件」流程?.../$filename.obj /link /LIBPATH:"D:\Program Files\gecode\lib" 如上,先编译为 .obj ,再链接,链接时别忘了告诉编译器 *.lib 都放在哪里...我们不可能每次运行程序时,都向命令行输入这么长一串命令,于是我想到: 把这个过程写在 makefile 里?...有几点需要注意: ` 是用来换行的 执行编译出的可执行文件需要用 sudo ,这很迷,我做了一点笔记[2]。 如何使用?...当我有一个脚本 abc.cpp ,我只需要在命令行输入 test abc 就可以自动 编译->链接->运行C++文件abc.cpp了!

    1.3K20

    弃用VS转向VS Code

    由于Visual Studio安装即用,门槛低,便于调试,且最开始入门一直使用VS,所以在windows平台一直使用Visual Studio进行开发,但是Visual Studio的体积过于庞大,而且...环境准备 由于VS Code只是编辑器,其默认不支持C/C++开发,所以使用VS Code进行C/C++开发时,需要借助插件,并需要配置编译器和调试器。...如此,在windows平台既可以使用MinGW,也可以使用Visual Studio的编译器和调试器,本文将分别讲解这两种配置方式。...仅以g++为例,修改后的task.json文件如下: { "type": "cppbuild", "label": "C/C++: cl.exe 生成活动文件", "command...此处以VS配置为例,修改器task.json文件中对应的task如下: { "type": "cppbuild", "label": "C/C++: cl.exe 生成活动文件",

    27410

    MSVC + VS code搭建CC++开发环境

    引言 微软C++编译器(Microsoft Visual C++,简称MSVC)是由微软公司开发的C和C++编译器,广泛应用于Windows平台上的软件开发。...高效的优化:MSVC的编译器具有强大的优化能力,能够在编译过程中对代码进行多种优化,从而生成高性能的可执行文件。 调试和诊断工具:MSVC集成了强大的调试器,支持断点调试、内存检查、性能分析等功能。...使用MSVC编译C/C++程序 使用MSVC编译C/C++程序可以通过命令行工具或集成开发环境完成。...编译C/C++程序: 在命令提示符中,导航到包含源代码的目录,输入以下命令进行编译: shell cl /EHsc your_program.cpp 该命令将编译your_program.cpp文件并生成可执行文件...结论 微软C++编译器(MSVC)是一个功能强大、性能优越的编译器,适用于各种规模的C/C++项目。

    44111

    解决问题使用The build tools for v141 (Platform Toolset = v141) cannot be found

    以下是v141构建工具的一些主要组成部分:编译器(Compiler):v141构建工具使用Visual C++编译器cl.exe)来将C++源代码转换为目标代码。...编译器负责识别和解析源代码,并将其翻译成机器可执行代码。链接器(Linker):链接器(link.exe)将编译器生成的目标代码与其他库文件进行链接,以创建最终的可执行文件。...它处理符号解析、地址重定向和库依赖关系等任务。构建系统(Build System):v141构建工具提供了一个灵活的构建系统(msbuild.exe),用于自动化构建过程。...构建系统可以根据项目文件(.vcxproj)中的设置编译和链接代码,处理依赖关系,并生成最终的可执行文件。...库文件(Library Files):v141构建工具提供了一系列的库文件,用于在项目中使用各种功能和功能扩展。这些库文件可以在编译和链接过程中被引用,以便在应用程序中使用它们的功能。

    83410

    C++概述

    (2)编译器把每个.cpp文件(源文件)转换为.o或者.obj文件(对象文件):包含了源文件内容对应的机器码 (3)链接程序把程序的.obj文件合并到包含完整可程序程序的文件中(.exe) *2.3...命令行下使用微软编译器理解编译和运行的机制 cl HelloWorld.cpp /c # 只编译,不链接 cl HelloWorld.obj /link # 链接生成 .exe 文件...cl HelloWorld.cpp # 编译、链接生成 .exe 文件 如果要使用微软编译器cl在控制台编译及链接C++程序,需要进行相关的配置: 注意:在不同操作系统或不同 VS...版本,示例路径可能会稍有不同 1、添加cl.exe的路径到环境变量path中 E:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools...“libcpmt.lib”或者其他lib文件,继续步骤3 3、在系统变量LIB(大写;没有就自己创建)中添加以下路径: E:\Program Files\Microsoft Visual Studio\

    88930

    UE4的UBT编译单个cpp过程梳理

    文件中(这个就是编译的主要内容)根据Unity Build策略,合并一个Module.XXX.cpp执行一个ExcuteAction,在window上里面的内容就是一个带参数的 cl-filter命令行...\Development\XXX\Module.XXX.cpp.obj.response找到这个编译参数文件图片这个文件直接决定了后面cl-filter以及cl的编译全部内容ExcuteAction这个构造了对应的...cl-filter的命令参数主要有 cl的路径位置,输出的log位置,以及上面提到的response文件查看这个参数的方法可以直接断点看,图片或者加-Verbose参数激活图片图片一个命令行参数大概长这样...)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.28.29333\bin\HostX64\x64\cl.exe" @"G:\G6...,可以attach或者加上上面的命令行参数进行调试最终执行的cl.exe,就是使用cl-filter后面的那些参数(主要是response文件)但是我们需要在Unreal程序的\Engine\Source

    2.5K10

    bjam 参数

    对于每一种特性,向标记中添加一个字母: Key Use this library when: s 静态链接到C++标准库和编译器运行时支撑库 g 使用标准库和运行时支撑库的调试版本 y 使用Python...(也就是VC的编译器)会根据上述编译选项在编译成的obj文件中植入相应的defaultlib文件名(使用DUMPBIN /DIRECTIVE ***,lib可以查看),如/MT对应的就是LIBCMT.LIB...当链接器处理该obj文件时,会从文件中取出该defaultlib文件名,将其放在命令行库列表的最后以供使用。...对于静态库的处理也是如此,静态库也是由一些obj文件组成的,每个obj文件中也根据当时的编译选项被植入了相应的defaultlib。...当链接器处理静态库时,也会将涉及到的obj文件中的defaultlib放在命令行库列表的最后。

    21620

    【转】从零开始手敲次世代游戏引擎(二)

    开始摆脱Visual Studio,建立独立的Toolchain 上一篇我们写了一个最基本的Hello Engine,并用Visual Studio的命令行工具,cl.exe进行了编译。...然而,Visual Studio只能在Windows上面使用。而且Visual Studio对C/C++进行了很多非标准的扩展。...况且,在不同平台上面,虽然都有C/C++编译器,能够编译C/C++代码,但是各种库的头文件、静态链接库、动态链接库的存储位置,甚至是名字都会有很微妙的差异。...编译产生的输出,也就是中间文件main.obj,target文件main.exe都是和main.c在一个目录里的。...最为关键的是,如果我们的代码支持一些编译选项,可以从一套代码里编译出不同的版本(比如最常见的,Debug版和Release版),那么不同编译选项编译所生成的中间文件就会相互覆盖,最后搞得编译器也弄不清楚哪些文件编译过

    1.5K20

    Pytorch的C++端(libtorch)在Windows中的使用

    测试GPU端的libtorch 在Windows端,因为我们从官方下载的OpenCV预编译版本是利用MSVS编译的,也就是我们常说的Visual Studio编译工具,所以我们接下来使用的编译器就是Visual...Studio自带的编译器,为此我们需要安装: Visual Studio 2015或者2017(两个都测试过,都是可以的!)...目录结构大概就是这样,假设这个文件夹存放在D盘: example — build — main.cpp — CMakeLists.txt 好了,我们打开Window的命令行界面,进入该目录,再进入...的位置信息,然后这里我选择-G"Visual Studio 14 Win64"执行编译器是VS2015的编译工具,如果是2017的话就是-G"Visual Studio 15 Win64这里根据自己的需要进行调整...Visual Studio 14.0/VC/bin/x86_amd64/cl.exe -- works -- Detecting C compiler ABI info -- Detecting C

    94240

    C++最佳实践 | 6. 性能

    本系列是开源书C++ Best Practises[1]的中文版,全书从工具、代码风格、安全性、可维护性、可移植性、多线程、性能、正确性等角度全面介绍了现代C++项目的最佳实践。...隔离频繁更改的头文件 不要包含不需要的头文件 编译器必须处理看到的每个include指令,即使只是在看到#ifndefinclude保护符后立即停止,仍然必须打开文件并进行处理。...考虑使用预编译头文件 使用预编译头文件可以大大减少大型项目的编译时间,选定的头文件被编译成中间形式(PCH文件),编译器可以更快处理。...大多数常见的编译器都支持预编译头文件,比如GCC[7]、Clang[8]和Visual Studio[9]。...ccache[11],用于类unix操作系统的编译结果缓存 clcache[12],cl.exe的编译结果缓存(MSVC) warp[13],Facebook的预处理器 将tmp放在Ramdisk上 详见

    79621
    领券