commit | 4294a29114b6b86ba57b49d9944ca3fe66512b63 | [log] [tgz] |
---|---|---|
author | Alexander Afanasyev <alexander.afanasyev@ucla.edu> | Sun Nov 10 16:58:13 2013 -0800 |
committer | Alexander Afanasyev <alexander.afanasyev@ucla.edu> | Fri May 09 15:16:09 2014 -0700 |
tree | 74841a6decc3fae58a0b6b0691c7b087b50c4dee | |
parent | b5a0fd3ca74ee85573e0d8f05f595b75e98d4149 [diff] |
Fixing strange bugs in getCertNames Avoid reading input to stringbuf and then parsing. boost::tokenizer can work directly on streams (with some hacks).
ChronoChat is a multiparty chat application that demostrates our synchronization primitive that we call ChronoSync.
Note that after you click to close ChronoChat, it will keep running on your system tray. To restore it to normal size window, you have to click on the system tray icon (normally on the upper right corner of your screen). Clicking on the dock won't work for now and is still on the to-do list (because I'm using qt for gui, not the native Cocoa framework).
Install MacPorts, if not yet installed (http://www.macports.org/) and configure NDN ports repository (https://github.com/named-data/ccnx/wiki/Using-ccnx-with-macports). If your Macports are installed in /opt/local
, add the following line at the end of /opt/local/etc/macports/sources.conf
before the default port repository:
rsync://macports.named-data.net/macports/
Update port definitions and install (+load) required packages
$ sudo port selfupdate # Install and CCNx sudo port install ccnx sudo port load ccnx # Install ChronoChat dependencies sudo port install pkgconfig protobuf-cpp boost qt4-mac
Fetch source code with submodules
git clone --recursive git://github.com/named-data/ChronoChat
If you already cloned repository, you can update submodules this way:
git submodule update --init
Configure and install ChronoSync
cd ChronoChat/ChronoSync ./waf configure ./waf sudo ./waf install
Note, you may need to add --ndnx=<DIR>
or --openssl=<DIR>
flags to ./waf configure
if NDNx and/or openssl cannot be found.
Configure and build ChronoChat
cd .. PKG_CONFIG_PATH=/opt/local/lib/pkgconfig:/usr/local/lib/pkgconfig:/usr/lib/pkgconfig ./waf configure ./waf
Congratulations! build/ChronoChat.app is ready to use (on a Mac).
Install dependencies
# General dependencies (build tools and dependencies for CCNx) sudo apt-get install git libpcap-dev libxml2-dev make libssl-dev libexpat-dev g++ pkg-config # ChronoSync/ChronoChat dependencies sudo apt-get install libprotobuf-dev protobuf-compiler libevent-dev sudo apt-get install libboost1.48-all-dev sudo apt-get install qt4-dev-tools
NOTE Only 1.48 version of boost libraries should be installed from packages. Since Ubuntu 12.04 ships with two versions, please make sure that 1.46 is not present, otherwise result is not guaranteed.
Download and install NDN fork of CCNx software
git clone git://github.com/named-data/ccnx cd ccnx ./configure make sudo make install
Fetch source code with submodules
git clone --recursive git://github.com/named-data/ChronoChat
If you already cloned repository, you can update submodules this way:
git submodule update --init
Configure and install ChronoSync
cd ChronoChat/ChronoSync ./waf configure ./waf sudo ./waf install sudo ldconfig
Note, you may need to add --ndnx=<DIR>
or --openssl=<DIR>
flags to ./waf configure
if NDNx and/or openssl cannot be found.
Configure and build ChronoChat
cd .. ./waf configure ./waf
Congratulations! build/ChronoChat is ready to use. Do not forget to start ccnd and configure FIB before using ChronoChat.