如何在不从源代码编译的情况下分发小型 C 桌面应用程序? [关闭]

问题描述 投票:0回答:1

我使用 SDL2 在 C 中编写了一个小程序。我习惯于只为自己编写工具并在 Linux 系统上构建它们,但我的一个朋友问我是否可以给他一份副本,以便在他的 Windows 机器上使用。

我的程序是使用 cmake 构建的,理论上我可以在他的机器上从源代码构建它。但是,我真的很想知道更多专业人士如何分发他们的应用程序。

我想这比仅仅使用 gcc 编译程序然后分发生成的 .exe 文件更复杂。

c gcc cmake distribution sdl-2
1个回答
0
投票

你问专业开发人员如何为 Windows 编译程序。

一般情况下,他们会购买一台Windows电脑,或者在虚拟机(virtual computer)中安装Windows。他们将使用该计算机在 Windows 上使用相关的 Windows 工具(如 Microsoft Visual C++)进行编译和测试。

没有 Windows 并且不想购买它只是为了测试的小型开源程序员将依赖一些已经在他们的计算机上安装了 Windows 的志愿者。如果没有人自愿,那么它就不会完成。这就是开源的本质:如果你想要它而没有其他人做过,你就必须自己做。

可以在 Linux* 上编译 Windows 程序,那么为什么拥有一台 Windows 计算机很重要?是用来测试的无论您多么努力,总有可能由于某些愚蠢的原因您的程序无法在真正的 Windows 计算机上运行,因此您需要尝试一下看看。你不会编写一个 Linux 程序,编译它并把它交给别人而不先自己运行它以确保它能正常工作——这同样适用于 Windows。

专业产品的每个版本都在每个操作系统上彻底测试它应该工作。对于免费和开源产品,期望要低得多,并且开发人员根本不制作 Windows 版本或将其制作成别人的问题是很常见的 - 包括编译一个但并不真正关心它是否实际工作的可能性或不。因此,您可以选择不去测试您的程序在 Windows 上的每个版本,除非有人抱怨它不起作用,如果那是您想要做的。但是,我会说编译一个然后甚至一次都不测试它有点毫无意义,因为它很有可能无法工作。所以你仍然需要至少测试一次。

* 通过在 Linux 上安装 Windows 编译器,例如请参阅如何使用 gcc/g++ 在 Linux 上为 Windows 编译?。 Visual C++ not 在 Linux 上运行,但您可以使用 Windows 版本的 gcc,称为 MinGW。

© www.soinside.com 2019 - 2024. All rights reserved.