CentOS7にimagemagickとjpegoptimのインストール

CentOS7.1のサーバーにrailsをデプロイするとき、imagemagickやjpegoptimをインストールしておく必要があったため、インストールしました。
（[これ](http://qiita.com/noripeex/items/6d8057825c186f7ccbf7)のデプロイのためです。）

# libjpegインストール
まずはImageMagickのための各種モジュールをインストールしておきます。下準備です。

```bash
$ yum -y install libjpeg
$ yum -y install libjpeg-turbo-devel
$ yum -y install libpng-devel
```

# ImageMagickインストール
上の準備ができたらさっそくImageMagickのインストールを行います。
[こちら](http://akkunchoi.github.io/imagemagick-rmagick-centos.html)を参考にソースからインストールしました。
ソースは[こちら](http://www.imagemagick.org/download/)から適切なバージョンを選択しましょう。

```bash
$ cd
$ mkdir imagemagick
$ cd imagemagick/
# 注：バージョンなしのもあるが、管理のためにもバージョン付きが良いでしょう。
$ wget http://www.imagemagick.org/download/ImageMagick-6.9.2-6.tar.gz
$ tar zxvf ImageMagick-6.9.2-6.tar.gz
# 解凍してできたディレクトリへ
$ cd ImageMagick-6.9.2-6/
$ ./configure
$ make
$ make install
# 対応されているフォーマットを確認
$ convert -list format
```

# jpegoptimダウンロード
続いてjpegoptimをインストールします。
[こちら](http://qiita.com/inouet/items/aa98e8021ac65c784ebc)を参考にソースからインストールしました。

```bash
$ cd
$ mkdir jpegoptim
$ cd jpegoptim/
# 適切な最新バージョンを調べて持ってきます。
$ wget https://www.kokkonen.net/tjko/src/jpegoptim-1.4.3.tar.gz
$ tar zxvf jpegoptim-1.4.3.tar.gz
$ ./configure 
$ make
$ make install
```

# デプロイ
インストールできたし、いざデプロイ！
（デプロイにはcapistranoを使っています。capistranoについては省略します。。）

```bash
$ cap staging deploy
...
cap aborted!
SSHKit::Runner::ExecuteError: Exception while executing as deploy@A.B.C.D: bundle exit status: 5
bundle stdout: An error occurred while installing rmagick (2.15.4), and Bundler cannot
continue.
Make sure that `gem install rmagick -v '2.15.4'` succeeds before bundling.
bundle stderr: Nothing written
```

なんかでた。
コマンド打てよ的な文言が出てるので、サーバーにログインしてコマンド打ってみた。

```bash
$ gem install rmagick -v '2.15.4'
Building native extensions.  This could take a while...
ERROR:  Error installing rmagick:
	ERROR: Failed to build gem native extension.

    /usr/local/rbenv/versions/2.2.2/bin/ruby -r ./siteconf20151110-27792-1b4c8dp.rb extconf.rb
checking for gcc... yes
checking for Magick-config... yes
checking for outdated ImageMagick version (<= 6.4.9)... no
Package MagickCore was not found in the pkg-config search path.
Perhaps you should add the directory containing `MagickCore.pc'
to the PKG_CONFIG_PATH environment variable
No package 'MagickCore' found

```

なるほど、pkgが読み込めてないのかな？
[調べてみる](http://akkunchoi.github.io/imagemagick-rmagick-centos.html)と、`PKG_CONFIG_PATH`を設定すれば良さそうだ。

調べてみたのを参考にデプロイするユーザーの`.bashrc`を設定しました。

```bash:.bashrc
# 追加
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
```

再度デプロイ。

```bash
$ cap staging deploy
...
cap aborted!
SSHKit::Runner::ExecuteError: Exception while executing as deploy@A.B.C.D: rake exit status: 1
rake stdout: rake aborted!
LoadError: libMagickCore-6.Q16.so.2: cannot open shared object file: No such file or directory - /home/deploy/apps/application/shared/bundle/ruby/2.2.0/extensions/x86_64-linux/2.2.0-static/rmagick-2.15.4/RMagick2.so
```
またなんかでた。
[調べてみる](http://easyramble.com/rmagick-load-error.html)と、`LD_LIBRARY_PATH`の設定が必要そう。
まずファイル'libMagickCore-6.Q16.so.2'の場所を探します。

```bash
$ find /usr/ -name libMagickCore-6.Q16.so.2
/usr/local/lib/libMagickCore-6.Q16.so.2
```

そしてこちらもデプロイするユーザーの`.bashrc`を設定しました。

```bash:.bashrc
# 追加
export LD_LIBRARY_PATH=/usr/local/lib
```

こんどこそ！

```bash
$ cap staging deploy
...
INFO [772b6559] Finished in 0.072 seconds with exit status 0 (successful).
```

いえす！
完了です。

# その他参考
[CentOS7 いれた](http://d.hatena.ne.jp/donbulinux/20150330/1427717586) at 2015-03