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

Re: [reSIProcate-users] Issues building WebRTC branch



On 13/03/13 22:46, Nathan Stratton wrote:
> I am able to build latest svn, however I am having issues building the
> b-webrtc branch. I am building on Centos 6.4 system and --with-ssl is the
> only configure option after first running autoreconf --install. The errors
> all look like issues finding boost, however everything is in standard
> /usr/include/boost.
> 
> In file included from RemotePeer.cxx:1:
> RemotePeer.hxx:4:20: error: asio.hpp: No such file or directory
> In file included from ChannelManager.cxx:1:
> ChannelManager.hxx:4:20: error: asio.hpp: No such file or directory
> In file included from AsyncSocketBase.cxx:1:
> AsyncSocketBase.hxx:5:20: error: asio.hpp: No such file or directory
> In file included from ReTurnConfig.cxx:1:

Is this only a problem for reTurn?

If so, don't worry about it, just build reTurn from main.  There are no
changes to reTurn in the websockets branch.

The websockets changes only impact librutil, libresip, libdum and repro.
 If those have all compiled successfully before the reTurn error, you
will be able to try the websocket support.

> I also have tried passing CPPFLAGS, but that does not help. If I build
> without --with-ssl, just using ./configure on its own, I get:
> 
> libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I../.. -DRESIP_OSTYPE_LINUX
> -DRESIP_ARCH_X86_64 -DRESIP_LARCH_ -D_REENTRANT -DRESIP_TOOLCHAIN_GNU -g
> -O2 -Wall -Wno-deprecated
> -I/home/nathan/rpmbuild/SOURCES/resiprocate-1.9.0-10022/rutil/dns/ares -MT
> DataParameter.lo -MD -MP -MF .deps/DataParameter.Tpo -c DataParameter.cxx
>  -fPIC -DPIC -o .libs/DataParameter.o
> ConnectionBase.cxx: In member function ‘bool
> resip::ConnectionBase::wsProcessHandshake(int)’:
> ConnectionBase.cxx:609: error: ‘SHA1Stream’ was not declared in this scope
> ConnectionBase.cxx:609: error: expected ‘;’ before ‘wsSha1Stream’
> ConnectionBase.cxx:610: error: ‘wsSha1Stream’ was not declared in this scope
> ../../rutil/Data.hxx: At global scope:
> ../../rutil/Data.hxx:993: warning: ‘resip::invokeDataInit’ defined but not
> used

--with-ssl is essential for WebSockets (although the secured websocket
support is a bit broken, it will be fixed shortly though)

It's possible that some of these hashes could be implemented without the
openssl dependency, but that is not a high priority change.

> One other odd thing, is that most of the configure options don't seem to
> work. As and example --disable-repro, --disable-recon
> --disable-return-server, --disable-return-client, all give a "WARNING:
> unrecognized options:" errors.

Please try

  ./configure --help

to see the options we support.  Some of those options you mention don't
exist, we have to declare each of them in configure.ac and then put
conditional logic in Makefile.am to control which directories are
traversed during the build.  I put a current list at the bottom of this
email.  Typically, the options are available for disabling things like
p2p because it is incomplete.

> Also, note, that I am able to build current SVN as well as resiprocate 9737
> with the webrtc2sip patch.




Optional Features:
  --disable-option-checking  ignore unrecognized --enable/--with options
  --disable-FEATURE       do not include FEATURE (same as
--enable-FEATURE=no)
  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
  --disable-dependency-tracking  speeds up one-time build
  --enable-dependency-tracking   do not reject slow dependency extractors
  --enable-shared[=PKGS]  build shared libraries [default=yes]
  --enable-static[=PKGS]  build static libraries [default=yes]
  --enable-fast-install[=PKGS]
                          optimize for fast installation [default=yes]
  --disable-libtool-lock  avoid locking (might break parallel builds)
  --enable-ipv6           Enable IPv6 support
  --enable-dtls           Enable DTLS support (requires OpenSSL)
  --enable-pedantic-stack Enable pedantic behavior (fully parse all
messages)
  --enable-maintainer-mode  enable make rules and dependencies not useful
                          (and sometimes confusing) to the casual installer

Optional Packages:
  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
  --with-pic[=PKGS]       try to use only PIC/non-PIC objects [default=use
                          both]
  --with-gnu-ld           assume the C compiler uses GNU ld [default=no]
  --with-sysroot=DIR Search for dependent libraries within DIR
                        (or the compiler's sysroot if not specified).
  --with-c-ares           Link against libc-ares (rather than contrib/ares)
  --with-ssl              Link against OpenSSL libraries
  --with-popt             Link against POPT libraries
  --with-sigcomp          Link against Open SigComp libraries for SigComp
  --with-mysql            Link against MySQL client libraries
  --with-geoip            Link against MaxMind GeoIP libraries
  --with-radius           Link against RADIUS client libraries
  --with-b2bua            Build B2BUA lib, no extra dependencies
  --with-tfm              Build TFM, links against Netxx and cppunit
  --with-apps             Build apps, links against various things
  --with-ichat-gw         Build iChat gateway, links against gloox
  --with-recon            Build recon, links against sipX
  --with-p2p              Build P2P, links against S2C and SSL, unfinished