EZMLM with mysql will allow you to manage mailing lists. Without the mysql functionality you cannot use mailing lists. It just will not work. The first thing we will do is grab the ezmlm sources from ports, copy them to ~root and extract it.


# cd /usr/ports/mail/ezmlm-idx
# make clean distclean
# make extract
# cp /usr/ports/distfiles/ezmlm-idx-7.2.2.tar.gz ~root # make clean distclean
# cd ~root
# tar zxvf ezmlm-idx-7.2.2.tar.gz

The next thing we will need to do is change permissions on the sources, create a default language and then run the make commands as seen below:


# cd ezmlm-idx-7.2.2
# chown -R root:wheel *
# cd lang
# ln -s en_US default
# cd ..
# make
# make man

Ok the basic setup is done. Now we need to run ezmlm-test a few times until we get "Cleaning up..." at the end.


# ./ezmlm-test
...
Cleaning up...

Install MYSQL Support
So far all we have done is install ezmlm-idx. Now what we need to do it link ezmlm-idx with mysql. This is how to set it up. First we need to log into mysql, create the database and assign a user and password. Do not deviate from using a different database other than ezmlm. It will not work but the username and password you can change to anything you like.


# mysql -u root -p
[ENTER PASSWORD]
> create database ezmlm;
> GRANT select,insert,update,delete,create,drop ON ezmlm.* TO ezmlmuser@localhost IDENTIFIED BY 'ezmlmpassword';
> FLUSH PRIVILEGES;
> quit

Now before we do the mysql test we need to change two files for the mysql includes and libraries as seen below:


# vi conf-cc

Modify the following line:


gcc -O -g -I/usr/local/include/mysql -I/usr/include/pgsql


# vi conf-ld

Modify the following line:


cc -g -rdynamic -B /usr/local/lib/mysql

Now lets enable mysql!


# make mysql

As long as you get no errors you should be all set. Now we need to run the following command as root to add the ezmlm tables as seen below :


# ./ezmlm-test -s mysql -u root -p PASS

Now lets install it


# make install