50
edits
Changes
→Dependencies
=== Compiler and C Library ===
CRIU is mostly written in C and the build system is based on Makefiles. Thus just install standard <code>gcc</code> and <code>make</code> setspackages (on Debian, <code>[https://packages.debian.org/build-essential build-essential]</code> will pull in both at once).
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px">
<div class="mw-collapsible-content">
sudo apt-get install lib32stdc++6 lib32z1 # These are ia32 binaries
mkdir -p deps/`uname -m`-linux-gnu
cd deps
=== Protocol Buffers ===
CRIU uses the [https://developers.google.com/protocol-buffers/ Google Protocol Buffers] to read and write [[images]] and thus requires [https://github.com/protobuf-c/protobuf-c C language bindings]. The <code>protoc</code> tool is required at build time and the <code>libprotobuf-c.so</code> shared object is required at build and run time. [[CRIT]] also uses python language bindings for protocol buffers and requires the <code>descriptor.proto</code> file from devel set that can be typically found in the <code>provided by a distribution's protobuf-devel</code> development package.
==== Distribution Packages ====
** <code>protobuf</code>
** <code>protobuf-c</code>
** <code>protobuf-pythonc-devel</code>
** <code>protobuf-compiler</code>
** <code>protobuf-devel</code>
** <code>protobuf-c-develpython</code>
* Debian package names
** <code>libprotobuf-c0-dev</code>
** <code>protobuf-c-compiler</code>
** <code>protobuf-compiler</code>
** <code>protobuf-python</code>
==== Building Protocol Buffers From Source ====
If you would like to build from source, you can use the following commands to obtain the source code repositories, configure, and build the code. On a Debian based system, you may have to do install <code>autoconf curl g++ libtool</code> packages first.
<div class="toccolours mw-collapsible mw-collapsed" style="width:800px">