This HowTo is for native compiling on Raspberry Pi.
There are other faster ways to compile Raspberry Pi with architectural root or cross compiling tools or chroot. This tutorial is for compiling on Raspberry Pi directly. Takes some time but works well.If you do not want to compile yourself, i upload sometimes binarys Gui+noGui to https://sourceforge.net/projects/pishare/
Tutorial should work for Debian Wheezy 7.0 in general!
First install your Raspbian (Debian ARMHF) on your Raspberry Pi and do your settings, static IP or whatever your network needs.
SSH into your Raspberry Pi
ssh pi@IPaddress
Upgrade your system
sudo apt-get update && apt-get upgrade -y
Install dependencies to build RetroShare regarding http://retroshare.sourceforge.net/wiki/index.php/UnixCompile
sudo apt-get update sudo apt-get install g++ libgnome-keyring-dev libqt4-dev libxss-dev \ libssl-dev libupnp-dev subversion libbz2-dev \ libprotobuf-dev protobuf-compiler cmake \ qt4-qmake libqt4-dev-bin libbz2-dev
build libssh for RetroShare noGui before
Go to your home directory
cd ~/
create build directory
mkdir build
enter the build dir
cd build
create a directory lib
mkdir lib
enter the directory lib
cd lib
download the libssh-0.5.4 source tarball
wget https://red.libssh.org/attachments/download/41/libssh-0.5.4.tar.gz
extract the tarball
tar zxvf libssh-0.5.4.tar.gz
enter the created room
cd libssh-0.5.4
create another build directory
mkdir build
enter the directory build
cd build
run command cmake
cmake -DWITH_STATIC_LIB=ON ..
run command make
make
libssh is built, good.
Download RetroShare Sourcecode from the Subversion Repository
go to your home directory
clone RetroShare Trunk from subversion Code repository
cd ~/build && svn co svn://svn.code.sf.net/p/retroshare/code/trunk retroshare
256MB Ram is not enough
If you do not have enough ram (512MB) you need to create a bigger SWAP Space.
command “free -h” shows your ram and Swap space.
pi@retropi ~ $ free -h total used free shared buffers cached Mem: 232M 90M 141M 0B 11M 55M -/+ buffers/cache: 23M 208M Swap: 99M 0B 99M
cd ~/
create a file with 512MB
sudo dd if=/dev/zero of=swapfile bs=1M count=512
create a swapfile out of the file.
sudo mkswap swapfile start swaping sudo swapon swapfile
the swap space is now increased by 512MB.
pi@retropi ~ $ free -h total used free shared buffers cached Mem: 232M 220M 11M 0B 3,2M 190M -/+ buffers/cache: 26M 205M Swap: 611M 0B 611M
after a restart the swap is not active anymore and the swapfile unneeded
retroshare-gui takes a lot of time on this small CPU.
i suggest using screen http://www.gnu.org/software/screen/
apt-get install screen
start screen
screen
enter the message away
Compile RetroShare
you can run this command in a single step and it will compile libbitdht, openpgpsdk, libretroshare, rsctrl, retroshare-nogui and retroshare-gui
cd ~/build/retroshare/libbitdht/src && qmake && make clean && make -j 4 && \ cd ~/build/retroshare/openpgpsdk/src && qmake && make clean && make -j 4 && \ cd ~/build/retroshare/libretroshare/src && qmake && make clean && make -j 4 && \ cd ~/build/retroshare/rsctrl/src && make && \ cd ~/build/retroshare/retroshare-nogui/src && qmake && make clean && make -j 4 && \ cd ~/build/retroshare/retroshare-gui/src && qmake && make clean && make -j 4
and detach from this screen session with “CTRL+A D”
you can now grab a cup of coffee and watch http://www.nyan.cat/pirate.php
after 1-2 hours start your screen session with “screen -r +TAB”
and look, if it has finished yet.
screen -r +TAB
if not finished yet, wait and do more NYANing.
Copy your fresh binarys to your preferred directory
after finishing this process.
cd ~ cd ~/build/retroshare/retroshare-nogui/src/ cp retroshare-nogui ~/ cd ~/build/retroshare/retroshare-gui/src/ cp RetroShare ~/
your executeable binarys are now in your home directory
cd ~/
exit your SSH session
start SSH with X-Forwarding into your Raspberry Pi to start the GUI
for X-Forwarding use a Linux PC or a Windows PC with xming
cd ~/
Start RetroShare and create a new ID or set up a second location for your Main ID
./RetroShare
Your Gui should now be running