我在Windows上开发,我想使用beanstalkd。它仅作为tarball提供,我只是想知道是否有一些方法可以像在Linux中一样轻松地构建它?我找到了一些用于Windows的gnu make端口,但它们似乎没有工作。源代码分发是否特定于Linux?
当我尝试使用mingw32-make时,它说“无法为文件做什么”。 TBH我不知道该怎么运行它,所以我尝试了tarball,目录,以及Makefile.in和Makefile.am。他们都说同样的话。
答案 0 :(得分:13)
Make在cygwin中可用,您可以通过安装程序安装make。
该包名为“make”,位于“Devel”类别下。
答案 1 :(得分:7)
我找到了一些gnu的端口 Windows,但它们似乎不是 工作
以下是 Windows 的 GNU 工具的几个端口:
我很确定我已经使用了 unxutils 端口中的一些实用程序而没有任何问题。
答案 2 :(得分:3)
我也会考虑使用带有mingw的msys(它也可以在http://mingw.org找到)我可以尝试解释它,但我认为其页面中的描述效果更好
MSYS:一个最小的SYStem,提供与POSIX兼容的Bourne shell环境,以及一小部分UNIX命令行工具。主要是作为执行配置脚本和Makefile用于构建开源软件的手段而开发的,但也可用作替换Windows cmd.exe的通用命令行界面。
使用msys而不是cygwin的一个好处是它构建本机Windows应用程序而不必依赖cygwin兼容性层
答案 3 :(得分:3)
大多数unix源包都要求你运行“configure”,它会读取你系统的一些信息并构建Makefile - 尽管在X11的早期,一些软件包使用“xmkmf”从IMakefiles构建Makefile。只有在完成后才能运行“make”并可能“make install”。从它的声音来看,你没有Makefile,只有Makefile.in(输入配置)。
答案 4 :(得分:2)
Cygwin很不错,正如之前的回答所示,但它包含的不仅仅是make。
我曾经在Windows上使用NMake来构建Perl模块。看看:
http://johnbokma.com/perl/make-for-windows.html
这对Perl很有用。看起来也有一般的GNU端口:
答案 5 :(得分:1)
MSVC包括nmake哪种工作在常规makefile上有一些调整。
答案 6 :(得分:1)
make
实用程序希望使用名为 Makefile 的文件。如果您只输入make
,它会自动找到该文件。如果makefile具有其他名称,请使用-f
选项。如果您只提供没有-f
的文件名,那么make
会将其解释为目标,它应该知道如何制作。
许多只作为源代码的工具假设您将使用Visual C ++在Windows上构建,即使他们假设您将在其他地方使用G ++。寻找Visual C ++ makefile;它通常被命名为 Makefile.mak 。然后运行nmake
。
但是如果您只有名为 Makefile.in 和 Makefile.am 的文件,那么您还没有可用的环境。 Makefile.in 是configure
脚本的输入之一,它将构建真实的makefile,可能是一个或两个特定于您的环境的头,基于{{1}的测试跑。
最后,您下载的软件包在Windows上可能无法编译。即使在Cygwin下,如果没有用Windows编写,也可能需要对源代码进行一些更改。
Makefile.in 将包含最终makefile的基础知识。在我知道我应该做什么之前,我只是将 Makefile.in 重命名为 Makefile 并且相当远。您可以尝试使用该文件作为构建真实Windows makefile的起点,适用于您选择的任何编译器目标。需要耐心;继续关注编译器消息,直到你再也看不到为止。 (然后是链接器。希望你不需要太多其他库!)
答案 7 :(得分:0)
关于替代方案,请查看此link。至于你的make问题,你必须对非工作部分更具体一些。什么不起作用,它是如何表现出来的,它给出了什么错误等等。
答案 8 :(得分:0)
让其他人去做艰苦的工作。这是一个预编译的beanstalkd 1.4.6 exe。
答案 9 :(得分:-2)
解压缩tarball,将cd放入其最顶层的目录并输入'make'。 Make会自动获取Makefile。