インストールした環境
- Amazon Linux AMI release 2015.09
- Python 2.7.6(pyenv)
必要なライブラリのインストール
- yumでインストール可能なものはyumでインストールする
sudo yum -y install gcc*
sudo yum -y expat-devel
sudo yum -y gettext
sudo yum -y glib2 glib2-devel
sudo yum -y gobject-introspection gobject-introspection-devel
sudo yum -y python27-pycairo python27-pycairo-devel
-
yumで提供されていないものはソースからインストール(どこかのリポジトリにあるのかも)
- ソースをダウンロードして解凍
wget http://ftp.gnome.org/pub/GNOME/sources/pygobject/3.10/pygobject-3.10.2.tar.xz tar xvf pygobject-3.10.2.tar.xz cd pygobject-3.10.2
- コンパイルしてpyenv環境をターゲットにインストール
./configure --prefix=/home/ec2-user/.pyenv/versions/2.7.6 # pyenvをホームディレクトリにインストールしています。 make sudo make install
exiv2をインストール
- ソースをダウンロードして解凍
wget http://www.exiv2.org/exiv2-0.25.tar.gz
tar xvf exiv2-0.25.tar.gz
cd exiv2-0.25
- コンパイルしてpyenv環境をターゲットにインストール
./configure
make
sudo make install
gexiv2をインストール
- ソースをダウンロードして解凍
wget https://download.gnome.org/sources/gexiv2/0.10/gexiv2-0.10.3.tar.xz
tar xvf gexiv2-0.10.3.tar.xz
cd gexiv2-0.10.3
- コンパイルしてインストール
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig # exiv2.pcをpkg-configが見つけられない状態なので環境変数で指定
./configure --enable-introspection
make
sudo make install
virtualenvとリンク
- virtualenvを作成
virtualenv -p ~/.pyenv/shims/python env # virtualenvを作成する場所はどこでもよい
. env/bin/activate
cd env/lib/python2.7/site-packages
ln -s ~/.pyenv/versions/2.7.6/lib/python2.7/site-packages/gi gi
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
python
テスト
import gi
gi.require_version('GExiv2', '0.10')
from gi.repository import GExiv2
metadata = GExiv2.Metadata()
参考
以上です。