From: Lubomir Rintel APR shared objects were not properly linked when they were installed to a specific DESTDIR. This was broken in r733406, which attempted to fix rpaths for the obscure platforms that still use them. With this applied, we call apreq2-config we just installed and add a library path of libraries in DESTDIR to linker. $ perl -MAPR::Request Can't load '/usr/lib/perl5/auto/APR/Request/Request.so' for module APR::Request: /usr/lib/perl5/auto/APR/Request/Request.so: undefined symbol: apreq_hook_disable_uploads at /usr/lib/perl5/DynaLoader.pm line 200. at - line 0 Compilation failed in require. BEGIN failed--compilation aborted. diff -urp libapreq2-2.12/glue/Makefile.am libapreq2-2.12.fixed/glue/Makefile.am --- libapreq2-2.12/glue/Makefile.am 2010-03-29 15:59:03.615820329 +0200 +++ libapreq2-2.12.fixed/glue/Makefile.am 2010-03-29 15:57:49.360849733 +0200 @@ -15,8 +15,7 @@ perl_test: perl/Makefile cd perl; $(MAKE) test perl_install: - cd perl; INSTALL=1 @PERL@ @PERL_OPTS@ Makefile.PL -apxs @APACHE2_APXS@ @MM_OPTS@ - cd perl; $(MAKE) install + cd perl; $(MAKE) pure_install perl_clean: -cd perl; $(MAKE) clean diff -urp libapreq2-2.12/glue/perl/Makefile.PL libapreq2-2.12.fixed/glue/perl/Makefile.PL --- libapreq2-2.12/glue/perl/Makefile.PL 2010-03-29 15:59:03.632820608 +0200 +++ libapreq2-2.12.fixed/glue/perl/Makefile.PL 2010-03-29 15:56:26.725851479 +0200 @@ -136,10 +136,15 @@ if (WIN32) { my $apreq2_config = "$base_dir/apreq2-config"; my $bindir = qx{$apreq2_config --bindir}; chomp $bindir; - $apreq2_config = "$bindir/apreq2-config" if $ENV{INSTALL}; + $apreq2_config = "PKG_CONFIG_PATH=$ENV{PKG_CONFIG_PATH} ". + $ENV{DESTDIR}."$bindir/apreq2-config" + if $ENV{INSTALL}; $apreq_libs = qx{$apreq2_config --link-ld --ldflags --libs}; + die "Failed to run $apreq2_config" if $?; chomp $apreq_libs; + $apreq_libs = " -L".$ENV{DESTDIR}.$ENV{LIBDIR}." ".$apreq_libs + if $ENV{INSTALL}; } my $mp2_typemaps = Apache2::Build->new->typemaps;