Line 9: |
Line 9: |
| You can download the source code as a [https://download.openvz.org/criu/ release tarball] or sync the [https://github.com/xemul/criu git repository]. If you plan to modify CRIU sources (e.g. to [[How to submit patches|contribute the code back]]) the latter way is highly recommended. The latest and greatest sources are: {{Latest release}} | | You can download the source code as a [https://download.openvz.org/criu/ release tarball] or sync the [https://github.com/xemul/criu git repository]. If you plan to modify CRIU sources (e.g. to [[How to submit patches|contribute the code back]]) the latter way is highly recommended. The latest and greatest sources are: {{Latest release}} |
| | | |
− | == Dependencies == | + | == Build dependencies == |
| | | |
| === Compiler and C Library === | | === Compiler and C Library === |
Line 15: |
Line 15: |
| 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> packages (on Debian, <code>[https://packages.debian.org/build-essential build-essential]</code> will pull in both at once). | | 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> packages (on Debian, <code>[https://packages.debian.org/build-essential build-essential]</code> will pull in both at once). |
| | | |
− | For building on x86 with compatible 32-bit applications C/R support you will need <code>libc6-dev-i386, gcc-multilib</code> instead of <code>gcc</code>. | + | For building with [[32bit tasks C/R]] support you will need <code>libc6-dev-i386, gcc-multilib</code> instead of <code>gcc</code>. |
| | | |
− | If you are cross compiling for ARM, use distribution packages or download prebuilt toolchains from Linaro.
| + | [[ARM build|Cross-compilation for ARM]] is also possible. |
− | | |
− | <div class="toccolours mw-collapsible mw-collapsed" style="width:800px">
| |
− | Downloading Linaro toolchains
| |
− | <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
| |
− | wget http://releases.linaro.org/14.09/components/toolchain/binaries/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz
| |
− | tar --strip=1 -C `uname -m`-linux-gnu -xf gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz
| |
− | wget http://releases.linaro.org/14.09/components/toolchain/binaries/gcc-linaro-aarch64-linux-gnu-4.9-2014.09_linux.tar.xz
| |
− | tar --strip=1 -C `uname -m`-linux-gnu -xf gcc-linaro-aarch64-linux-gnu-4.9-2014.09_linux.tar.xz
| |
− | cd ..
| |
− | </div>
| |
− | </div>
| |
| | | |
| === Protocol Buffers === | | === Protocol Buffers === |