| 1 | = Building on Orange PI = |
| 2 | |
| 3 | {{{#!div class="box" |
| 4 | These instructions are based on this mailing list post: |
| 5 | [http://lists.devloop.org.uk/pipermail/shifter-users/2017-August/001999.html XPRA - installation on Orange PI Plus 2E]: |
| 6 | * clean up potentially conflicting packages: |
| 7 | {{{ |
| 8 | apt-get purge xpra |
| 9 | }}} |
| 10 | * install the development packages (similar to other [/wiki/Building/Debian] distributions): |
| 11 | {{{ |
| 12 | apt-get install libx11-dev libxtst-dev libxcomposite-dev libxdamage-dev \ |
| 13 | libxkbfile-dev python-all-dev python-gobject-dev python-gtk2-dev \ |
| 14 | libx264-dev libvpx-dev libswscale-dev libavformat-dev libavcodec-dev \ |
| 15 | xvfb xauth x11-xkb-utils \ |
| 16 | zlib1g zlib1g-dev liblzo2-2 liblzo2-dev |
| 17 | }}} |
| 18 | * Some system-supplied Python tools are just too old. Get new ones directly from the world of Python: |
| 19 | {{{ |
| 20 | apt-get install python-pip |
| 21 | pip install --upgrade pip |
| 22 | pip install lz4 |
| 23 | }}} |
| 24 | * System version of ffmpeg is too old. Compile new one from source. Note the suggested LDPATH and PIC flag in configuration step. (Found this online at some stage - forgot source - sorry.). Compilation can take a long time. |
| 25 | The build flags used here disable most features and only keep what is actually needed by xpra - you may want to keep more features enabled if you also intend to use the ffmpeg libraries for another purpose: |
| 26 | {{{ |
| 27 | wget http://ffmpeg.org/releases/ffmpeg-3.3.3.tar.bz2 |
| 28 | tar -jxf ffmpeg-3.3.3.tar.bz2 |
| 29 | cd ffmpeg-3.3.3 |
| 30 | LDPATH=/usr/lib/arm-linux-gnueabihf ./configure \ |
| 31 | --enable-runtime-cpudetect \ |
| 32 | --disable-avdevice \ |
| 33 | --enable-pic \ |
| 34 | --disable-zlib \ |
| 35 | --disable-filters \ |
| 36 | --disable-everything \ |
| 37 | --disable-doc \ |
| 38 | --disable-programs \ |
| 39 | --disable-libxcb \ |
| 40 | --enable-libx264 \ |
| 41 | --enable-libvpx \ |
| 42 | --enable-gpl \ |
| 43 | --enable-protocol=file \ |
| 44 | --enable-decoder=h264 \ |
| 45 | --enable-decoder=hevc \ |
| 46 | --enable-decoder=vp8 \ |
| 47 | --enable-decoder=vp9 \ |
| 48 | --enable-decoder=mpeg4 \ |
| 49 | --enable-encoder=libvpx_vp8 \ |
| 50 | --enable-encoder=libvpx_vp9 \ |
| 51 | --enable-encoder=mpeg4 \ |
| 52 | --enable-encoder=libx264 \ |
| 53 | --enable-encoder=aac \ |
| 54 | --enable-muxer=mp4 \ |
| 55 | --enable-muxer=webm \ |
| 56 | --enable-muxer=matroska \ |
| 57 | --enable-muxer=ogg \ |
| 58 | --enable-demuxer=h264 \ |
| 59 | --enable-demuxer=hevc \ |
| 60 | --enable-demuxer=m4v \ |
| 61 | --enable-demuxer=matroska \ |
| 62 | --enable-demuxer=ogg \ |
| 63 | --enable-shared \ |
| 64 | --enable-debug \ |
| 65 | --disable-stripping \ |
| 66 | --disable-symver \ |
| 67 | --enable-rpath |
| 68 | make |
| 69 | make install |
| 70 | }}} |
| 71 | * to be able to use most of xpra's features, you may also want to install: |
| 72 | {{{ |
| 73 | apt-get install python-netifaces dbus-x11 python-dbus python-rencode \ |
| 74 | hicolor-icon-theme python-avahi python-numpy \ |
| 75 | gstreamer1.0-x gstreamer1.0-tools \ |
| 76 | python-pil python-lzo python-setuptools |
| 77 | }}} |
| 78 | * build xpra from source as per [/wiki/Building]: |
| 79 | {{{ |
| 80 | wget https://www.xpra.org/src/xpra-2.1.1.tar.xz |
| 81 | unxz xpra-2.1.1.tar.xz |
| 82 | tar xvf xpra-2.1.1.tar |
| 83 | cd xpra-2.1.1 |
| 84 | LDPATH=/usr/lib/arm-linux-gnueabihf ./setup.py install |
| 85 | }}} |
| 86 | |
| 87 | }}} |