Asterisk 13.20 - installation problem

Hi,
I am installing latest asterisk 13 version (asterisk-13.20.0.tar.gz 15-Mar-2018 14:05) from the following url:
http://downloads.asterisk.org/pub/telephony/asterisk/

I already had 13.18 installed on a centOs 7. But I decided to uninstall it and do a fresh 13.20 install.
I kept the pjproject-2.3 from previous installation and just tried to install newest 13.20 version.

Steps:
-1------------ uninstall previous asterisk version

  • make uninstall (on previous asterisk installation folder after stopping asterisk service)
    -2----------- update libs
  • yum update
  • yum install -y epel-release dmidecode gcc-c++ ncurses-devel libxml2-devel make wget openssl-devel newt-devel kernel-devel sqlite-devel libuuid-devel gtk2-devel jansson-devel binutils-devel
    -3----------- build pjproject-2.3
  • cd /usr/src/pjproject-2.3
  • ./configure CFLAGS="-DNDEBUG -DPJ_HAS_IPV6=1" --prefix=/usr --libdir=/usr/lib64 --enable-shared --disable-video --disable-sound --disable-opencore-amr
  • make dep && make && make install
  • ldconfig
    -4---------- build asterisk 13.20
  • cd /usr/src/asterisk-13.20.0
  • ./configure --libdir=/usr/lib64
  • make menuselect
  • make =====> ERROR BELOW
    =========================================================================
    [root@localhost asterisk-13.20.0]# make
    CC=“cc” CXX=“g++” LD="" AR="" RANLIB="" CFLAGS="" LDFLAGS=" -fPIC" make -C menuselect CONFIGURE_SILENT="–silent" makeopts
    make[1]: Entering directory /usr/src/asterisk-13.20.0/menuselect' make[1]:makeopts’ is up to date.
    make[1]: Leaving directory /usr/src/asterisk-13.20.0/menuselect' [LD] chan_pjsip.o pjsip/dialplan_functions.o pjsip/cli_commands.o -> chan_pjsip.so /bin/ld: /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../lib64/libpjsip-ua-x86_64-unknown-linux-gnu.a(sip_inv.o): relocation R_X86_64_32S against.rodata’ can not be used when making a shared object; recompile with -fPIC
    /usr/lib/gcc/x86_64-redhat-linux/4.8.5/…/…/…/…/lib64/libpjsip-ua-x86_64-unknown-linux-gnu.a: error adding symbols: Bad value
    collect2: error: ld returned 1 exit status
    make[1]: *** [chan_pjsip.so] Error 1
    make: *** [channels] Error 2
    =============================================================================
  1. Do you have any idea why I am getting this error?
  2. Is there anything wrong in my installation steps?
  3. Is it ok to use pjproject-2.3 ?

Thanks in advance.

PJSIP was not built correctly for the 64-bit system, and 2.3 is very old. You should use bundled[1] instead which will yield the best experience.

[1] http://blogs.asterisk.org/2016/03/16/asterisk-13-8-0-now-easier-pjsip-install-method/

1 Like

Thanks Joshua,
I added the pjproject-bundled to configure
./configure --with-pjproject-bundled --libdir=/usr/lib64

It is building now.

@jcolp. What is the difference between a certified version and a non-certified version ?
Should I consider that non-certified version as a release candidate or beta version ?

Howdy,

A good description of Certified Asterisk is here:

2 Likes