gtk_example/install.sh

72 lines
1.8 KiB
Bash

#!/bin/bash
set -e
# https://terminalroot.com/how-to-install-gtkmm-4-on-ubuntu-2204/
# https://www.devdungeon.com/wiki/doku.php?id=programming:gtk4
sudo apt install build-essential git g++ autotools-dev libgtkmm-3.0-dev \
libgtkmm-3.0-doc mm-common pkg-config
if [ ! -f libsigc++-3.0.7.tar.xz ]; then
wget https://download.gnome.org/sources/libsigc++/3.0/libsigc++-3.0.7.tar.xz
fi
tar Jxvf libsigc++-3.0.7.tar.xz
cd libsigc++-3.0.7/
./autogen.sh --prefix=/usr/local
make -j`nproc --ignore=2`
sudo make install
cd ..
if [ ! -f glibmm-2.68.2.tar.xz ]; then
wget https://download.gnome.org/sources/glibmm/2.68/glibmm-2.68.2.tar.xz
fi
tar Jxvf glibmm-2.68.2.tar.xz
cd glibmm-2.68.2/
./autogen.sh --prefix=/usr
make -j`nproc --ignore=2`
sudo make install
cd ..
if [ ! -d cairomm ]; then
git clone https://github.com/freedesktop/cairomm.git
fi
cd cairomm
cp README.md README
./autogen.sh --prefix=/usr
make -j`nproc --ignore=2`
sudo make install
cd ..
if [ ! -f pangomm-2.50.0.tar.xz ]; then
wget https://download.gnome.org/sources/pangomm/2.50/pangomm-2.50.0.tar.xz
fi
tar Jxvf pangomm-2.50.0.tar.xz
cd pangomm-2.50.0/
./autogen.sh --prefix=/usr
make -j`nproc --ignore=2`
sudo make install
cd ..
ls /usr/lib/libsigc-3*
sudo ln -s /usr/local/lib/libsigc-3.0.so.0.0.0 /usr/lib/libsigc-3.0.so.0.0.0
sudo ln -s /usr/local/lib/libsigc-3.0.la /usr/lib/libsigc-3.0.la
sudo ln -s /usr/local/lib/libsigc-3.0.so /usr/lib/libsigc-3.0.so
sudo ln -s /usr/local/lib/libsigc-3.0.so.0 /usr/lib/libsigc-3.0.so.0
if [ ! -f gtkmm-4.6.1.tar.xz ]; then
wget https://download.gnome.org/sources/gtkmm/4.6/gtkmm-4.6.1.tar.xz
wget https://download.gnome.org/sources/gtkmm/4.6/gtkmm-4.6.1.sha256sum
sha256sum -c --ignore-missing gtkmm-4.6.1.sha256sum
fi
tar Jxvf gtkmm-4.6.1.tar.xz
cd gtkmm-4.6.1
./autogen.sh --prefix=/usr
make -j`nproc --ignore=2`
sudo make install