0

我正在尝试使用 mingw32-make (gcc 4.7.0) 对 Qt (4.8.1) 进行静态构建,以便为了易于使用/交付而静态链接我的应用程序。

不过,我一直从 mingw32-make 收到一个奇怪的错误,我不明白。

../3rdparty/javascriptcore/JavaScriptCore/runtime/JSGlobalObject.h:270:103: warning: control reaches end of non-void function [-Wreturn-type]
Makefile.Release:2033: recipe for target 'obj/release/JSBase.o' failed
mingw32-make[2]: *** [obj/release/JSBase.o] Error 1
mingw32-make[2]: Leaving directory 'C:/StaticQt/qt/src/script'
Makefile:34: recipe for target 'release' failed
mingw32-make[1]: *** [release] Error 2
mingw32-make[1]: Leaving directory 'C:/StaticQt/qt/src/script'
Makefile:1360: recipe for target 'sub-script-sub_src_target_ordered' failed
mingw32-make: *** [sub-script-sub_src_target_ordered] Error 2

查看相关的 Makefile.Release 文件,在指示的行上,我发现这些:

Makefile.Release 2033: $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/release/JSBase.o ../3rdparty/javascriptcore/JavaScriptCore/API/JSBase.cpp
Makefile.Release 1360: $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/release/pcre_compile.o ../3rdparty/javascriptcore/JavaScriptCore/pcre/pcre_compile.cpp
Makefile 34: $(MAKE) -f $(MAKEFILE).Release

我真的对makefile知之甚少,所以不知道这些行是什么意思。对此的任何帮助将不胜感激。

编辑:我刚刚想到它可能对人们了解我使用的命令行参数很有用......好吧,我遵循了这个指南:http ://www.qtcentre.org/wiki/index.php?title=Building_static_Qt_on_Windows

4

1 回答 1

0

由于某种原因,代码中存在语法错误。在我下载它之前,一定有人用错误的代码更新了 Qt Git。我从其他地方获得了代码,并设法使用 Visual Studio 的 nmake 来编译它……结果证明我使用的是 mingw 还是 vc2008 并不重要。

于 2012-10-15T17:33:29.560 回答