[已解决](有点:):我可以使用同一系统构建2.4.10版本,而没有任何问题。我将只使用此旧版本。它似乎缺少“ harfbuzz”,但无论如何我都想要一个最小的系统,所以还可以。 [已解决的结束]
我的构建系统是Msys2 / mingw64。我最近从Msys2 WEB站点安装了它。它在Windows 7 Ultimate 64位下运行。我试图建立Freetype2库(版本2.9.1)。我首先运行以下命令:
./configure --host=x86_64-w64-mingw32 --with-zlib=no --with-bzip2=no
--with-png=no --with-harfbuzz=no --with-old-mac-fonts=no
Yaakov在此处的Stackoverflow建议“ ./configure --host = x86_64-w64-mingw32”部分:
Compile freetype-2.4.9 with MinGW-w64/Cygwin
他声称这没有任何问题。其他选项是我的补充(我想要一个没有外部依赖项的最小库)。
结果如下:
config.status: creating ftoption.h
config.status: creating unix-cc.mk
config.status: creating unix-def.mk
config.status: creating ftconfig.h
config.status: executing libtool commands
configure:
Library configuration:
external zlib: no
bzip2: no
libpng: no
harfbuzz: no
make: Nothing to be done for 'unix'.
然后我尝试运行“ make”并得到以下错误:
$ make
builds/toplevel.mk:169: /home/xxxx/freetype-2.9.1/builds/modules.mk: No
such file or directory
make: *** No rule to make target '/home/xxxx/freetype-2.9.1/builds
modules.mk'. Stop.
因此在Makefile中没有正确设置顶层目录(配置错误?)。将Makefile TOP_DIR设置为“ d:/Msys2/home/xxxx/freetype-2.9.1”后,出现以下错误:
d:/Msys2/home/xxxx/freetype-2.9.1/builds/toplevel.mk:169: /home/xxxx
/freetype-2.9.1/builds/modules.mk: No such file or directory
make: *** No rule to make target '/home/xxxx/freetype-2.9.1/builds
/modules.mk'. Stop.
所以看起来变量'TOP_DIR'现在在Makefile中是正确的,但是没有传递给包含的'toplevel.mk'。我什至试图在“ toplevel.mk”本身中初始化TOP_DIR,但它不起作用,我遇到了同样的错误。
如果有人能告诉我如何消除此错误并构建lib,我将不胜感激。谢谢!