Windows 上是否有相当于 Make 的工具?

发布于 2024-07-13 10:11:37 字数 1542 浏览 5 评论 0原文

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(10

九八野马 2024-07-20 10:11:38

我还会考虑将 msys 与 mingw 一起使用(也可以在 http://mingw.org 找到)我可以尝试解释一下,但我认为他们页面上的描述效果更好

MSYS:一个最小的系统,提供 POSIX 兼容的 Bourne shell 环境,并带有一小部分 UNIX 命令行工具。 主要是作为执行用于构建开源软件的配置脚本和 Makefile 的一种手段而开发的,但也可用作替换 Windows cmd.exe 的通用命令行界面。

与 cygwin 相比,使用 msys 的好处之一是它可以构建本机 Windows 应用程序,而不必依赖 cygwin 兼容层

I would also look into using msys with mingw (it also can be found at http://mingw.org) I could try to explain it but I think the description from their page works better

MSYS: A Minimal SYStem providing a POSIX compatible Bourne shell environment, with a small collection of UNIX command line tools. Primarily developed as a means to execute the configure scripts and Makefiles used to build Open Source software, but also useful as a general purpose command line interface to replace Windows cmd.exe.

One bonus of using msys over cygwin is it builds native windows applications rather than having to rely on the cygwin compatibility layer

情绪失控 2024-07-20 10:11:38

大多数 unix 源代码包要求您运行“configure”,它会读取有关系统的一些信息并构建 Makefile - 尽管在 X11 的早期,某些软件包使用“xmkmf”从 IMakefile 构建 Makefile。 只有完成后,您才能运行“make”,也可能运行“make install”。 从声音上看,您没有 Makefile,只有 Makefile.in(它是配置的输入)。

Most unix source packages require you to run "configure", which reads some info about your system and builds the Makefile - although in the early days of X11, some packages used "xmkmf" to build Makefiles out of IMakefiles. Only after thats done can you run "make" and possibly "make install". From the sound of it, you don't have a Makefile, only the Makefile.in (which is input to configure).

蓝眼睛不忧郁 2024-07-20 10:11:38

正如前面的答案所示,Cygwin 很好,但它不仅仅包含 make。

我曾经在 Windows 上使用 NMake 来构建 Perl 模块。 看看:

http://johnbokma.com/perl/make-for-windows。 html

这对 Perl 很有用。 看起来也有一个通用的 GNU 端口:

http://gnuwin32.sourceforge.net/packages/制作.htm

Cygwin is nice, as the previous answer indicated, but it includes a lot more than just make.

I used to use NMake on Windows to build Perl modules. Check it out:

http://johnbokma.com/perl/make-for-windows.html

That's useful for Perl. Looks like there's a general GNU port, too:

http://gnuwin32.sourceforge.net/packages/make.htm

迷爱 2024-07-20 10:11:38

我想到了 Cygwin 和 mingw。

MSVC 包括 nmake,它可以在常规 makefile 上进行一些调整。

Cygwin and mingw come to mind.

MSVC includes nmake which kind of works on regular makefiles with some tweaking.

嗼ふ静 2024-07-20 10:11:38

make 实用程序期望使用名为Makefile 的文件。 如果您只需输入 make,它就会自动找到该文件。 如果 makefile 有其他名称,请使用 -f 选项。 如果您只提供不带 -f 的文件名,则 make 会将其解释为它应该弄清楚如何制作的目标

许多仅作为源代码提供的工具假设您将使用 Visual C++ 在 Windows 上进行构建,即使它们假设您将在其他任何地方使用 G++。 寻找 Visual C++ makefile; 它通常命名为Makefile.mak。 然后运行nmake。

但是,如果您只有名为 Makefile.inMakefile.am 的文件,那么您还没有可创建的环境。 Makefile.inconfigure 脚本的输入之一,该脚本将根据以下测试构建真正的 makefile,以及可能是特定于您的环境的一两个标头: configure 运行。

最后,您下载的包可能无法真正在 Windows 上编译。 即使在 Cygwin 下,如果源代码不是针对 Windows 编写的,您也可能需要对源代码进行一些更改。

Makefile.in 将包含最终 makefile 的基础知识。 在我知道自己应该做什么之前,我只是将 Makefile.in 重命名为 Makefile 并取得了很大的进展。 您可以尝试使用该文件作为构建真正的 Windows makefile 的起点,无论您选择哪个编译器目标。 这需要耐心; 只需继续关注编译器消息,直到您看不到更多消息为止。 (然后是链接器。希望您不需要太多其他库!)

The make utility expects to use a file named Makefile. If you just type make, it will find that file automatically. If the makefile has some other name, use the -f option. If you just give the file name without -f, then make will interpret it as the target that it should figure out how to make.

A lot of tools that only come as source assume that you'll use Visual C++ to build on Windows, even if they assume you'll use G++ everywhere else. Look for a Visual C++ makefile; it's usually named Makefile.mak. Then run nmake.

But if you only have files named Makefile.in and Makefile.am, then you don't yet have a makable environment. Makefile.in is one of the inputs to the configure script, which will construct the real makefile and maybe a header or two that are specific to your environment, based on tests that configure runs.

In the end, the package you've downloaded might not really be compilable on Windows. Even under Cygwin, you can expect to have to make a few changes to the source code if it hasn't been written with Windows in mind.

Makefile.in will contain the basics of the final makefile. Back before I knew what I was supposed to do, I simply renamed Makefile.in to Makefile and got pretty far. You can try using that file as a starting point for constructing a real Windows makefile, for whichever compiler target you choose. It will take patience; just keep following the compiler messages until you don't see any more. (And then comes the linker. Hope you don't need too many other libraries!)

忆沫 2024-07-20 10:11:38

有关替代方案,请查看此链接。 至于 make 的问题,您必须对非工作部分更加具体。 什么不起作用,它如何表现,它给出什么错误等等。

Concerning the alternatives, check out this link. As far as your problem with make, you'll have to be a little more specific about the non-working part. What doesn't work, how does it manifest, what error it gives and such.

云醉月微眠 2024-07-20 10:11:38

让别人来做艰苦的工作。 这是预编译的 beanstalkd 1.4.6 exe。

Let someone else do the hard work. Here's a precompiled beanstalkd 1.4.6 exe.

爱的故事 2024-07-20 10:11:38

解压 tarball,cd 到其最顶层目录并输入“make”。 Make 将自动获取 Makefile。

Decompress the tarball, cd into its topmost directory and type 'make'. Make will pick up the Makefile automatically.

你是暖光i 2024-07-20 10:11:37

Make 在 cygwin 中可用,您可以通过安装程序安装 make。

该软件包名为“make”,位于“Devel”类别下。

Make is available in cygwin, which you can install make via the installer.

The package is called "make", which is under "Devel" category.

苍风燃霜 2024-07-20 10:11:37

我发现了 gnu make 的一些端口
Windows,但似乎不是
工作。

以下是 GNU 工具到 Windows 的一些移植:

我很确定我已经使用了一些来自 unxutils 端口的实用程序没有问题。

I found some ports of gnu make for
Windows, but they don't seem to be
working.

Here are a few ports of GNU tools to Windows:

I am pretty sure I have used some of the utilities from the unxutils port without problems.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文