草庐IT

.net - 命令行 Windows 编译器 (cl.exe) 目标

在.NET编译器(csc.exe)中,我可以使用选项/target:exe编译成一个exe,使控制台保持打开状态,这样我就可以看到一些stderr或`stdout``输出。但是,我无法使用C/C++编译器(cl.exe)实现相同的功能。我的程序使用WinMain,这意味着它是一个完整的UI应用程序。这就是我需要保留控制台的原因。 最佳答案 创建控制台应用程序所需的标志是/subsystem:console,查看MSDN文档aboutit.它实际上是链接器阶段的标志:link/out:foo.exe/subsystem:console

c - 错误 C2059 : syntax error : 'bad suffix on number' with cl. exe vc 编译器

我尝试编译的代码片段是这样的VOIDPTSetPageAttributexxyy(INUINT642g,INUINT64Base,INUINT64Length,INUINT32Ra,INUINT32Wa,INUINT32Xa,INMY_ATTRIBUTE_SETTINGsetting);我得到:errorC2059:syntaxerror:'badsuffixonnumber'用cl.exevc编译器 最佳答案 参数名称2g无效。它必须以字母或_开头。 关于c-错误C2059:synta

windows - 在 Windows 上使用 cl.exe 手动编译源代码应该包含哪些目录?

如何设置-Icl.exe参数以使我的原始.cpp文件能够编译?我不希望通过调用DeveloperCommandPrompt或vsvars32.bat文件或任何其他将为我设置所有环境变量的.bat文件来完成此操作。我需要知道在我的-I选项中指向什么路径。我的.cpp文件不包含特殊内容。它仅依赖于通常的STL/系统文件。这是包含的内容。#include#include#include#include#include#include#include#include#include#include#include#include 最佳答案

windows - 如何在 PowerShell 上使用 cl 命令?

我无法在PowerShell中使用cl命令。我尝试将以下命令添加到我的PowerShell配置文件中以执行vcbuildtools.bat,但PowerShell无法识别PowerShell上的cl命令?&"C:\ProgramFiles(x86)\MicrosoftVisualC++BuildTools\vcbuildtools.bat"操作系统:Windows10 最佳答案 需要说明的是,我正在解决提问者的问题,即cl即使在PowerShell中运行之后也不在PATH中&"C:\ProgramFiles(x86)\Microso

c - 尝试用 cl.exe 编译

抱歉,如果这是一个简单的问题,我不会在Windows中进行太多编程。我安装了VisualStudio,但当我尝试从命令行执行“cl”时,它告诉我它未被识别为命令!我如何获得cl? 最佳答案 打开VisualStudio命令提示窗口,它会自动为您设置正确的路径和其他设置。如果您做不到,这里有手动操作的说明:http://msdn.microsoft.com/en-us/library/f2ccy3wt(VS.80).aspx 关于c-尝试用cl.exe编译,我们在StackOverflow

c++ - 构建通用应用程序时编译器和库版本之间的 cl.exe 不匹配

我正在尝试从命令行使用cl.exe构建Windows通用应用程序。我已经从其中一个VisualStudio模板粘贴了命令行参数,但我仍然无法使其正常工作。我收到以下错误:F:\ProgramFiles(x86)\MicrosoftVisualStudio14.0\VC\INCLUDE\vccorlib.h(348):errorC3940:'EventRegistrationToken':identifiernotfound-possiblemismatchbetweencompilerandlibraryversions.Pleaseensurevccorlib.h/.lib,vcco

windows - cl.exe 标志或设置以在/O1 或更高级别禁用尾调用优化(相当于 gcc -fno-optimize-sibling-calls)

我从事一个项目,我们维护自己的堆栈爬虫(出于各种原因)。我们需要能够以一定的可靠性抓取堆栈。目前我们遇到了一个问题,函数尾部调用了我们感兴趣的函数,并且我们的堆栈跟踪跳过了调试构建(/Od)中会出现的帧。我们已经禁用了帧指针优化和内联(/Oy-和/Ob0),因此我们可以获得更好的堆栈跟踪,但我们仍然希望能够启用一些优化(/O1)以使代码更快。但是,尾调用仍然会干扰我们的堆栈跟踪。是否有任何标志或设置可以在MSVC中禁用此优化?gcc有-f(no-)optimize-sibling-calls,涵盖了这一点。 最佳答案 不,您可以将尾

c++ - 如何在 Windows 64 位机器上将 C++ 应用程序编译为 x64 模式?

我已经安装了WindowsSDK7.1平台工具,并打开了一个名为MicrosoftWindows7x64DebugBuildEnvironment的终端。现在我想使用cl.exe命令编译一个C++应用程序(名为main.cpp)。编译命令为:clmain.cpp然后,它输出main.obj和main.exe文件。但是当我尝试运行main.exe时,它在begincomputingdist之后和endcomputingdist.之前崩溃了。我想我应该编译应用程序进入x64程序。请问有人可以给点建议吗?main.cpp如下:#include#include#ifdef_MSC_VERtyp

c++ - 如何更改 C 编译器而不以 cl.exe 开关结束?

我正在尝试使用CMAKE通过CMAKE在Windows中运行Arduino编译器。我创建了一个小的.cmake文件,它可以定位和覆盖一些工具链变量,例如CMAKE_C_COMPILER。这在Linux上效果很好。一切都在被发现和build。在Linux中,我使用的是UNIXMakefiles生成器。但是,当我转到Windows时,我遇到了问题。我想让NMake和VisualStudio生成器都工作。如果我必须选择一个,我会选择最不复杂的(NMake)NMake生成器坚持为cl.exe添加命令行开关(/nologo、/DWIN32等),这些会产生错误并停止构建。NMake生成器确实使用a

python - Cython 包装器使用 cl.exe (windows) 将 .c 文件编译为 .pyd

目录结构Cextended_API_504/lib/Cextended.dllCextended.liblibcextended.asrc/Cextended.hCextendedEx.cCextendedEx.hexample/Demo.ccompileDemo.batcompileDemo.shCextendedPy.pyxcompile.batcompile.shCextendedPy.pyxcdefexternfrom"Cextended.h":...cdefexternfrom"CextendedEx.h":...cdefclasswrapper:...Cextended_A