Skip to content

Instantly share code, notes, and snippets.

@michaelkrog
Last active August 14, 2016 20:59
Show Gist options
  • Save michaelkrog/1ac1984e69ac982cd39dda1c15ca98e8 to your computer and use it in GitHub Desktop.
Save michaelkrog/1ac1984e69ac982cd39dda1c15ca98e8 to your computer and use it in GitHub Desktop.
# Install base libraries
sudo apt-get install autoconf libtool automake libgudev-1.0-dev libxkbcommon-dev libudev-dev libmtdev-dev libev-dev gobject-introspection libgirepository1.0-dev gtk-doc-tools libcairo2-dev libpango1.0-dev libgdk-pixbuf2.0-dev libjson-glib-1.0-0 libatk1.0-dev libinput-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-bad1.0-dev
# Define some variables !!!
export LIBS="-lGLESv2 -lEGL -lopenmaxil -lbcm_host -lvcos -lvchiq_arm -lpthread -lrt -lm"
export CPPFLAGS="-I/opt/vc/include/ -I/opt/vc/include/interface/vcos/pthreads -I/opt/vc/include/ -I/opt/vc/include/interface/vcos/pthreads -I/opt/vc/include/interface/vmcs_host/linux"
export CFLAGS="-DSTANDALONE -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS -DTARGET_POSIX -D_LINUX -fPIC -DPIC -D_REENTRANT -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -U_FORTIFY_SOURCE -DHAVE_LIBOPENMAX=2 -DOMX -DOMX_SKIP64BIT -ftree-vectorize -pipe -DUSE_EXTERNAL_OMX -DHAVE_LIBBCM_HOST -DUSE_EXTERNAL_LIBBCM_HOST -DUSE_VCHIQ_ARM -Wno-psabi"
export LDFLAGS="-L/opt/vc/lib"
export LD_LIBRARY_PATH=/home/pi/dev/build/lib:/opt/vc/lib
export PKG_CONFIG_PATH=/home/pi/dev/build/lib/pkgconfig
export XDG_DATA_DIRS=/home/pi/dev/build/share
export GI_TYPELIB_PATH=/home/pi/dev/build/lib/girepository-1.0
# Checkout patch COGL and switch branch specific for PI
git clone https://github.com/michaelkrog/cogl
cd cogl
git checkout cogl-1.22-pi
# Build COGL 1.22
./autogen.sh --prefix=/home/pi/dev/build --enable-gl=no --enable-xlib-egl-platform=no --enable-gles2=yes --enable-null-egl-platform=yes --disable-glibtest --without-x --enable-introspection=yes --enable-cogl-gst
make
make install
cd ..
# Checkout libevdev
git clone git://anongit.freedesktop.org/libevdev
cd libevdev
./autogen.sh --prefix=/home/pi/dev/build && make && make install
cd ..
# Checkout libinput
git clone git://anongit.freedesktop.org/wayland/libinput
git checkout tags/0.8.0
./autogen.sh --prefix=/home/pi/dev/build && make && make install
cd ..
# Checkout clutter
git clone https://github.com/GNOME/clutter.git
git checkout tags/1.22.4
./autogen.sh --prefix=/home/pi/dev/build --enable-egl-backend=yes --enable-evdev-input=yes --enable-x11-backend=no --without-x --enable-maintainer-flags=no --enable-gdk-backend=no --enable-introspection=yes
make && make install
cd ..
# Checkout clutter-gst
git clone https://github.com/GNOME/clutter-gst.git
git checkout tags/3.0.18
./autogen.sh --prefix=/home/pi/dev/build && make && make install
cd ..
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment