RetroShare/libretroshare/src
chrisparker126 bbd3c17b6d completed: compiles but not debugged
git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@287 b45a01b8-16f6-495d-af2f-9b41ad6348cc
2008-01-06 13:07:20 +00:00
..
dbase - Removed old file indexing code. 2007-12-12 01:08:31 +00:00
dht Created V0.3.x branch and moved the head into the trunk directory. 2007-11-15 03:18:48 +00:00
fltkgui Created V0.3.x branch and moved the head into the trunk directory. 2007-11-15 03:18:48 +00:00
pqi Major changes to the networking core of retroshare to introduce the new serialiser. 2007-12-12 01:29:14 +00:00
rsiface Final changes to add the new serialiser. 2007-12-12 01:43:17 +00:00
rsserver Final changes to add the new serialiser. 2007-12-12 01:43:17 +00:00
scripts Changes to configuration scripts to remove CHANNELS/PROXY compile options. 2007-12-12 00:58:28 +00:00
serialiser completed: compiles but not debugged 2008-01-06 13:07:20 +00:00
server Modifications to bring in the new serialiser: 2007-12-12 01:39:09 +00:00
services Final changes to add the new serialiser. 2007-12-12 01:43:17 +00:00
tcponudp Created V0.3.x branch and moved the head into the trunk directory. 2007-11-15 03:18:48 +00:00
upnp Created V0.3.x branch and moved the head into the trunk directory. 2007-11-15 03:18:48 +00:00
util Addition of a util platform independent networking header file. 2007-12-12 00:56:46 +00:00
BUGS Created V0.3.x branch and moved the head into the trunk directory. 2007-11-15 03:18:48 +00:00
FAQ Created V0.3.x branch and moved the head into the trunk directory. 2007-11-15 03:18:48 +00:00
licence Created V0.3.x branch and moved the head into the trunk directory. 2007-11-15 03:18:48 +00:00
make.opt Final changes to add the new serialiser. 2007-12-12 01:43:17 +00:00
Makefile Final changes to add the new serialiser. 2007-12-12 01:43:17 +00:00
Readme.txt Created V0.3.x branch and moved the head into the trunk directory. 2007-11-15 03:18:48 +00:00
Readme.txt-V0.2.1 Created V0.3.x branch and moved the head into the trunk directory. 2007-11-15 03:18:48 +00:00
TODO Created V0.3.x branch and moved the head into the trunk directory. 2007-11-15 03:18:48 +00:00

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
---------------------------------------------