Как установить библиотеку GD в php?

12

когда я пытался использовать функцию 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?
etagenklo
@etagenklo Я обновил ваш вывод в вопросе
Ганеш Бабу

Ответы:

5

Кажется, вы установили PHP через панель запуска PPA:

https://launchpad.net/~ondrej/+archive/php5

Проверьте ваш apt sources.list, если ppa все еще активен. 14 апреля у вас должны быть активны следующие репо:

deb http://ppa.launchpad.net/ondrej/php5/ubuntu trusty main 
deb-src http://ppa.launchpad.net/ondrej/php5/ubuntu trusty main 

Объяснение:

Кажется, у вас был добавлен дополнительный репозиторий PHP-launchpad, но он был деактивирован во время dist-upgrade. Из-за этого apt пыталась установить php5-gdиз стандартного репозитория Debian, но для этой версии также необходим стандартный php-common в качестве зависимости (которой у вас нет). Снова активировав репо на панели запуска, php5-gdон был установлен оттуда, и все остальные ваши php-пакеты должны были быть обновлены до версии Ubuntu 14.04 («верной») из ppa.

etagenklo
источник
Я все еще не могу проверить вашу команду. Я получаю следующую ошибку: deb: команда не найдена. Я попытался с помощью sudo apt-get установить deb. Но до сих пор не использую
Ганеш Бабу
1
Вы не должны вводить это в оболочке, вы должны проверить файлы в /etc/apt/sources.listи /etc/apt/sources.list.d/для этих записей и добавить их, если необходимо.
etagenklo
Я добавил эти строки в указанный вами файл. Но все же я не нашел это работающим
Ганеш Бабу
Вы выпустили, sudo apt-get updateпрежде чем пытаться снова?
etagenklo
1
Я обновил свой ответ объяснением.
etagenklo
0

Я знаю, это было время для первоначального ответа. Я установил это на Ubuntu Server 14.04 LTS, сначала установив, а sudo apt-get install php7.0-fpmзатем запустив sudo apt-get install php7.0-gd. Подтвердил, что он отлично работает, особенно для генерации капчи, что является моим примером использования решения для всего php. На данный момент нет причин не переходить с php5x, так как 7x имеет много преимуществ и никаких минусов в 2017 году.

jamescampbell
источник