在一个系统中关联另一个make utility的错误

时间:2014-06-27 17:27:02

标签: c++ qt makefile mingw gnu

我有谷歌如何安装gnu make文件。我按照以下步骤操作:    $ ./configure    $ sh ./build.sh    $ ./make check

不幸的是,当我运行第二个命令时,我的cygwin shell抱怨:

包含在c:\ qt \ tools \ mingw48_32 \ i686-w64-mingw32 \ include \ sys \ stat.h:14:0中的文件中,                  来自./makeint.h:71,                  来自./ar.c:18: ./makeint.h:525:10:错误:' lseek64'的冲突类型  long int lseek();

我知道qt mingw下还有另一个make实用程序,但是我怎样才能继续安装新的make?

1 个答案:

答案 0 :(得分:1)

Cygwin在技术上不支持从FSF下载站点获取GNU make的源代码。并不是说有任何已知的原因导致它不能工作,但它没有经过测试,最后我听说Cygwin的人正在为GNU make维护一些额外的补丁。因此,存在问题并不令我感到惊讶。

请记住,如果您在Cygwin中调用make来构建Cygwin应用程序,那么只应使用Cygwin的Cygwin版本。您应该使用Cygwin的Cygwin版本来构建Cygwin之外的本机Windows内容。不要将它们混合在一起。

您可以按照源代码附带的README.W32文件中的说明构建GNU make for Windows(不是cygwin)的本机版本。您可以通过查找MSYS / MinGW获得二进制版本。

如果您需要Cygwin版本的GNU make,您应该从Cygwin发行版中获取GNU make的源代码并使用它。如果它无法工作,您需要与Cygwin人员沟通。