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