我试图在Mac OS X 10.6.8上使用XFT支持编译perl-tk,但遇到了一些问题。
首先是运行
perl Makefile.PL XFT = 1
产生以下输出(总之,找不到freetype.h头,并且无法识别XFT参数):
macmini:Tk-804.030 sjurisic$ perl Makefile.PL XFT=1
perl is installed in /usr/local/ActivePerl-5.8/lib okay
PPM for perl5.008009
Test Compiling config/perlrx.c
Test Compiling config/pmop.c
Test Compiling config/pregcomp2.c
Test Compiling config/regexp511.c
Test Compiling config/signedchar.c
Test Compiling config/Ksprintf.c
Test Compiling config/svtrv.c
Test Compiling config/tod.c
Test Compiling -DTIMEOFDAY_TZ config/tod.c
TZ gettimeofday()
Using -L/usr/X11R6/lib to find /usr/X11R6/lib/libX11.dylib
Using -I/usr/X11R6/include to find /usr/X11R6/include/X11/Xlib.h
Cannot find freetype.h include file
WARNING: DISTVNAME is not a known parameter.
'DISTVNAME' is not a known MakeMaker parameter name.
'XFT' is not a known MakeMaker parameter name.
答案 0 :(得分:1)
您可以尝试在Perl / Tk发行版中调整myConfig,以便为freetype包含添加其他搜索路径。这就是
行my $ftinc = Ift("/usr/include","/usr/local/include",$X11INC||());
您可以在其中添加“/ usr / X11 / include”。
如果libXft.so不在/ usr / local / lib或任何其他标准库路径中,那么您可能还需要将my $ftlib =
定义调整为以下几行。
无论你是否成功,这都值得在https://rt.cpan.org/Ticket/Create.html?Queue=Tk
中买单 BTW,在Tk 804.031中默认设置XFT = 1,因此您不必再在perl Makefile.PL
调用中指定它。关于'XFT' is not a known MakeMaker parameter name.
的警告只是一个MakeMaker工件,可能会被忽略。