0% found this document useful (0 votes)
37 views4 pages

Compiling Asterisk: Linode Cloud Hosting

Download as pdf or txt
Download as pdf or txt
Download as pdf or txt
You are on page 1/ 4

Compiling Asterisk

Once you’ve compiled and installed the zaptel and libpri packages (if you
need them), you can move on to Asterisk. This section walks you through
a standard installation and introduces some of the alternative make
arguments that you may find useful.
Linode Standard Installation
Cloud
Asterisk is compiled with gcc through the use of the GNU make program.
Hosting To get started compiling Asterisk, simply run the following commands
(replace version with your version of Asterisk):

# cd /usr/src/asterisk-version

# make clean
# ./configure
# make menuselect
# make install
# make samples
Root Access,
1GB RAM for
Be aware that compile times will vary between systems. On a current-
Only $5/month! generation processor, you shouldn’t need to wait more than five minutes.
7 Day Money At AstriCon (http://www.astricon.net), someone reported successfully
Back compiling Asterisk on a 133 MHz Pentium, but it took approximately five
Guarantee. hours. You do the math.

Run the make samples command to install the default configuration files.
Installing these files (instead of configuring each file manually) will allow
you to get your Asterisk system up and running much faster. Many of the
default values are fine for Asterisk. Files that require editing will be
explained in future chapters.

If you already have configuration files


installed in /etc/asterisk/ when you run the
make samples command, .old will be appended
to the end of each of your current
configuration files, for example,
extensions.conf will be renamed
extensions.conf.old. Be careful, though,
because if you run make samples more than
once you will overwrite your original
configuration files!

The sample configuration files can also be


found in the configs/ subdirectory within your
Asterisk sources directory.

If you’re using a system that makes use of the /etc/rc.d/init.d/ or /etc/init.d/


directories, you may wish to run the make config command as well. This
will install the startup scripts and configure the system (through the use of
the chkconfig command) to execute Asterisk automatically at startup:
# make config

Alternative make Arguments


There are several other make arguments that you can pass at compile time.
While some of these will be discussed here, the remainder are used
internally within the file and really have no bearing or use for the end user.
(Of course, new functions may have been added, so be sure to check the
Makefile for other options.)

Let’s take a look at some useful make arguments.

make clean

The make clean command is used to remove the compiled binaries from
within the source directory. This command should be run before you
attempt to recompile or, if space is an issue, if you would like to clean up
the files.

make distclean

The make distclean command is used to remove the compiled binaries


and to clean the source directory back to its original state after being
extracted from the compressed archive.

make update

The make update command is used to update the existing code from the
Digium SVN server. If you downloaded the source code from the FTP
server, you will receive a notice stating so.

make webvmail

The Asterisk Web Voicemail script is used to give a graphical interface to


your voicemail account, allowing you to manage and interact with your
voicemail remotely from a web browser.

When you run the make webvmail command, the Asterisk Web Voicemail
script will be placed into the cgi-bin/ directory of your HTTP daemon. If
you have specific policies with respect to security, be aware that it uses a
setuid root Perl script. This command will install only on a CentOS or
Fedora box, as other distributions may have different paths to their cgi-
bin/ directories. (This, of course, can be changed by editing the
HTTP_CFGDIR variable in the Makefile at line 133 at the time of this
writing.)

make progdocs

The make progdocs command will create documentation using the doxygen
software from comments placed within the source code by the developers.
You must have the appropriate doxygen software installed on your system
in order for this to work. Note that doxygen assumes that the source code
is well documented, which, sadly, is not always the case, although much
work was published since the first edition of this book! The information
contained within the doxygen system will be useful only to developers.

make config

The make config command will install Red Hat-style initialization scripts,
if the /etc/rc.d/init.d or /etc/init.d directories are found to exist. If they do
exist, the scripts are installed with file permissions equal to 755. If the
script detects that /etc/rc.d/init.d/ exists, the chkconfig --add asterisk
command will also be run to cause Asterisk to be started automatically at
boot time. This is not the case, however, with distributions that only use
the /etc/init.d/ directory. Running make config will not do anything to an
already running Asterisk process, or start one if it’s not running.

This script currently is really only useful on a Red Hat-based system,


although initialization scripts are available for other distributions (such as
Gentoo, Mandrake, and Slackware) in the ./contrib./init.d/ directory of
your Asterisk source directory.

Using Precompiled Binaries


While the documented process of installing Asterisk expects you to
compile the source code yourself, there are Linux distributions (such as
Debian) that include precompiled Asterisk binaries. Failing that, you may
be able to install Asterisk with the package managers that those
distributions of Linux provide (such as apt-get for Debian and portage for
Gentoo).[47] However, you may also find that many of these prebuilt
binaries are quite out of date and do not follow the same furious
development cycle as Asterisk.

Finally, there do exist basic, precompiled Asterisk binaries that can be


downloaded and installed in whatever Linux distribution you have chosen.
However, the use of precompiled binaries doesn’t really save much time,
and we have found that compiling Asterisk with each install is not a very
cumbersome task. We believe that the best way to install Asterisk is to
compile from the source code, so we won’t discuss prebuilt binaries very
much in this book―and besides, don’t you want to be l33t?[48] In the next
chapter, we’ll look at how to initially configure Asterisk and several kinds
of channels.

[47] Gentoodoesn’t actually use a precompiled binary, but rather pulls the
source from a repository, and builds and installs the software using its own
package management system. But the version you get is still dependant
upon the maintainers packaging it for you, when you could simply build it
yourself!
[48] l33tis a funny way of saying “elite,” known as leetspeak (computer
slang). Even more funny is a well-written, serious article by Microsoft
about leetspeak at
http://www.microsoft.com/athome/security/children/leetspeak.mspx.

VMware Virtual SAN


(VSAN) Fundamentals
VMware Virtual SAN (VSAN) is a…

You are reading Asterisk: The Future of Telephony (2nd Edition for Asterisk 1.4), by Jim van
Meggelen, Jared Smith, and Leif Madsen.
This work is licensed under the Creative Commons Attribution-Noncommercial-No
Derivative Works License v3.0.
To submit comments, corrections, or other contributions to the text, please visit
http://www.oreilly.com/.

You might also like