когда я пытался использовать функцию imagefromjpeg () в PHP, он выдавал ошибку. Итак, я попытался установить библиотеку GD, используя следующую команду:
sudo apt-get install php5-gd
Но я получил следующую ошибку.
php5-gd : Depends: php5-common (= 5.5.9+dfsg-1ubuntu4) but 5.5.10+dfsg-1+deb.sury.org~saucy+1 is to be installed
E: Unable to correct problems, you have held broken packages.
Я использую Ubuntu 14.04LTS. Я недавно обновил свою ОС с Ubuntu 13.10. Как побороть эту ошибку?
Вывод dpkg -l|grep php
:
ii cakephp 1.3.15-1 all MVC rapid application development framework for PHP
ii cakephp-scripts 1.3.15-1 all MVC rapid application development framework for PHP (scripts)
ii libapache2-mod-php5 5.5.10+dfsg-1+deb.sury.org~saucy+1 amd64 server-side, HTML-embedded scripting language (Apache 2 module)
ii libedit2:amd64 3.1-20130712-2+debphp.org~saucy+3 amd64 BSD editline and history libraries
ii libjson-c2:amd64 0.11-3+debphp.org~saucy+1 amd64 JSON manipulation library - shared library
ii libjson-c2:i386 0.11-3+debphp.org~saucy+1 i386 JSON manipulation library - shared library
ii libjson0:amd64 0.11-3+debphp.org~saucy+1 amd64 JSON manipulation library (transitional package)
ii php-gettext 1.0.11-1 all read gettext MO files directly, without requiring anything other than PHP
ii php-pear 5.5.10+dfsg-1+deb.sury.org~saucy+1 all PEAR - PHP Extension and Application Repository
ii php5 5.5.10+dfsg-1+deb.sury.org~saucy+1 all server-side, HTML-embedded scripting language (metapackage)
ii php5-cgi 5.5.10+dfsg-1+deb.sury.org~saucy+1 amd64 server-side, HTML-embedded scripting language (CGI binary)
ii php5-cli 5.5.10+dfsg-1+deb.sury.org~saucy+1 amd64 command-line interpreter for the php5 scripting language
ii php5-common 5.5.10+dfsg-1+deb.sury.org~saucy+1 amd64 Common files for packages built from the php5 source
ii php5-curl 5.5.10+dfsg-1+deb.sury.org~saucy+1 amd64 CURL module for php5
ii php5-dev 5.5.10+dfsg-1+deb.sury.org~saucy+1 amd64 Files for PHP5 module development
rc php5-gd 5.4.9-4ubuntu2.4 amd64 GD module for php5
ii php5-imagick 3.1.2-1+debphp.org~saucy+1 amd64 ImageMagick module for php5
ii php5-json 1.3.2-3+debphp.org~saucy+1 amd64 JSON module for php5
ii php5-mcrypt 5.5.10+dfsg-1+deb.sury.org~saucy+1 amd64 MCrypt module for php5
rc php5-mysql 5.4.9-4ubuntu2.4 amd64 MySQL module for php5
ii php5-mysqlnd 5.5.10+dfsg-1+deb.sury.org~saucy+1 amd64 MySQL module for php5 (Native Driver)
ii php5-pgsql 5.5.10+dfsg-1+deb.sury.org~saucy+1 amd64 PostgreSQL module for php5
ii php5-readline 5.5.10+dfsg-1+deb.sury.org~saucy+1 amd64 Readline module for php5
ii php5-xdebug 2.2.3-2build1 amd64 Xdebug Module for PHP 5
ii phpmyadmin 4:4.0.10-1 all MySQL web administration tool
ii pkg-php-tools 1.11 all various packaging tools and scripts for PHP packages
dpkg -l|grep php
?Ответы:
Кажется, вы установили PHP через панель запуска PPA:
https://launchpad.net/~ondrej/+archive/php5
Проверьте ваш apt sources.list, если ppa все еще активен. 14 апреля у вас должны быть активны следующие репо:
Объяснение:
Кажется, у вас был добавлен дополнительный репозиторий PHP-launchpad, но он был деактивирован во время dist-upgrade. Из-за этого apt пыталась установить
php5-gd
из стандартного репозитория Debian, но для этой версии также необходим стандартный php-common в качестве зависимости (которой у вас нет). Снова активировав репо на панели запуска,php5-gd
он был установлен оттуда, и все остальные ваши php-пакеты должны были быть обновлены до версии Ubuntu 14.04 («верной») из ppa.источник
/etc/apt/sources.list
и/etc/apt/sources.list.d/
для этих записей и добавить их, если необходимо.sudo apt-get update
прежде чем пытаться снова?Я знаю, это было время для первоначального ответа. Я установил это на Ubuntu Server 14.04 LTS, сначала установив, а
sudo apt-get install php7.0-fpm
затем запустивsudo apt-get install php7.0-gd
. Подтвердил, что он отлично работает, особенно для генерации капчи, что является моим примером использования решения для всего php. На данный момент нет причин не переходить с php5x, так как 7x имеет много преимуществ и никаких минусов в 2017 году.источник