Time for action – running the configure command
Now that we have had a brief look at several of the available options, we can layout the options for the environment for which we are building Squid. Now, we are ready to run the configure
command with the following options:
./configure --prefix=/opt/squid/ --with-logdir=/var/log/squid/ --with-pidfile=/var/run/squid.pid --enable-storeio=ufs,aufs --enable-removal-policies=lru,heap --enable-icmp --enable-useragent-log --enable-referer-log --enable-cache-digests --with-large-files
The preceding command will run for a while, probing the system for various capabilities and making decisions on the basis of the available libraries and modules. The configure
writes debugging output to the config.log
file in the same directory. It is always wise to check the config.log
for any errors which may have occurred while running the configure
command.
If everything goes fine, configure
will generate the makefiles
in several directories which will be required for compiling the source code in the next step.
What just happened?
Running the configure
program with the options mentioned in the previous code example, will generate the makefiles
needed to compile the Squid source code and source code of the modules enabled. It will also generate the config.log
and config.status
files. All the messages which are generated during the running of the configure
program are logged to the config.log
file. The config.status
file is an executable which can be run to recreate the makefiles
.
Have a go hero – debugging configure errors
In the Squid source directory, run the configure
command, as shown in the following code:
./configure --enable-storeio='aufs,disk'
Now try to check what went wrong and fix the errors.