在构建 GD 时必须找到的自定义目录中构建 freetype2
Building freetype2 in a custom directory which must be found when building GD
在我的 Ubuntu 16.04 上,我正在尝试构建 freetype-2.8
和 libgd-2.2.4
。
以下是我构建 freetype2 的方法:
./configure \
--prefix=/home/stephane/programs/install \
--with-bzip2
make
make install
make clean
以下是我构建 libgd 的方式:
./configure \
--prefix=/home/stephane/programs/install \
--with-jpeg=/home/stephane/programs/install \
--with-png=/home/stephane/programs/install \
--with-freetype=/home/stephane/programs/install \
--with-zlib=/home/stephane/programs/install \
--with-xpm
configure
命令报告它发现 freetype2
:
Support for Freetype 2.x library: yes
但是 make 失败并出现错误:
gdft.c:154:22: fatal error: ft2build.h: No such file or directory
我可以看到 freetype2
安装在以下目录中:
$ ll /home/stephane/programs/install/lib/libfreetype.*
-rw-r--r-- 1 stephane stephane 6752986 août 11 06:39 /home/stephane/programs/install/lib/libfreetype.a
-rwxr-xr-x 1 stephane stephane 1068 août 11 06:39 /home/stephane/programs/install/lib/libfreetype.la*
lrwxrwxrwx 1 stephane stephane 21 août 11 06:39 /home/stephane/programs/install/lib/libfreetype.so -> libfreetype.so.6.14.0*
lrwxrwxrwx 1 stephane stephane 21 août 11 06:39 /home/stephane/programs/install/lib/libfreetype.so.6 -> libfreetype.so.6.14.0*
-rwxr-xr-x 1 stephane stephane 3219752 août 11 06:39 /home/stephane/programs/install/lib/libfreetype.so.6.14.0*
$ ll /home/stephane/programs/install/include/freetype2/
total 16
drwxrwxr-x 3 stephane stephane 4096 août 11 06:39 ./
drwxrwxr-x 4 stephane stephane 4096 août 11 06:59 ../
drwxrwxr-x 3 stephane stephane 4096 août 11 06:39 freetype/
-rw-r--r-- 1 stephane stephane 2383 août 11 06:39 ft2build.h
并且 /home/stephane/programs/install/include/
目录中没有 freetype2
个头文件:
$ ll /home/stephane/programs/install/include/
total 252
drwxrwxr-x 4 stephane stephane 4096 août 11 06:59 ./
drwxrwxr-x 9 stephane stephane 4096 août 10 23:20 ../
drwxrwxr-x 3 stephane stephane 4096 août 11 06:39 freetype2/
-rw-r--r-- 1 stephane stephane 1757 août 11 00:24 jconfig.h
-rw-r--r-- 1 stephane stephane 14580 août 11 00:24 jerror.h
-rw-r--r-- 1 stephane stephane 14925 août 11 00:24 jmorecfg.h
-rw-r--r-- 1 stephane stephane 49287 août 11 00:24 jpeglib.h
drwxrwxr-x 2 stephane stephane 4096 août 11 05:59 libpng16/
lrwxrwxrwx 1 stephane stephane 18 août 11 05:59 pngconf.h -> libpng16/pngconf.h
lrwxrwxrwx 1 stephane stephane 14 août 11 05:59 png.h -> libpng16/png.h
lrwxrwxrwx 1 stephane stephane 21 août 11 05:59 pnglibconf.h -> libpng16/pnglibconf.h
-rw-r--r-- 1 stephane stephane 35028 août 11 06:49 t1tables.h
-rw-r--r-- 1 stephane stephane 16262 août 5 14:37 zconf.h
-rw-r--r-- 1 stephane stephane 96239 août 5 14:37 zlib.h
如何让 freetype2
在预期的 include
目录中安装其头文件?
注意:我知道我可以使用 sudo apt-get install -y libfreetype6-dev
安装软件包,但这不是我想要的。我想自己搭建。
我将 GD 版本升级到 libgd-2.2.5
,但仍然出现完全相同的错误。
通过使用 freetype
的 2.7.1
版本,我可以很好地构建 GD。
在 freetype
中从 freetype-2.7.1
到 freetype-2.8.*
发生了一些变化,破坏了 libgd-2.2.4
或 libgd-2.2.5
的构建。
在我的 Ubuntu 16.04 上,我正在尝试构建 freetype-2.8
和 libgd-2.2.4
。
以下是我构建 freetype2 的方法:
./configure \
--prefix=/home/stephane/programs/install \
--with-bzip2
make
make install
make clean
以下是我构建 libgd 的方式:
./configure \
--prefix=/home/stephane/programs/install \
--with-jpeg=/home/stephane/programs/install \
--with-png=/home/stephane/programs/install \
--with-freetype=/home/stephane/programs/install \
--with-zlib=/home/stephane/programs/install \
--with-xpm
configure
命令报告它发现 freetype2
:
Support for Freetype 2.x library: yes
但是 make 失败并出现错误:
gdft.c:154:22: fatal error: ft2build.h: No such file or directory
我可以看到 freetype2
安装在以下目录中:
$ ll /home/stephane/programs/install/lib/libfreetype.*
-rw-r--r-- 1 stephane stephane 6752986 août 11 06:39 /home/stephane/programs/install/lib/libfreetype.a
-rwxr-xr-x 1 stephane stephane 1068 août 11 06:39 /home/stephane/programs/install/lib/libfreetype.la*
lrwxrwxrwx 1 stephane stephane 21 août 11 06:39 /home/stephane/programs/install/lib/libfreetype.so -> libfreetype.so.6.14.0*
lrwxrwxrwx 1 stephane stephane 21 août 11 06:39 /home/stephane/programs/install/lib/libfreetype.so.6 -> libfreetype.so.6.14.0*
-rwxr-xr-x 1 stephane stephane 3219752 août 11 06:39 /home/stephane/programs/install/lib/libfreetype.so.6.14.0*
$ ll /home/stephane/programs/install/include/freetype2/
total 16
drwxrwxr-x 3 stephane stephane 4096 août 11 06:39 ./
drwxrwxr-x 4 stephane stephane 4096 août 11 06:59 ../
drwxrwxr-x 3 stephane stephane 4096 août 11 06:39 freetype/
-rw-r--r-- 1 stephane stephane 2383 août 11 06:39 ft2build.h
并且 /home/stephane/programs/install/include/
目录中没有 freetype2
个头文件:
$ ll /home/stephane/programs/install/include/
total 252
drwxrwxr-x 4 stephane stephane 4096 août 11 06:59 ./
drwxrwxr-x 9 stephane stephane 4096 août 10 23:20 ../
drwxrwxr-x 3 stephane stephane 4096 août 11 06:39 freetype2/
-rw-r--r-- 1 stephane stephane 1757 août 11 00:24 jconfig.h
-rw-r--r-- 1 stephane stephane 14580 août 11 00:24 jerror.h
-rw-r--r-- 1 stephane stephane 14925 août 11 00:24 jmorecfg.h
-rw-r--r-- 1 stephane stephane 49287 août 11 00:24 jpeglib.h
drwxrwxr-x 2 stephane stephane 4096 août 11 05:59 libpng16/
lrwxrwxrwx 1 stephane stephane 18 août 11 05:59 pngconf.h -> libpng16/pngconf.h
lrwxrwxrwx 1 stephane stephane 14 août 11 05:59 png.h -> libpng16/png.h
lrwxrwxrwx 1 stephane stephane 21 août 11 05:59 pnglibconf.h -> libpng16/pnglibconf.h
-rw-r--r-- 1 stephane stephane 35028 août 11 06:49 t1tables.h
-rw-r--r-- 1 stephane stephane 16262 août 5 14:37 zconf.h
-rw-r--r-- 1 stephane stephane 96239 août 5 14:37 zlib.h
如何让 freetype2
在预期的 include
目录中安装其头文件?
注意:我知道我可以使用 sudo apt-get install -y libfreetype6-dev
安装软件包,但这不是我想要的。我想自己搭建。
我将 GD 版本升级到 libgd-2.2.5
,但仍然出现完全相同的错误。
通过使用 freetype
的 2.7.1
版本,我可以很好地构建 GD。
在 freetype
中从 freetype-2.7.1
到 freetype-2.8.*
发生了一些变化,破坏了 libgd-2.2.4
或 libgd-2.2.5
的构建。