gpt4 book ai didi

c - 用 Visual Studio 2017 编写的程序可以在 Linux 或 Unix 环境中运行吗?

转载 作者:行者123 更新时间:2023-11-30 20:09:22 25 4
gpt4 key购买 nike

我现在对一件事很困惑。我目前正在用 C 进行编程,我很困惑这是否算作 Unix 或 Linux 环境。我真的需要下载 Linux 端口吗?或者我可以使用 Visual Studio 吗?问题是我写的程序将通过linux/unix进行评分。

最佳答案

您的问题没有简短的答案。考虑:

  • 默认情况下,Visual Studio 2017 的 C++ 工具链仅生成 Win32 PE executable files (*.exe*.dll 等)仅在 Windows Vista 或更高版本上运行(Windows XP 支持需要可选的 VS 组件)。
  • 默认情况下,Linux 无法运行这些 Win32 PE 可执行文件,但您可以安装 Wine 来尝试在同一 CPU 指令集上的 Linux 安装上运行它们。 Wine 使 Linux 能够运行 Win32 PE 可执行文件,并提供类似 Windows 的运行时环境(注册表、模拟 C:\Windows 路径等)供其运行: https://www.winehq.org/
  • Visual Studio 2017 可以使用两种不同的方法交叉编译到 Linux、macOS、iOS 和其他操作系统:
    • Visual Studio 2017 的首选方法是使用远程构建服务器:您的本地网络上有一台 Linux 或 Macintosh 计算机,该计算机运行构建代理进程,然后该进程在该远程计算机上构建软件,将构建工具链保留在远程计算机上。 Linux/Mac,甚至可以通过在附加远程调试器的远程计算机上运行程序来进行调试支持。
    • 另一种方法是使用在本地计算机上运行的交叉编译工具链来使用自定义 makefile。您可能需要安装 Cygwin 或 MINGW 等环境。
  • 除了 Wine 之外,所有其他选项都假设您的 C++ 代码实际上是可移植的:您不使用任何特定于平台的 API(即您坚持使用 C++ 标准库)或者您正在使用带有条件编译的特定于平台的 API .
  • 另请记住,“Linux”不是单一平台:为 Ubuntu 16.0 x64 构建的二进制可执行文件可能无法在 RedHat x64 上运行,尤其无法在 FreeBSD 或 OpenBSD 上运行(它们不是 Linux,而是一种形式) Unix)。

关于c - 用 Visual Studio 2017 编写的程序可以在 Linux 或 Unix 环境中运行吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52978421/

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