/usr/bin/apxs broken when apr15u-devel installed
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
IUS Community Project |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
The /usr/bin/apxs Perl script is provided by the httpd24u-devel package, and is needed for building Apache extensions. It uses pkg-config to get the libdir of the apr-1 package, as follows:
my $libdir = `pkg-config --variable=libdir apr-1`;
This returns an empty string if you have apr15u-devel installed, because its pkg-config file is named "apr15u-1.pc" rather than "apr-1.pc". The result is that you get the following error when executing apxs:
cannot open /httpd/
A workaround for this to symlink the *.pc files, like so:
$ ln -s /usr/lib64/
Extra details:
$ uname -a
Linux www.jci.dev 2.6.32-
$ cat /etc/redhat-release
CentOS release 6.6 (Final)
$ yum list installed | egrep 'apr|httpd'
apr15u.x86_64 1.5.2-1.ius.centos6 @ius
apr15u-devel.x86_64 1.5.2-1.ius.centos6 @ius
apr15u-util.x86_64 1.5.4-3.ius.centos6 @ius
apr15u-
httpd24u.x86_64 2.4.12-
httpd24u-
httpd24u-
httpd24u-
Related issue: the /usr/lib64/ httpd/build/ config_ vars.mk file (which is used by apxs and provided by http24u-devel) has the following lines: apr-1-config apu-1-config
APR_CONFIG = /usr/bin/
APU_CONFIG = /usr/bin/
These paths are incorrect if you have apr15u-devel install. They should be: apr15u- 1-config apu15u- 1-config
APR_CONFIG = /usr/bin/
APU_CONFIG = /usr/bin/
Workaround: apr15u- 1-config /usr/bin/ apr-1-config apu15u- 1-config
$ ln -s /usr/bin/
$ ln -s /usr/bin/