mirror of
https://github.com/RetroShare/RetroShare.git
synced 2025-06-04 12:49:28 -04:00
![]() the rewrite of the retroshare core networking stack. This check-in commits the changes to the pqi code, and provides the majority of the improvements. (1) Introduced new interfaces for DHT and UPnP abstraction: p3dhtmgr.h, p3upnpmgr.h (2) Introduces abstraction for Authentication: p3authmgr.h (3) New Connection Manager to coordinate networking code: p3connmgr.h (4) New Configuration Manager: p3cfgmgr.h This library has been significantly modified to support DHT synced connections to enable connections between Firewalled Friends. The connection code has been rewritten within a new framework, which should make extensions easier to code. Also removed significant amount of old code relating to Tunnels, Channels etc. This will be recycled later as higher level services that should not be part of the core networking library. git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@306 b45a01b8-16f6-495d-af2f-9b41ad6348cc |
||
---|---|---|
.. | ||
dbase | ||
dht | ||
fltkgui | ||
pqi | ||
rsiface | ||
rsserver | ||
scripts | ||
serialiser | ||
server | ||
services | ||
tcponudp | ||
upnp | ||
util | ||
BUGS | ||
FAQ | ||
licence | ||
make.opt | ||
Makefile | ||
Readme.txt | ||
Readme.txt-V0.2.1 | ||
TODO |
Compiling + Running RetroShare (V0.3.0) ------------------------------------------------------------- Quick Requirements: --------------------------------------------- Libraries/Tools: C/C++ Compiler. (standard on Linux/cygwin) OpenSSL-0.9.7g-xpgp KadC Dht library Qt-4.2 development libraries. RetroShare Source Code: ( from sf.net/projects/retroshare) Qt-GUI-XXX.tgz retroshare-src-v0.3.XXX.tgz Windows Requirements: Cygwin (Windows Only) Pthreads (Windows Only) Zlib (Windows Only) --------------------------------------------- OpenSSL-0.9.7g-xpgp is available at: http://www.lunamutt.com/retroshare/openssl-0.9.7g-xpgp-0.1c.tgz KadC (latest) is available from sourceforge.net Download/Compile as per instructions... --------------------------------------------- Compiling Linux --------------------------------------------- (1) compile openSSL-0.9.7g-xpgp. (2) compile KadC. (and correct the library) (4) Modify ./make.opts (4a) modify the Makefile so that: OS=Linux or OS=Win (4c) Define SSL_DIR to point to openSSL-0.9.7g-xpgp. (4c) Define KADC_DIR to point to KadC (5) type: make This builds ./lib/libretroshare.a, and the various test programs. There is server-only (no GUI) executable compiled in ./rsiface/retroshare-nogui, you can run this to check that its working. --------------------------------------------- Compiling Linux (Alternative Instructions from Bharath) --------------------------------------------- here's how to compiled retroshare on ubuntu linux: compile openssl: 1. Get the patched version of openssl (openssl-0.9.7g-xpgp, from http://www.lunamutt.com) 2. run: ./config make make test compile KadC: 1. Get KadC library from http://kadc.sourceforge.net/ 2. run: make install packages needed for retroshare compile: sudo apt-get install libxft-dev sudo apt-get install libXinerama-dev complile retroshare: 1. set directories in make.opt: RS_DIR=/home/dev/rs-v0.3.0-pr8/src SSL_DIR=/home/dev/openssl-0.9.7g-xpgp-0.1c KADC_DIR=/home/dev/KadC 2. comment out the directory declarations uncer Cygwin since that will override your directory declarations from 1. 3. change RSLIBS = -L$(LIBDIR) -lretroshare -L$(SSL_DIR) -lssl -lcrypto -lpthread -lKadC to RSLIBS = -L$(LIBDIR) -lretroshare -L$(SSL_DIR) -lssl -lcrypto -lpthread -L$(KADC_DIR) -lKadC 4. run: make Hope this helps. --------------------------------------------- Compiling the Qt GUI _____________________________________________ (1) untar the Qt-GUI source package. run qmake, tar -xvzf Qt-GUI-XXXX.tgz cd Qt-Gui-XXX/src/ qmake-qt4 Retroshare.pro (2) tweak the makefile: The default makefile doesn't have the links to the retroshare libraries. It should something like this: RSLIBS = -L/home/dev/prog/devel/rs-v0.3.0XXX/src/lib -lretroshare -lKadC SSLLIBS = -L/home/dev/prog/devel/openssl-0.9.7g-xpgp -lssl -lcrypto LIBS = $(SUBLIBS) $(RSLIBS) $(SSLLIBS) -L/usr/lib -lQtXml -lQtGui -lQtNetwork -lQtCore -lpthread This should build you an executable: RetroShare. ------------------------------------------------ This has been compiled on the following platforms: (a) Debian Linux (stable/testing/unstable) (b) Suse Linux (9.X/10.X) (c) WinXP ------------------------------------------------ WIN XP Compilation. ------------------------------------------------ This much harder, and more perilous than the Linux compilation: It requires both the cygwin and the mingw compilers... Need: Cygwin development environment Qt4.2 opensource development kit + MinGw. source code for all libraries. In Brief: UNDER Cygwin: (1) Compile openssl-xpgp. (2) Compile pthreads. (3) Compile zlib. (4) Compile KadC. (there are some tweaks, needed to the code) (5) Compile retroshare-v0.3.0 UNDER Mingw: (6) Compile the Qt-Gui. Email me if you're having trouble: retroshare@lunamutt.com ---------------------------------------------