chainer 1.20のイントールしてもimport cupyできない時のお助け

#Chainerは入るけど，import cupyするとエラーが出る
Linux環境下に，CUDA-7.5を入れたのち，
gcc 8.4.5，pipを使って，
```
$ pip install chainer
```
すると，

```
$ Successfully installed chainer-1.20.0.1
```
と出るのに，いざcupyを読み込もうとimport cupyすると正常に読み込めない．

    Traceback (most recent call last):
      File "./train_mnist.py", line 107, in <module>
        main()
      File "./train_mnist.py", line 56, in main
        chainer.cuda.get_device(args.gpu).use()  # Make a specified GPU current
      File "C:\Program Files\Anaconda3\lib\site-packages\chainer\cuda.py", line 167, in get_device
        check_cuda_available()
      File "C:\Program Files\Anaconda3\lib\site-packages\chainer\cuda.py", line 85, in check_cuda_available
    raise RuntimeError(msg)
    RuntimeError: CUDA environment is not correctly set up
    (see https://github.com/pfnet/chainer#installation).CuPy is not correctly installed. Please check your environment, uninstall Chainer and reinstall it with `pip install chainer --no-cache-dir -vvvv`.


う〜ん，仕方がないので，

```
$ pip uninstall chainer
$ pip install chainer --no-cache-dir -vvvv
```

とすると，CUDAはスキップしてますの文字が．

    /usr/bin/ld: cannot find -lcuda
    collect2: error: ld returned 1 exit status
    Cannot build a stub file.
    Original error: command 'g++' failed with exit status 1
    **************************************************
    *** WARNING: Cannot link libraries: ['cublas', 'cuda', 'cudart', 'curand', 'nvToolsExt']
    *** WARNING: Skip installing cuda support
    *** WARNING: Check your LDFLAGS environment variable
    **************************************************
    Include directories: ['/usr/local/cuda/include']
    Library directories: ['/usr/local/cuda/lib64', '/usr/local/cuda/lib']


ところが，LDFLAGSを見ても変ではないので，なぜだろうと格闘するも・・・入らない．
よ〜くエラーを見ると，その上のあたりでlibcuda.soがないと言われている．

    /usr/bin/ld: cannot find -lcuda

まさかと思って，/usr/local/cuda/lib64と/usr/local/cuda/libを見に行くと・・・ない！
探したところ，まさかの/usr/local/cuda/lib64/stubsにいらっしゃる．
そこで，ビルド時にgccが見に行くLIBRARY_PATHにこのフォルダを通してやる．

    $ export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/cuda/lib64
    $ export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/cuda/lib
    $ export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/cuda/lib64/stubs

それで再び

    $ pip install chainer --no-cache-dir -vvvv

すると，WARNINGが出なくなったぞ！！！！

#しかしそのままだと足りない
ところが，万を辞してcupyを読み込むと，

```
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/slab/hirohara/.pyenv/versions/anaconda2-4.1.1/lib/python2.7/site-packages/cupy/__init__.py", line 18, in <module>
    raise six.reraise(RuntimeError, RuntimeError(msg), exc_info[2])
  File "/home/slab/hirohara/.pyenv/versions/anaconda2-4.1.1/lib/python2.7/site-packages/cupy/__init__.py", line 7, in <module>
    from cupy import core  # NOQA
  File "/home/slab/hirohara/.pyenv/versions/anaconda2-4.1.1/lib/python2.7/site-packages/cupy/core/__init__.py", line 1, in <module>
    from cupy.core import core  # NOQA
RuntimeError: CuPy is not correctly installed. Please check your environment, uninstall Chainer and reinstall it with `pip install chainer --no-cache-dir -vvvv`.

original error: libcuda.so.1: cannot open shared object file: No such file or directory
```
また怒られる．libcuda.so.1がないらしい．検索しても確かにない．そこで，libcuda.soからシンボリックリンクを貼ってやることにする．

    $ cd /usr/local/cuda/lib64/stubs/
    $ ln -s libcuda.so libcuda.so.1

で，先ほどと同じように，これのディレクトリを実行時にライブラリを読み込むLD_LIBRARY_PATHに通してやる．

    $ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64
    $ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib
    $ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64/stubs

これで，import cupyすると・・・できた！！！できた！！！！