【问题标题】:How to compile a cpp file in command line on Windows?如何在 Windows 的命令行中编译 cpp 文件?
【发布时间】:2021-04-17 23:47:52
【问题描述】:

https://github.com/GiacomoLaw/Keylogger/blob/master/windows/klog_main.cpp

我可以按照以下视频(Visual Studio 社区)来编译上述 cpp 文件。 (源文件 -> 添加 -> 新项目 -> C++ 文件 (.cpp))

https://www.youtube.com/watch?v=VWJWUR-UnzQ

但我还希望能够在命令行(在 cmd.exe 或 powershell 中)编译 .cpp 文件。如何弄清楚等效的命令行是什么?

编辑:

我找到了以下cl.exe 文件。我应该使用哪一个来编译和链接?

**********************
Windows PowerShell transcript start
Start time: 20210112173110
Username: MSEDGEWIN10\IEUser
RunAs User: MSEDGEWIN10\IEUser
Configuration Name: 
Machine: MSEDGEWIN10 (Microsoft Windows NT 10.0.17763.0)
Host Application: C:\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell.exe
Process ID: 4300
PSVersion: 5.1.17763.1490
PSEdition: Desktop
PSCompatibleVersions: 1.0, 2.0, 3.0, 4.0, 5.0, 5.1.17763.1490
BuildVersion: 10.0.17763.1490
CLRVersion: 4.0.30319.42000
WSManStackVersion: 3.0
PSRemotingProtocolVersion: 2.3
SerializationVersion: 1.1.0.1
**********************
Transcript started, output file is C:\Users\IEUser\Documents\PowerShell_transcript.MSEDGEWIN10.9UiUmlLU.20210112173110.txt
PS C:\> Get-ChildItem -Path C:\ -Recurse -ErrorAction SilentlyContinue cl.exe


    Directory: C:\Program Files (x86)\Common Files\Microsoft\Visual C++ for Python\9.0\VC\bin


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        7/30/2008   1:05 PM         129520 cl.exe


    Directory: C:\Program Files (x86)\Common Files\Microsoft\Visual C++ for Python\9.0\VC\bin\amd64


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        7/30/2008   2:58 PM         153584 cl.exe


    Directory: C:\Program Files (x86)\Common Files\Microsoft\Visual C++ for Python\9.0\VC\bin\x86_amd64


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        7/30/2008   3:11 PM         128496 cl.exe


    Directory: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.28.29333\bin\Hostx64\x64


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        1/12/2021   8:54 AM         391088 cl.exe


    Directory: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.28.29333\bin\Hostx64\x86


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        1/12/2021   8:54 AM         392624 cl.exe


    Directory: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.28.29333\bin\Hostx86\x64


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        1/12/2021   8:54 AM         326064 cl.exe


    Directory: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.28.29333\bin\Hostx86\x86


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        1/12/2021   8:54 AM         327088 cl.exe


    Directory: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-ar---         6/9/2016  11:46 PM         190600 cl.exe


    Directory: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-ar---         6/9/2016  11:53 PM         229000 cl.exe


    Directory: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64_arm


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-ar---         6/9/2016  11:53 PM         225568 cl.exe


    Directory: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64_x86


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-ar---         6/9/2016  11:53 PM         229664 cl.exe


    Directory: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\x86_amd64


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-ar---         6/9/2016  11:46 PM         190752 cl.exe


    Directory: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\x86_arm


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-ar---         6/9/2016  11:46 PM         187168 cl.exe


    Directory: C:\Windows\servicing\LCU\Package_for_RollupFix~31bf3856ad364e35~amd64~~17763.1637.1.6\amd64_microsoft-wi
    ndows-wid-xtp_31bf3856ad364e35_10.0.17763.1637_none_1ffeac885bc12e07\f


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        12/3/2020   1:13 PM            143 cl.exe


    Directory: C:\Windows\servicing\LCU\Package_for_RollupFix~31bf3856ad364e35~amd64~~17763.1637.1.6\amd64_microsoft-wi
    ndows-wid-xtp_31bf3856ad364e35_10.0.17763.1637_none_1ffeac885bc12e07\r


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        12/3/2020   1:13 PM            143 cl.exe


    Directory: C:\Windows\servicing\LCU\Package_for_RollupFix~31bf3856ad364e35~amd64~~17763.379.1.11\amd64_microsoft-wi
    ndows-wid-xtp_31bf3856ad364e35_10.0.17763.348_none_475b451a0f823259\f


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----         3/8/2019  12:24 AM            143 cl.exe


    Directory: C:\Windows\servicing\LCU\Package_for_RollupFix~31bf3856ad364e35~amd64~~17763.379.1.11\amd64_microsoft-wi
    ndows-wid-xtp_31bf3856ad364e35_10.0.17763.348_none_475b451a0f823259\r


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----         3/8/2019  12:24 AM            143 cl.exe

【问题讨论】:

  • 编译“文件”,还是项目或解决方案?另见docs.microsoft.com/en-us/cpp/build/…
  • 指的是.cpp文件。帖子已更新。
  • 查看链接的文章。构建比编译更多。这个入口点可能更有用。 docs.microsoft.com/en-us/cpp/build/…
  • 在互联网上搜索“Visual Studio 开发环境”。激活开发环境后会容易得多。
  • 你是认真的吗,作为一个不是这里的新成员,希望我去一个网页寻找一些东西,然后在一个广告跟踪网站上观看一个视频,然后再为你提供网站、书籍的链接,工具、软件库等

标签: c++ windows visual-studio powershell cmd


【解决方案1】:

使用 Visual Studio 2017,我使用命令行:
"c:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\devenv.com Your_Solution.sln /Rebuild Release"

在互联网上搜索“Visual Studio devenv”并调查命令行开关。

【讨论】:

    【解决方案2】:
    1. 在path环境变量中添加cl.exe、vcvarsall.bat等路径:

    C:\Program Files (x86)\Windows Kits\10\Include\10.0.17134.0\ucrt;

    C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\bin\Hostx86\x86;

    C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE;

    C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build;

    1. 将路径添加到 INCLUDE 环境变量。如果没有,请创建一个名为 INCLUDE 的新环境变量。

    建议你用VS在Properties->VC++ Directories->Include Directories查看:

    1. 将路径添加到 LIB 环境变量。如果没有,请创建名为 LIB 的环境变量。

    建议你用VS在Properties->VC++ Directories->Library Directories查看:

    1. 然后,您可以使用 cmd cl -EHsc XXX.cpp 编译 .cpp。

    【讨论】:

      猜你喜欢
      • 2017-09-24
      • 1970-01-01
      • 1970-01-01
      • 2020-07-04
      • 1970-01-01
      • 1970-01-01
      • 2015-04-24
      • 2023-03-14
      • 1970-01-01
      相关资源
      最近更新 更多