-
Notifications
You must be signed in to change notification settings - Fork 15
Setting up the environment
For development and testing we use a Linux system, therefore further instructions will be for such a system.
Please make sure you have the latest version of the following two packages installed on your OS:
- git (to download the picoTCP repository)
- check (to run the unit tests)
- vde2, libvdeplug, libpcap (to run functional tests and examples)
e.g. for Ubuntu 14.04 and Ubuntu 16.04:
$ sudo apt-get install git
$ sudo apt-get install check
$ sudo apt-get install vde2
$ sudo apt-get install libvdeplug2-dev
$ sudo apt-get install libpcap0.8-dev
$ sudo apt-get install openvpn
e.g. for Fedora:
$ sudo dnf install git
$ sudo dnf install check-devel
$ sudo dnf install libasan.x86_64
$ sudo dnf install vde2
$ sudo dnf install libvdeplug2-dev
$ sudo dnf install libpcap0.8-dev
e.g. for OpenSUSE and derivates:
$ sudo zypper install git
$ sudo zypper install check-devel
$ sudo zypper install vde2
$ sudo zypper install libvdeplug3-devel
$ sudo zypper install libpcap-devel
The picoTCP source code is hosted on GitHub at https://gitlab.com/picotcp/picotcp. The easiest way to get a hold of a copy is to use Git and make a clone:
$ git clone https://gitlab.com/picotcp/picotcp
Or if you have a gitlab account setup with a ssh public key (recommended):
$ git clone git@gitlab.com:picotcp/picotcp.git
Make sure you are in the picoTCP directory and compile picoTCP with:
$ make
You should now have the picoTCP library (libpicotcp.a) statically compiled for your own machine’s architecture under picotcp/build/lib.
Sometimes you just want to mess around with some code without having hardware near at hand. picoTCP has tun/tap and vde support so it can run natively on your Linux distribution of choice without a problem! For more info we refer to:Kernel and The VDE project
We use these virtual devices in the tests, for the examples but also during development.
- Learn how to build and run an Example application
- Learn more about our Test environment
Getting Started
- Setting up the environment
- Testing
- Configuring and compiling
- Running picoTCP on Linux - Deprecated (see setting up)
- Running picoTCP on Windows
Porting
- Build process explained
- Porting the build to another compiler or IDE
- Porting picoTCP to your favorite embedded target
- Porting picoTCP to your favorite Operating System
- Example device driver
Development