< Previous by Date Date Index Next by Date >
< Previous in Thread Thread Index Next in Thread >

Re: [reSIProcate-users] Problem compiling recon under Centos 5.5 64-bit


Hi Eric,

A quick look at this, seems to indicate that the build is not
referencing the patched openssl build for DTLS/SRTP support.  The
~/resip/contrib/openssl/openssl/ssl.h file should include the
following definition:
#ifndef OPENSSL_NO_SRTP
typedef struct srtp_protection_profile_st
    {
    const char *name;
    unsigned long id;
    int master_key_bits;
    int salt_bits;
    } SRTP_PROTECTION_PROFILE;

DECLARE_STACK_OF(SRTP_PROTECTION_PROFILE);
#endif

If you are cross compiling you will need to build the openssl project
separately.  See the instruction here:
http://www.resiprocate.org/Building_recon#Building_recon_on_Generic_Linux

Regards,
Scott


On Wed, Aug 18, 2010 at 4:25 PM, Eric Cozzi <ericc@xxxxxxxxxx> wrote:
> All,
>
> I've been trying to get recon compiled under Centos 5.5 64-bit for the last 
> several days. I've worked through many of the issues that I've hit, but I 
> keep hitting new issues. Currently I'm receiving the following errors:
>
> g++ -march=x86-64 -D_REENTRANT  -Wall  -I../build/../reTurn 
> -I../build/../contrib/asio -I../build/.. -I../build/../contrib/ares 
> -I~/resip/contrib/openssl/include -I../build/../contrib/srtp/include 
> -I../build/../contrib/srtp/crypto/include/ -I/usr/include -DUSE_SSL 
> -DBOOST_ALL_NO_LIB -DOS_MAJOR_VER=2 -DOS_MINOR_VER=6 -DOS_POINT_VER=18-194 
> -DOS_PATCH_VER=11 -DRESIP_OSTYPE_LINUX -DRESIP_ARCH_X86_64 
> -DRESIP_LARCH_X86_64 -DRESIP_TOOLCHAIN_GNU -DUSE_ARES -c -o 
> obj.nodebug.Linux.x86_64/Flow.o Flow.cxx
> dtls_wrapper/DtlsSocket.hxx:93: error: ISO C++ forbids declaration of 
> ‘SRTP_PROTECTION_PROFILE’ with no type
> dtls_wrapper/DtlsSocket.hxx:93: error: expected ‘;’ before ‘*’ token
> ../build/../rutil/Data.hxx:751: warning: ‘resip::invokeDataInit’ defined but 
> not used
> make[1]: *** [obj.nodebug.Linux.x86_64/Flow.o] Error 1
> make[1]: Leaving directory `/home/ericc/resip/reflow'
> make: *** [reflow] Error 2
>
> Below are the steps I'm using to setup my system and compile. Any help 
> figuring this out would be appreciated.
>
>   1. Open terminal to user's home directory (eg, /home/ericc)
>   2. svn checkout https://svn.resiprocate.org/rep/resiprocate/main resip
>   3. svn checkout https://scm.sipfoundry.org/rep/sipX/main sipXtapi
>   4. cd resip/contrib
>   5. svn checkout 
> https://svn.resiprocate.org/rep/resiprocate/contrib/dtls-srtp/openssl openssl
>   6. as root, yum -y install boost.x86_64 boost-devel.x86_64
>   7. as root, download and install 
> http://packages.sw.be/cppunit/cppunit-1.12.0-3.el5.rf.x86_64.rpm
>        wget http://packages.sw.be/cppunit/cppunit-1.12.0-3.el5.rf.x86_64.rpm
>        rpm -i cppunit-1.12.0-3.el5.rf.x86_64.rpm
>   8. as root, download and install 
> http://packages.sw.be/cppunit/cppunit-devel-1.12.0-3.el5.rf.x86_64.rpm
>        wget 
> http://packages.sw.be/cppunit/cppunit-devel-1.12.0-3.el5.rf.x86_64.rpm
>        rpm -i cppunit-devel-1.12.0-3.el5.rf.x86_64.rpm
>   9. as root, yum -y install pcre-devel.x86_64
>  11. as root, yum -y install openssl-devel.x86_64
>  12. as root, download, compile and install 
> http://ftp.gnu.org/gnu/autoconf/autoconf-2.63.tar.gz
>        wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.63.tar.gz
>        tar xvzf autoconf-2.63.tar.gz
>        cd autoconf-2.63
>        ./configure --prefix=/usr
>        make
>        make install
>        cd ..
>  13. mkdir /tmp/stage
>  14. Go to sipXtapi root
>  15. To build sipXportLib:
>        cd sipXportLib
>        autoreconf -fi
>        ./configure --prefix=/tmp/stage --with-pcre_libdir=/usr/lib64/
>        make & make install
>        cd ..
>  16. To build sipXsdpLib:
>        cd sipXsdpLib
>        autoreconf -fi
>        ./configure --prefix=/tmp/stage --with-pcre_libdir=/usr/lib64/
>        make & make install
>        cd ..
>  17. Modify mp/MpodOss.cpp
>        cd sipXmediaLib/src/mp
>        edit MpodOss.cpp and add '#include "os/OsCallback.h"' below '#include 
> "os/OsNotification.h"'
>        cd ../..
>  18. To build sipXmediaLib:
>        autoreconf -fi
>        ./configure --prefix=/tmp/stage --enable-local-audio 
> --disable-stream-player --with-pcre_libdir=/usr/lib64/
>        make & make install
>  19. To build sipXmediaAdapterLib:
>        cd sipXmediaAdapterLib
>        autoreconf -fi
>        ./configure --prefix=/tmp/stage --enable-topology-graph 
> --disable-stream-player --with-pcre_libdir=/usr/lib64/
>        make & make install
>  20. Go to resip/
>  21. run ./configure
>        [ericc@localhost resip]$ ./configure
>        What compile profile will you use?
>        (debug, nodebug, opt, gopt, prof, small) [debug] nodebug
>        Build the Repro proxy server?
>        (yes, no) [yes] no
>        Build the reCon Conversation Manager? (requires dtls-srtp patched 
> OpenSSL)
>        (yes, no) [no] yes
>        Do you want to include SIP over DTLS support? (Requires OpenSSL 0.9.8+)
>        (yes, no) [no] yes
>        Where is OpenSSL? (leave blank to use installed copy)
>        [] ~/resip/contrib/openssl
>        Where is popt.h?
>        [/usr/local/include] /usr/include
>        Where is libpopt?
>        [/usr/local/lib] /usr/lib
>        Writing Makefile.conf...
>  22. make
>
> Thanks,
> Eric
> _______________________________________________
> resiprocate-users mailing list
> resiprocate-users@xxxxxxxxxxxxxxx
> List Archive: http://list.resiprocate.org/archive/resiprocate-users/