|
#!/bin/bash |
|
|
|
|
|
OS=$(uname -s) |
|
|
|
|
|
|
|
install_linux() { |
|
export CC=/usr/bin/clang |
|
export CXX=/usr/bin/clang++ |
|
CFLAGS="-stdlib=libc++" CXXFLAGS="-stdlib=libc++" |
|
|
|
apt update |
|
apt install wget -y |
|
apt install clang -y |
|
apt install libc++-dev -y |
|
apt install cmake -y |
|
apt-get update && apt-get install -y \ |
|
build-essential \ |
|
cmake \ |
|
libopenblas-dev \ |
|
liblapack-dev \ |
|
libx11-dev \ |
|
libgtk-3-dev \ |
|
libboost-python-dev \ |
|
libjpeg \ |
|
libpng \ |
|
libjpeg8-dev \ |
|
libpng-dev \ |
|
libtiff5-dev \ |
|
libtiff-dev \ |
|
libavcodec-dev \ |
|
libavformat-dev \ |
|
libswscale-dev \ |
|
libdc1394-22-dev \ |
|
libxine2-dev \ |
|
libavfilter-dev \ |
|
libavutil-dev \ |
|
libnvcuvid-dev \ |
|
software-properties-common \ |
|
build-essential \ |
|
checkinstall \ |
|
cmake \ |
|
make \ |
|
pkg-config \ |
|
yasm \ |
|
git \ |
|
vim \ |
|
curl \ |
|
wget \ |
|
sudo \ |
|
apt-transport-https \ |
|
libcanberra-gtk-module \ |
|
libcanberra-gtk3-module \ |
|
dbus-x11 \ |
|
iputils-ping \ |
|
python3-dev \ |
|
python3-pip \ |
|
python3-setuptools \ |
|
&& rm -rf /var/lib/apt/lists/* |
|
|
|
apt-get update && apt-get install -y \ |
|
libgl1-mesa-glx \ |
|
libglib2.0-0 |
|
apt-get -y update && apt-get install -y ffmpeg |
|
export NVIDIA_DRIVER_CAPABILITIES=all |
|
ln -s /usr/lib/x86_64-linux-gnu/libnvcuvid.so.1 /usr/local/cuda/lib64/libnvcuvid.so |
|
git clone --recursive https://github.com/dmlc/decord |
|
cd decord && mkdir build && cd build && cmake .. -DUSE_CUDA=ON -DCMAKE_BUILD_TYPE=Release && make -j2 && cd ../python && python3 setup.py install |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
install_macos() { |
|
echo "Running on macOS" |
|
|
|
|
|
if ! command -v brew &> /dev/null; then |
|
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" |
|
fi |
|
|
|
xcode-select --install |
|
softwareupdate --all --install --force |
|
|
|
export CC=/usr/bin/clang >> ~/.bash_profile |
|
export CXX=/usr/bin/clang >> ~/.bash_profile |
|
|
|
|
|
brew update |
|
brew install wget |
|
brew install clang |
|
brew install cmake |
|
brew install ffmpeg |
|
brew install libomp |
|
|
|
|
|
brew install openblas lapack gtk+3 boost-python3 jpeg libpng |
|
} |
|
|
|
|
|
install_windows() { |
|
echo "Running on Windows" |
|
|
|
|
|
choco install wget |
|
choco install llvm |
|
choco install cmake |
|
choco install ffmpeg |
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
case $OS in |
|
Linux) |
|
install_linux |
|
;; |
|
Darwin) |
|
install_macos |
|
;; |
|
MINGW*|MSYS*|CYGWIN*) |
|
install_windows |
|
;; |
|
*) |
|
echo "Unsupported OS: $OS" |
|
exit 1 |
|
;; |
|
esac |
|
|
|
|
|
download_models |
|
|
|
echo "Installation complete." |
|
|