【问题标题】:Compile C code in Visual Studio in Windows for Linux在 Windows for Linux 中的 Visual Studio 中编译 C 代码
【发布时间】:2020-04-02 08:14:55
【问题描述】:

我在 Windows 中使用 Visual Studio 来开发基本的 C 应用程序。我想为 Linux 编译我的代码,而不需要在我的机器上安装 Linux。那可能吗 ?以及如何?

【问题讨论】:

  • 您无法从 Visual Studio 中编译,但您可以将其用作文本编辑器。但是我并没有真正看到需要在 Windows 本身中编译它。过去,人们使用 telnet 连接到一些远程 Solaris,然后在实际的目标系统上编译它,并可以完全访问 Unix shell。我猜太容易了......
  • @Lundin,我同意。但是,也许 Youssef 没有基于 Linux 的操作系统的机器,并且他不想将它安装在他当前的机器上(对 mem 等进行分区)。所以在这种情况下,这个问题是有道理的。真正的问题是另一个问题:当你没有一台装有 linux 的机器时,你为什么要为 linux 编译?
  • @Leos313 我确信互联网上的某个地方有一些 Linux“沙盒”可以让你在上面玩耍。
  • @Leos313,发给有 Linux 的人 :)
  • 哦,那你可以在你的机器上测试它,但他们必须在他们的机器上编译代码!!编译后的代码并不总是可以发送到其他机器上运行!!小心

标签: c linux visual-studio visual-c++


【解决方案1】:

您需要在某处安装 Linux。如果您可以从 Visual Studio 机器远程访问 linux box、vm 或 WSL 控制台,则可以使用 VS 2019 通过Cross Platform Connection Manager 在任何这些环境中构建和调试大多数应用程序。

以下博客和文档链接是一个不错的起点。

同样,Visual Studio Code 对此也有一些支持:

此致,

【讨论】:

    【解决方案2】:

    是的,这是可能的。 看看thisstackoverflow 问题。

    1. 在您的 Windows 机器上安装 WLS
    2. 使用标准的gcc 指令(或者,更好的是Makefiles 和/或CMake

    示例

    假设你有你的程序:

    //code within filename.c
    #include <stdio.h>
    
    int main(){
        printf("Hello Youssef\n");
        return 0;
    }
    

    然后,在文件夹中运行:

    $ gcc filename.c
    

    然后运行它:

    $ ./a.out
    Hello Youssef
    

    【讨论】:

    • 这将与 ASFAIK 的某些特定于 MSVC 的功能兼容吗?
    • @Youssef13,问题后面的最后一条评论中的答案:您无法发送编译后的代码。通常它不起作用。相反,在您的机器上进行测试并将脚本发送给他们以在他们的机器上编译和运行代码
    【解决方案3】:

    你可以在你的windows电脑上安装VM(虚拟机),然后在虚拟机上安装linux。

    注意:VM 和 linux 均可免费下载

    【讨论】:

    • 这是否意味着无法直接在 Windows 上执行此操作?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-10-01
    • 2016-10-20
    • 2012-05-11
    • 1970-01-01
    • 1970-01-01
    • 2019-04-26
    • 1970-01-01
    相关资源
    最近更新 更多