Debian: How to find a package is installed from .deb or source

When installing ffmpeg-php in a debian server, i got error

# phpize
-bash: phpize: command not found

This is because php-devel package is not installed on the server.

Before installing, you need to find out whether php is installed from source or apt-get

On CentOS, you can find it by

yum list |grep php

On Debian/Ubuntu, dpkg -l list all packages installed.

# dpkg -l *php5*
| Status=Not/Installed/Config-files/Unpacked/Failed-config/Half-installed
|/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad)
||/ Name                      Version                   Description
un  libapache-mod-php5                            (no description available)
ii  libapache2-mod-php5       5.2.0+dfsg-8+etch15       server-side, HTML-embedded scripting language (apache 2 module)
ii  php5                      5.2.0+dfsg-8+etch15       server-side, HTML-embedded scripting language (meta-package)
un  php5-cgi                                      (no description available)
ii  php5-cli                  5.2.0+dfsg-8+etch15       command-line interpreter for the php5 scripting language
ii  php5-common               5.2.0+dfsg-8+etch15       Common files for packages built from the php5 source
ii  php5-curl                 5.2.0+dfsg-8+etch15       CURL module for php5
ii  php5-gd                   5.2.0+dfsg-8+etch15       GD module for php5
ii  php5-imap                 5.2.0+dfsg-8+etch15       IMAP module for php5
ii  php5-ioncube-loader       3.2-dbn40.build07072610   ionCube Loader for PHP5
ii  php5-mysql                5.2.0+dfsg-8+etch15       MySQL module for php5
un  php5-mysqli                                   (no description available)
ii  php5-xsl                  5.2.0+dfsg-8+etch15       XSL module for php5
ii  psa-php5-configurator     1.4.0-debian4.0.build8608 Plesk configurator for php5

You can also use

apt-cache policy php5
# apt-cache policy php5
  Installed: 5.2.0+dfsg-8+etch15
  Candidate: 5.2.0+dfsg-8+etch15
  Version table:
 *** 5.2.0+dfsg-8+etch15 0
        500 etch/updates/main Packages
        100 /var/lib/dpkg/status
     5.2.0-8+etch13 0
        500 etch/main Packages

In this server, php is installed from apt. So to install php-devel, i run

apt-cache search php5 | more

This command list all php5 packages available. From the list i found

php5-dev - Files for PHP5 module development

To install, run

apt-get install php5-dev

Here is the result

# apt-get install php5-dev
Reading package lists... Done
Building dependency tree... Done
The following extra packages will be installed:
  automake1.4 libssl-dev libssl0.9.8 shtool
The following NEW packages will be installed:
  automake1.4 libssl-dev php5-dev shtool
The following packages will be upgraded:
1 upgraded, 4 newly installed, 0 to remove and 57 not upgraded.
Need to get 5586kB of archives.
After unpacking 10.2MB of additional disk space will be used.
Do you want to continue [Y/n]? Y
WARNING: The following packages cannot be authenticated!
  automake1.4 shtool
Install these packages without verification [y/N]? y
Get:1 etch/updates/main libssl0.9.8 0.9.8c-4etch5 [2721kB]
Get:2 etch/main automake1.4 1:1.4-p6-12 [272kB]
Get:3 etch/updates/main libssl-dev 0.9.8c-4etch5 [2094kB]
Get:4 etch/main shtool 2.0.1-2 [152kB]
Get:5 etch/updates/main php5-dev 5.2.0+dfsg-8+etch15 [346kB]
Fetched 5586kB in 2s (1908kB/s)
Preconfiguring packages ...
(Reading database ... 55619 files and directories currently installed.)
Preparing to replace libssl0.9.8 0.9.8c-4etch3 (using .../libssl0.9.8_0.9.8c-4etch5_i386.deb) ...
Unpacking replacement libssl0.9.8 ...
Selecting previously deselected package automake1.4.
Unpacking automake1.4 (from .../automake1.4_1%3a1.4-p6-12_all.deb) ...
Selecting previously deselected package libssl-dev.
Unpacking libssl-dev (from .../libssl-dev_0.9.8c-4etch5_i386.deb) ...
Selecting previously deselected package shtool.
Unpacking shtool (from .../shtool_2.0.1-2_all.deb) ...
Selecting previously deselected package php5-dev.
Unpacking php5-dev (from .../php5-dev_5.2.0+dfsg-8+etch15_i386.deb) ...
Setting up libssl0.9.8 (0.9.8c-4etch5) ...

Setting up automake1.4 (1.4-p6-12) ...

Setting up libssl-dev (0.9.8c-4etch5) ...
Setting up shtool (2.0.1-2) ...

Setting up php5-dev (5.2.0+dfsg-8+etch15) ...


Now phpize is availale

# which phpize

Posted in Linux