Open idekazuki opened 4 years ago
Slowfastの必要環境を確認するとgccのversionが4.9以上でなければならないが、研究室のgccは4.8だったのでloacalで4.9をビルドしてみた。 以下の記事に従って実行した。 https://qiita.com/ykatsu111/items/bb5adc363e4f1a2b475c LD_LIBRALY_PATHに追加してdefaultで使用できるように設定したが、それでも動かなかった。 pip install 時に参照するパスが通常のものと異なる可能性がある?
ffmpegのversionを指定するためのパスを発見した https://github.com/mikeboers/PyAV/blob/develop/setup.py#L132 これにFFmpegのパスを設定したところpyavはinstallできたものの、新しいエラーが発生した。
Installing pyav script to /usr/local/anaconda3/bin error: [Errno 13] Permission denied: '/usr/local/anaconda3/bin/pyav'
早速実行してみた。
setenv PYTHONPATH /home/yanai-lab/ide-k/ide-k/out_git/SlowFast
python tools/run_net.py --cfg configs/Kinetics/C2D_8x8_R50.yaml NUM_GPUS 1 TRAIN.BATCH_SIZE 8 SOLVER.BASE_LR 0.0125 DATA.PATH_TO_DATA_DIR /export/data/dataset/Kinetics/
案の定エラーが出た。
Traceback (most recent call last):
File "tools/run_net.py", line 14, in <module>
from test_net import test
File "/host/space0/ide-k/out_git/SlowFast/tools/test_net.py", line 14, in <module>
from slowfast.datasets import loader
File "/home/yanai-lab/ide-k/ide-k/out_git/SlowFast/slowfast/datasets/loader.py", line 10, in <module>
from slowfast.datasets.kinetics import Kinetics
File "/home/yanai-lab/ide-k/ide-k/out_git/SlowFast/slowfast/datasets/kinetics.py", line 12, in <module>
import slowfast.datasets.video_container as container
File "/home/yanai-lab/ide-k/ide-k/out_git/SlowFast/slowfast/datasets/video_container.py", line 4, in <module>
import av
File "/home/yanai-lab/ide-k/.local/lib/python3.6/site-packages/av-6.2.0-py3.6-linux-x86_64.egg/av/__init__.py", line 15, in <module>
from av.audio.fifo import AudioFifo
File "/home/yanai-lab/ide-k/.local/lib/python3.6/site-packages/av-6.2.0-py3.6-linux-x86_64.egg/av/audio/__init__.py", line 1, in <module>
from .frame import AudioFrame
File "av/audio/frame.pyx", line 1, in init av.audio.frame
File "av/codec/codec.pxd", line 4, in init av.frame
File "/home/yanai-lab/ide-k/.local/lib/python3.6/site-packages/av-6.2.0-py3.6-linux-x86_64.egg/av/codec/__init__.py", line 1, in <module>
from .codec import Codec, codecs_available, codec_descriptor
ImportError: /home/yanai-lab/ide-k/.local/lib/python3.6/site-packages/av-6.2.0-py3.6-linux-x86_64.egg/av/codec/codec.cpython-36m-x86_64-linux-gnu.so: undefined symbol: av_codec_iterate
python setup.py install --user
を実行したら
Using /usr/local/anaconda3/lib/python3.6/site-packages
Finished processing dependencies for slowfast==1.0
と表示された!!!
https://github.com/facebookresearch/SlowFast/blob/master/INSTALL.md 上記に従って環境構築を行う。
git clone https://github.com/facebookresearch/slowfast
export PYTHONPATH=/path/to/PySlowFast/lib:$PYTHONPATH とあるが、研究室環境では
setenv PYTHONPATH /home/yanai-lab/ide-k/ide-k/out_git/SlowFast:/host/home/yanai-lab/Sotsuken18/ide-k/.local/lib/python3.6/site-packages
このようにcshrcに書き込んだ。slowfastのパスと、pip install --userの時のdownload場所をPYTHONPATHとして定義した。
python setup.py build developを実行するが、保存場所を指定したいのでhttp://flame-blaze.net/question/setup-py-%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E5%85%88%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%AE%E3%83%95%E3%82%A9%E3%83%AB%E3%83%80%E3%81%AB%E5%A4%89%E6%9B%B4%E3%81%99%E3%82%8B に従って以下のように実行した。
python setup.py install --install-purelib /host/home/yanai-lab/Sotsuken18/ide-k/.local/lib/python3.6/site-packages
すると実行中に次のようなエラーが出た。
検索した結果似た事例が次のサイトに載っていた。https://github.com/aiortc/aiortc/issues/122
setenv PKG_CONFIG_PATH /usr/local/lib/pkgconfig
を実行したが、同じエラーが出た。ffmpegのversionが違うと言われているが。ffmpeg -version を実行すると
と表示され、3.2よりも高いversionであることがわかる。 ちなみにこのffmpegは研究室のフォルダではなく、localのフォルダにversion3.3.4のファイルをdownloadしてそれにパスを通して使用している。
解決方法がわからないのでとりあえず現時点でやったことをまとめた。