-
Notifications
You must be signed in to change notification settings - Fork 30
Build IPOP for Ubuntu and Raspberry Pi
Description | |
---|---|
Tested on | Ubuntu 18.04 x64 Raspbian Buster on Raspberry Pi 3 and 4 |
Time | ~ 10 Minutes |
sudo apt update -y
sudo apt install -y git make libssl-dev g++-5 python3 python3-pip python3-dev openvswitch-switch iproute2 bridge-utils
sudo -H python3 -m pip install --upgrade pip
sudo -H python3 -m pip --no-cache-dir install psutil==5.6.3 sleekxmpp==1.3.3 requests==2.21.0 simplejson==3.16.0 ryu==4.30
Note: Python v3.6 or higher is required.
Run the following commands as a regular (non-root) user:
mkdir -p ~/workspace/ipop-project/ipop-vpn/config
cd ~/workspace/ipop-project/
Note: If you have already built the WebRTC libraries yourself following this Wiki's instructions, this step is already done and you should skip it.
For master
branch (Development):
git clone https://github.com/ipop-project/Tincan
For other branches, for instance bh1
(Latest Stable Release):
git clone -b bh1 --single-branch https://github.com/ipop-project/Tincan
Ubuntu, x86_64:
git clone -b ubuntu-x64 --single-branch https://github.com/ipop-project/3rd-Party-Libs.git Tincan/external/3rd-Party-Libs
Raspberry Pi 3, ARMv7:
git clone -b rpi3-arm7 --single-branch https://github.com/ipop-project/3rd-Party-Libs.git Tincan/external/3rd-Party-Libs
Raspberry Pi Zero, ARMv6:
git clone -b rpizero-arm6 --single-branch https://github.com/ipop-project/3rd-Party-Libs.git Tincan/external/3rd-Party-Libs
For master
branch (Development):
git clone https://github.com/ipop-project/Controllers
For other branches, for instance bh1
(Latest Stable Release):
git clone -b bh1 --single-branch https://github.com/ipop-project/Controllers
Then:
cp -rf Controllers/controller/ ipop-vpn/
cd Tincan/trunk/build/
To build the Tincan binary in debug mode:
make DEBUG=1
cp -f ../out/debug/$(uname -m)/ipop-tincan ../../../ipop-vpn/
Otherwise, for release mode:
make
cp -f ../out/release/$(uname -m)/ipop-tincan ../../../ipop-vpn/
Now you can manually run IPOP from ipop-vpn
directory.
If you want to build the IPOP deb package to be able to install/start/stop/remove IPOP easier:
cd ~/workspace/ipop-project
git clone https://github.com/ipop-project/Release-Management.git
cp ipop-vpn/ipop-tincan Release-Management/Deploy/deb-pak/ipop-vpn/opt/ipop-vpn/
cp -r Controllers/controller Release-Management/Deploy/deb-pak/ipop-vpn/opt/ipop-vpn/
cd Release-Management/Deploy/deb-pak && ./deb-gen
The deb package, ipop-vpn_{ver}_{arch}.deb
will be generated in the current directory. Now you can install and run it.