README.md
1# Building for non-linux platforms
2
3Compiling the gstqmlgl plugin for non-linux platforms is not so trivial.
4This file explains the steps that need to be followed for a successful build.
5
6## Step 1
7
8Build GStreamer for the target platform using cerbero.
9
10## Step 2
11
12Enter the cerbero shell:
13```
14./cerbero-uninstalled -c config/<target platform config>.cbc shell
15```
16
17## Step 3
18
19Export the following environment variables:
20```
21export PATH=/path/to/Qt/<version>/<platform>/bin:$PATH
22```
23
24if you are cross-compiling (ex. for android), also export:
25```
26export PKG_CONFIG_SYSROOT_DIR=/
27```
28
29Additionally, if you are building for android:
30```
31export ANDROID_NDK_ROOT=$ANDROID_NDK
32```
33
34**Note**: the ANDROID_NDK variable is set by the cerbero shell; if you are not
35using this shell, set it to the directory where you have installed the android
36NDK. Additionally, if you are not building through the cerbero shell, it is also
37important to have set PKG_CONFIG_LIBDIR to $GSTREAMER_ROOT/lib/pkgconfig.
38
39## Step 4
40
41cd to the directory of the gstqmlgl plugin and run:
42```
43qmake .
44make
45```
46
47## Step 5
48
49Copy the built plugin to your $GSTREAMER_ROOT/lib/gstreamer-1.0 or link to it
50directly if it is compiled statically
51
52# Building for Windows using pre-built gstreamer development package and Qt Creator
53
54## Step 1
55
56Open `qtplugin.pro` in Qt Creator as project and configure it as usual.
57
58## Step 2
59
60Open `qtplugin.pro` in the editor and make sure `GSTREAMER_PATH`
61variable in `qmlplugin.pro` is set to the path of your gstreamer SDK installation. This directory
62should contain subdirectories `bin`, `include`, `lib` etc. Pay attention to the correct choice
63of x86 or x86_64 platform.
64
65## Step 3
66
67Build the project as usual.
68
69## Step 3
70
71Copy the built plugin to your $GSTREAMER_ROOT/lib/gstreamer-1.0 or link to it
72directly if it is compiled statically.
73
74# Building for Windows using pre-built gstreamer development package and Qt on MinGW command line
75
76## Step 1
77
78Launch Qt developer command line from the Start menu.
79
80## Step 2
81
82cd to the directory of the gstqmlgl plugin and make sure `GSTREAMER_PATH`
83variable in `qmlplugin.pro` is set to the path of your gstreamer SDK installation. This directory
84should contain subdirectories `bin`, `include`, `lib` etc. Pay attention to the correct choice
85of x86 or x86_64 platform.
86
87## Step 3
88
89Run the following commands in the gstqmlgl plugin directory:
90
91```
92qmake
93mingw32-make
94```
95
96## Step 4
97
98Copy the built plugin to your $GSTREAMER_ROOT/lib/gstreamer-1.0 or link to it
99directly if it is compiled statically.