gpt4 book ai didi

visual-c++ - 修改 Visual C++ vcvars32.bat 以针对 XP 平台

转载 作者:行者123 更新时间:2023-12-02 07:33:30 25 4
gpt4 key购买 nike

我找到了 Stack Overflow 用户 Eoin 的帖子,展示了他如何针对 VC++ 2012(我使用 2013)修改 vcvars32.bat:

:x86
if not exist "%~dp0bin\vcvars32.bat" goto missing
call "%~dp0bin\vcvars32.bat"
set INCLUDE=%ProgramFiles(x86)%\Microsoft SDKs\Windows\7.1A\Include;%INCLUDE%
set PATH=%ProgramFiles(x86)%\Microsoft SDKs\Windows\7.1A\Bin;%PATH%
set LIB=%ProgramFiles(x86)%\Microsoft SDKs\Windows\7.1A\Lib;%LIB%
set CL=/D_USING_V110_SDK71_;%CL%
goto :SetVisualStudioVersion

这是我修改之前的部分:

:x86
if not exist "%~dp0bin\vcvars32.bat" goto missing
call "%~dp0bin\vcvars32.bat"
goto :SetVisualStudioVersion

应用上述修改后,我使用 CL (cl main.cpp) 构建了一个“hello world”应用程序,但可执行文件无法在 Windows 2003 上运行。如果使用 IDE 构建使用提到的选项,它运行得很好。

有人可以阐明正在发生的事情吗?

附注想要这样做的原因是我需要使用 XP 平台选项构建 Boost 库以允许我的应用程序在 Windows 2003 上运行。没有可用于构建 Boost 的解决方案或项目这是通过命令行使用 Bootstrap 和 Bjam 例程完成的,该例程没有 XP 平台选项。

最佳答案

Stack Overflow Eoin 所建议的一切都是准确的,只是他的答案不包含 %LINK% 的必要设置

这是我的工作:x86 部分:

:x86
if not exist "%~dp0bin\vcvars32.bat" goto missing
call "%~dp0bin\vcvars32.bat"
set INCLUDE=%ProgramFiles(x86)%\Microsoft SDKs\Windows\7.1A\Include;%INCLUDE%
set PATH=%ProgramFiles(x86)%\Microsoft SDKs\Windows\7.1A\Bin;%PATH%
set LIB=%ProgramFiles(x86)%\Microsoft SDKs\Windows\7.1A\Lib;%LIB%
set CL=/D_USING_V110_SDK71_;%CL%
set LINK=/SUBSYSTEM:CONSOLE,5.01 %LINK%
goto :SetVisualStudioVersion

我希望创建需要 XP 和 Windows 2003 兼容性的解决方案的人们会发现这很有用。

完整详细信息:

http://blogs.msdn.com/b/vcblog/archive/2012/10/08/windows-xp-targeting-with-c-in-visual-studio-2012.aspx?PageIndex=2

关于visual-c++ - 修改 Visual C++ vcvars32.bat 以针对 XP 平台,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27695187/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com