本机:win1o虚拟机:Vmware2017--centos6.5编译PHP:安装依赖包:yum install -y libxml2-devel libicu-devel libpng-devel libjpeg-turbo-devel libmcrypt-devel libcurl-devel bzip2-devel openssl-devel gmp-devel freetype-devel./configure \ --prefix=/usr/local/php \ --enable-bcmath \ --enable-exif \ --enable-fpm \ --enable-mbstring \ --enable-soap \ --enable-sockets \ --enable-zip \ --with-bz2 \ --with-curl \ --with-freetype-dir \ --with-gd \ --with-gettext \ --with-gmp \ --with-jpeg-dir=/usr/lib64 \ --enable-mysqlnd \ --with-mysql=mysqlnd \ --with-pdo-mysql=mysqlnd \ --with-openssl \ --with-pdo-mysql=/usr/local/mysql \ --with-png-dir=/usr/lib64 \ --with-readline \ --with-tsrm-pthreads \ --with-xmlrpc \ --with-zlib
我编译完后:打开php.int如图
为什么全部是 .dll文件?我打开phpinfo()提示GD开启,但是我去掉配置文件中的 ‘;’就报错,说找不到相应的php_gd2.dll文件,尝试解决:
1.不改,去掉“;”提示没有文件
2.将.dll文件改成.so文件,报错,
3.重新再源码包的位置追加GD扩展,指定到相关目录下提示:也是报错,说格式不对什么的。
4.重新编译整个PHP,换了版本也不行,照样是生成.dll扩展文件
下面是编译后扩展路径下的文件:
正确的编译后,php.int应该是
这样编译后后果是:1.phpinfo()中提示扩展都能用但是,去掉;所有的扩展都不能用,
解决:1.去源码目录拷贝,没有发现有.dll文件
2.重新编译扩展,放到扩展目录下,提示.so文件不能用
3.去windos下拷贝对应的.dll提示报错不能用
4.改php.ini中的.dll为.so或者去掉后缀都提示错误
2.为什么我在虚拟机下编译的扩展是.dll?而不是.so?3.在源码扩展目录下gd:也没有发现有gd2_.dll文件下面有大哥回复说:
1.我步骤不对,其实我整个流程没有错,
2.说;extension=php_bz2.dll是WINDOS对应的扩展,跟linux无关,但是我在整个文件中搜索都没有找到和所以扩展相关的地方了,比如搜索;extension=或者是搜扩展关键词,都找不到extension=*gd2.so或者extension=;都没有!!!
是不是在
[gd]; Tell the jpeg decode to ignore warnings and try to create; a gd image. The warning will then be displayed as notices; disabled by default; http://php.net/gd.jpeg-ignore...;gd.jpeg_ignore_warning = 0加上extension=gd2extension=gd2.so我尝试了都报错
- 2 回答
- 0 关注
- 523 浏览
添加回答
举报
0/150
提交
取消