Page 70 - Asterisk™: The Future of Telephony
P. 70

In bash (and other shell systems which support it), you can use an ex-
                           tremely handy feature called Tab completion. This will allow you to type
                           part of a filename and have the rest of it completed automatically. For
                           example, if you type tar zxvf zap<tab> that will complete the full
                           zaptel filename for you. If more than one filename matches the pattern
                           and you hit Tab twice, it will list the files matching that pattern.


               These commands will extract the packages and source code to their respective direc-
               tories. When you extract the asterisk-1.4-current.tar.gz file, you will find that the file
               will extract to the current version of Asterisk, i.e. asterisk-1.4.4.


                           It’s always a good idea to keep the source code of the most recently
                           working version of a package in case you have to “roll back” out of a
                           new bug introduced, or some other strange behavior you can’t solve
                           immediately.

               Menuselect

               In  the  1.4.0  version  of  Asterisk  and  its  related  packages,  a  new  build  system,
               autoconf, was implemented. This has changed the build process slightly, but has given
               more flexibilty to control what modules are being built at build time. This has an ad-
               vantage in that we only have to build the modules we want and need instead of building
               everything.
               Along with the new build system, a new menu-based selection system was introduced,
               courtesy of Russell Bryant. This new system permits a finer-grained selection to which
               modules are built before compiling the software and no longer requires the user to edit
               Makefiles. So instead of discussing how to use menuselect in every “Compiling ...”
               section, we will discuss it here, so when you see make menuselect you will understand
               what to do once inside the menuselect configuration screen.

               In Figure 3-1, we see the opening menuselect screen for the Asterisk software. Other
               packages will look extremely similar, but with less options. We can navigate up and
               down the list using the arrow keys. We can select one of the menu options by pressing
               Enter or by using the right arrow key. The left arrow key can be used to go back.
               Figure 3-2 shows a list of possible dialplan applications that can be built for use in
               Asterisk. Modules to be built are marked as [*]. A module is marked as not being built
               by [ ]. Modules that have XXX in front of them are missing a package dependency which
               must be satisfied before it will be available to be built. In Figure 3-2, we can see that
               the app_flash module cannot be built due to a missing dependency of Zaptel (i.e., the
               Zaptel  module  has  not  been  built  and  installed  on  the  system  since  the  last
               time ./configure was run). If you have satisfied a dependency since the last time you





               42 | Chapter 3: Installing Asterisk
   65   66   67   68   69   70   71   72   73   74   75