Home  >  Q&A  >  body text

linux - php7.0.13 安装完成gd库没有freetype

linux小白,red hat 7.0 下安装php 7.0.13,完成之后在phoinfo中的gd扩展内没有freetype。

编译脚本

./configure --with-apxs2=/usr/local/apache/bin/apxs  --prefix=/usr/local/php --with-gd --with-freetype-dir=/usr/include/freetype2/freetype

freetype使用yum安装的,位置就在/usr/include/freetype2/freetype,编译完成并安装php之后,貌似并没有装上freetype。试了好几遍都不行,初入linux,也不知道问题出在哪。麻烦帮忙看看。

下图是phpinfo中的gd库信息,可见gd库是装上了的。

ringa_leeringa_lee2654 days ago942

reply all(1)I'll reply

  • 阿神

    阿神2017-04-10 17:55:57

    之前写过一个安装备忘[cetnos 7],直接粘过来了.
    freetype截图:

    安装依赖程序包

    yum install libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel

    安装php

    configure

    ./configure --prefix=/alidata/server/php-7.0.5  --enable-fpm --with-fpm-user=nginx  --with-fpm-group=nginx --enable-inline-optimization --disable-debug --disable-rpath --enable-shared  --enable-soap --with-libxml-dir --with-xmlrpc --with-openssl --with-mcrypt --with-mhash --with-pcre-regex --with-sqlite3 --with-zlib --enable-bcmath --with-iconv=/usr/local --with-bz2 --enable-calendar --with-curl --with-cdb --enable-dom --enable-exif --enable-fileinfo --enable-filter --with-pcre-dir --enable-ftp --with-gd --with-openssl-dir --with-jpeg-dir --with-png-dir --with-zlib-dir  --with-freetype-dir --enable-gd-native-ttf --enable-gd-jis-conv --with-gettext --with-gmp --with-mhash --enable-json --enable-mbstring --enable-mbregex --enable-mbregex-backtrack --with-libmbfl --with-onig --enable-pdo --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-zlib-dir --with-pdo-sqlite --with-readline --enable-session --enable-shmop --enable-simplexml --enable-sockets  --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-wddx --with-libxml-dir --with-xsl --enable-zip --enable-mysqlnd-compression-support --with-pear --enable-opcache
    

    缺少libiconv

    wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
    tar -zxvf libiconv-1.14.tar.gz
    cd libiconv-1.14.1
     ./configure --prefix=/usr/local
    make && make install

    注意

    1. 这里的--prefix 和 php里的--with-iconv值保持一致

    2. 将安装包下文件 :srclib/stdio.in.h _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); 改为

    #if defined(__GLIBC__) && !defined(__UCLIBC__) && !__GLIBC_PREREQ(2, 16)
     _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
    #endif 

    编译时内存不足

    virtual memory exhausted: Cannot allocate memory
    make: *** [ext/fileinfo/libmagic/apprentice.lo] Error 1

    解决:添加swap交换内存

    #1.进入目录
    cd /var
    #2.获取要增加的SWAP文件块(这里以1GB为例)
    dd if=/dev/zero of=swapfile bs=1024 count=1038336
    #3.创建SWAP文件
    /sbin/mkswap swapfile
    #4.激活SWAP文件
    /sbin/swapon swapfile
    #5.查看SWAP信息是否正确
    /sbin/swapon -s
    #6.添加到fstab文件中让系统引导时自动启动
    echo "/var/swapfile swap swap defaults 0 0" >>/etc/fstab

    操作示例

    [root@iZ25uog2aivZ var]# dd if=/dev/zero of=swapfile bs=1024 count=1038336
    1038336+0 records in
    1038336+0 records out
    1063256064 bytes (1.1 GB) copied, 19.287 s, 55.1 MB/s
    [root@iZ25uog2aivZ var]# /sbin/mkswap swapfile
    Setting up swapspace version 1, size = 1038332 KiB
    no label, UUID=59e3b114-ed70-4d64-af01-2d02873fa358
    [root@iZ25uog2aivZ var]# /sbin/swapon swapfile
    swapon: /var/swapfile: insecure permissions 0644, 0600 suggested.
    [root@iZ25uog2aivZ var]# /sbin/swapon -s
    Filename                Type        Size    Used    Priority
    /var/swapfile                              file    1038332    0    -1
    [root@iZ25uog2aivZ var]# echo "/var/swapfile swap swap defaults 0 0" >>/etc/fstab
    [root@iZ25uog2aivZ var]# free -m
                 total       used       free     shared    buffers     cached
    Mem:           992        923         69         81          1        309
    -/+ buffers/cache:        611        381
    Swap:         1013          0       1013
    [root@iZ25uog2aivZ var]# 
    

    编译与安装

    $ make && make install

    这里要make好久,要耐心一下

    配置php-fpm

    $ cp php.ini-production /etc/php.ini
    $ cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
    
    $ cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
    $ cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
    $ chmod +x /etc/init.d/php-fpm

    参考

    reply
    0
  • Cancelreply