Enabling Berkeley DB support in Apache

From eapps.com
In order to compile the subversion module for Apache, Apache has to have been built with Berkeley DB support enabled. Because of debates over license conflicts, this option is now disabled by default. Therefore, it’s likely not enabled in your Apache server.

You can check whether the Berkeley DB support was enabled in your EasyApache build by running the following command:


cat /home/cpeasyapache/src/httpd-2.2.14/srclib/apr-util/config.nice | grep "with-berkeley"

(check the version of apache you are using as it may vary with server build)
No output means that support is not included.

Unfortunately, EasyApache does not offer a switch to enable Berkeley DB support. But adding such a switch is easy.

As the root user, create and edit the following file with the contents shown below the file name:

/var/cpanel/perl/easy/Cpanel/Easy/Apache/BerkeleyDB.pm

insert;

package Cpanel::Easy::Apache::BerkeleyDB;

our $easyconfig = {
'version' => '$Rev: 1045 $',
'name' => 'BerkeleyDB',
'url' => 'http://httpd.apache.org/docs/[% apache_uri_version %]/programs/configure.html',
'step' => {
'0' => {
'name' => 'to config options',
'command' => sub {
my ($self) = @_;
$self->add_to_configure( { '--with-berkeley-db' => '' } );
return ( 1, 'Ok' );
},
},
},
};

1;

(note: you may want to verify the version of the [% apache_uri_version %] before you begin this change)

Now go back into the EasyApache configuration in WHM. On the Short Options List page in the wizard, click the “Exhaustive Options List” button. You will see a new option, which you need to enable:


[*] BerkeleyDB

Proceed with the Apache build. Once the build completes, you’ll be ready to build the Subversion module.

g33kadmin

I am a g33k, Linux blogger, developer, student and Tech Writer for Liquidweb.com/kb. My passion for all things tech drives my hunt for all the coolz. I often need a vacation after I get back from vacation....

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.