[heroku] libSM.so.6のインポートエラーの解決法
heroku に OpenCV を利用した Django アプリをデプロイしたら
ImportError: libSM.so.6: cannot open shared object file: No such file or directory
というエラーを吐かれた。
どうにも中で使っているOpenCV(opencv-python)の都合らしい
共有ライブラリlibSM.so.6
がないらしいので入れてあげることにする。
解決法
1.heroku-buildpack-aptを追加する
$ heroku buildpacks:add --index 1 https://github.com/heroku/heroku-buildpack-apt
2.Aptfileをつくる
libsm6
libxrender1
libfontconfig1
libice6
requirements.txt
と同じところにおいておけば大丈夫。
3.デプロイ
$ git add .
$ git commit -m "add Aptfile"
$ git push heroku master
これで、解決。