Compile a Program From Source |
How to Compile a Program From Source No matter what skills you have as a Linux users, beginner or expert, a time will come when you need to have the skills to compile a program from source. Dealing with source code is just one of those skills that you will need to develop. This tutorial is a simple way to compile Apache, the common web server. This is just a start on what you will need to do. Be sure to practice these skills on a box that is not a production server. In preparation for compilation you will want to remove apache if you have it installed. This may not be a simple: Use this command if you have Red Hat based distros. rpm -e httpd or use this command with Debian based distros. etc. Once you remove httpd, you will see the configuration file saved as httpd.conf.rpmsave.
Step #1: Download the Source Code http://www.apache.org/dist/httpd/ mv httpd-2.2.8.tar.gz /usr/src Move into the directory /usr/src/ that has the source code. cd /usr/src Now untar and uncompress the file. This will create a new directory called httpd-2.2.8. Move into the directory. cd httpd-2.2.8 acinclude.m4 config.layout INSTALL NOTICE support Apache.dsw configure InstallBin.dsp NWGNUmakefile test apachenw.mcp.zip configure.in LAYOUT os VERSIONING build docs libhttpd.dsp README BuildAll.dsp emacs-style LICENSE README.platforms BuildBin.dsp httpd.dsp Makefile.in ROADMAP buildconf httpd.spec Makefile.win server
Step #2: Configure Apache The next step is to begin the compilation for apache. You will start this process by looking for a configure script. This configure script will prepare the software for compilation. It will check for the version of compiler on the system and if all the required libraries are available. This also will enable you to make decisions about changes you want to make when the software is installed. If you run help with the configure script you will see a lot of options that are available. Note the ./ in front of the configure script. This is a good reference for finding ways to improve your installation of apache. For a test install you may want to create a separate folder you could easily remove if you wanted to install another version of apache. mkdir /usr/local/apache3 ./configure - -prefix=/usr/local/apache3 - -enable-so If you want to configure apache to enable options or to compile with options you need to separate options by a space, see the example. ./configure –prefix=/usr/local/apache3 - -enable-ssl - -enable-proxy-http - -enable-so Once you run the ./configure you will need to run the command: make/ make The make command reads a Makefile in the source directory. The Makefile provides the steps for configuring apache with specific instructions. This will start the process of compiling, which may take some time. Once it is done the source has been compiled. Now the next command to run is: make install This command actually install apache in the directory that you choose. Once it is complete you can start apache, following the example of /usr/local/apache3, by using this command: /usr/local/apache3/bin/apachectl start |