Emacsでirony-install-serverするのに必要な環境

###Emacsで補完機能を使いたくて、色々やってたら、M-x irony-install-serverで失敗してたので、回避策をメモ

以下の先達の方の記事にも書いてある通り、llvm, clang, libclang-devのインストールが必要。
自分はlibeling-devをインストールしてなく、libclangや、clang/Index.hが見つからないと怒られてました。

[C++11時代のEmacs C++コーディング環境]
(https://qiita.com/alpha22jp/items/90f7f2ad4f8b1fa089f4)

```console
sudo apt update
sudo apt install llvm
sudo apt install clang
sudo apt install libclang-dev
sudo apt install make
```

###Macの場合さらに以下の対策を実施
私のMacでは、Emacs上でM-x irony-install-serverすると以下のエラーが発生。
どうやらlibiconv.2.dylibに`_libiconv_open`シンボルが見つからないと怒られている様子。

```console
Run Build Command(s):/opt/local/bin/gmake cmTC_ac6f9/fast                                   
/opt/local/bin/gmake -f CMakeFiles/cmTC_ac6f9.dir/build.make CMakeFiles/cmTC_ac6f9.dir/build
dyld: lazy symbol binding failed: Symbol not found: _libiconv_open
  Referenced from: /opt/local/lib/libintl.8.dylib
  Expected in: /usr/lib/libiconv.2.dylib

dyld: Symbol not found: _libiconv_open
  Referenced from: /opt/local/lib/libintl.8.dylib
  Expected in: /usr/lib/libiconv.2.dylib

gmake: *** [cmTC_ac6f9/fast] Abort trap: 6
```

```console
Run Build Command(s):/opt/local/bin/gmake cmTC_895cb/fast                                   
/opt/local/bin/gmake -f CMakeFiles/cmTC_895cb.dir/build.make CMakeFiles/cmTC_895cb.dir/build
dyld: lazy symbol binding failed: Symbol not found: _libiconv_open
  Referenced from: /opt/local/lib/libintl.8.dylib
  Expected in: /usr/lib/libiconv.2.dylib

dyld: Symbol not found: _libiconv_open                                         
  Referenced from: /opt/local/lib/libintl.8.dylib                        
  Expected in: /usr/lib/libiconv.2.dylib

gmake: *** [cmTC_895cb/fast] Abort trap: 6                                                  
```

`nm`で確認してみると`_iconv_open`しか見当たらない

```console
nm /usr/lib/libiconv.2.dylib
```

```console
.
.
00000000000032fc T _iconv_close
0000000000001fdb T _iconv_open
0000000000003309 T _iconvctl
.
.
```

なので、[gnu org](https://www.gnu.org/software/libiconv/)からライブラリのソースをダウンロードし、`make`
インストール先の`--prefix`は必要に応じて変更
私は、一旦テンポラリフォルダにインストールして、あとで、`/usr/local/lib`にコピーした
以下は、ソースを`$HOME/libiconv-1.15/`展開して実施した場合

```console
$ cd $HOME/libiconv-1.15/
$ ./configure --prefix=$HOME/libiconv-1.15/build
$ make
$ make install
$ cd $HOME/libconv-1.15/build
$ cp libiconv.dylib libiconv.2.dylib /usr/local/lib
```

再度`nm`で確認
きちんと`_libconv_open`が存在していることを確認

```console
nm /usr/local/lib/libiconv.2.dylib
```

```console
.
.
0000000000002310 T _libiconv_close
0000000000000da0 T _libiconv_open
0000000000002320 T _libiconv_open_into
.
.
```

無事`irony-install-server`コマンドが成功した

```console
.
.
.
-- Build files have been written to: /var/folders/nq/qgjv9z
Scanning dependencies of target irony-server
[ 12%] Building CXX object src/CMakeFiles/irony-server.dir/
[ 25%] Building CXX object src/CMakeFiles/irony-server.dir/
[ 37%] Building CXX object src/CMakeFiles/irony-server.dir/
[ 50%] Building CXX object src/CMakeFiles/irony-server.dir/
[ 62%] Building CXX object src/CMakeFiles/irony-server.dir/
[ 75%] Building CXX object src/CMakeFiles/irony-server.dir/
[ 87%] Building CXX object src/CMakeFiles/irony-server.dir/
[100%] Linking CXX executable ../bin/irony-server
[100%] Built target irony-server
Install the project...
-- Install configuration: "Release"
-- Installing: /Users/MyHome/.emacs.d/irony/bin/irony-server

Compilation finished at Thu Apr 11 00:39:07

```