Skip to content

Instantly share code, notes, and snippets.

@dwbuiten
Last active December 16, 2015 20:09
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dwbuiten/5490255 to your computer and use it in GitHub Desktop.
Save dwbuiten/5490255 to your computer and use it in GitHub Desktop.
Hacky script for compiling dynamic MediaInfo
#!/bin/sh -e
# Replace with whatever versions you need
ZEN_VERSION=0.4.29
LIB_VERSION=0.7.63
MED_VERSION=0.7.63
PREFIX=/usr/local
wget http://mediaarea.net/download/source/libzen/${ZEN_VERSION}/libzen_${ZEN_VERSION}.tar.bz2
wget http://mediaarea.net/download/source/libmediainfo/${LIB_VERSION}/libmediainfo_${LIB_VERSION}.tar.bz2
wget http://mediaarea.net/download/source/mediainfo/${MED_VERSION}/mediainfo_${MED_VERSION}.tar.bz2
tar xf libzen_${ZEN_VERSION}.tar.bz2
cd ZenLib/Project/GNU/Library
./autogen
./configure --disable-static --enable-shared --prefix=${PREFIX}
make -j4
sudo make install
cd -
sudo cp ./ZenLib/Source/ZenLib/BitStream_Fast.h ${PREFIX}/include/ZenLib/
mkdir stash
mv ZenLib stash/
tar xf libmediainfo_${LIB_VERSION}.tar.bz2
cd MediaInfoLib/Project/GNU/Library
./autogen
./configure --disable-static --enable-shared --prefix=${PREFIX} CXXFLAGS=-I${PREFIX}/include LIBS=-L${PREFIX}/lib
make -j4
sudo make install
cd -
cd MediaInfoLib
sudo install -dm 755 ${PREFIX}/include/MediaInfo
sudo install -m 644 Source/MediaInfo/MediaInfo.h ${PREFIX}/include/MediaInfo
sudo install -m 644 Source/MediaInfo/MediaInfoList.h ${PREFIX}/include/MediaInfo
sudo install -m 644 Source/MediaInfo/MediaInfo_Const.h ${PREFIX}/include/MediaInfo
sudo install -m 644 Source/MediaInfo/MediaInfo_Events.h ${PREFIX}/include/MediaInfo
sudo install -dm 755 ${PREFIX}/include/MediaInfoDLL
sudo install -m 644 Source/MediaInfoDLL/MediaInfoDLL.cs ${PREFIX}/include/MediaInfoDLL
sudo install -m 644 Source/MediaInfoDLL/MediaInfoDLL.h ${PREFIX}/include/MediaInfoDLL
sudo install -m 644 Source/MediaInfoDLL/MediaInfoDLL_Static.h ${PREFIX}/include/MediaInfoDLL
sudo install -m 644 Source/MediaInfoDLL/MediaInfoDLL.JNA.java ${PREFIX}/include/MediaInfoDLL
sudo install -m 644 Source/MediaInfoDLL/MediaInfoDLL.JNative.java ${PREFIX}/include/MediaInfoDLL
sudo install -m 644 Source/MediaInfoDLL/MediaInfoDLL.py ${PREFIX}/include/MediaInfoDLL
sudo install -m 644 Source/MediaInfoDLL/MediaInfoDLL3.py ${PREFIX}/include/MediaInfoDLL
cd -
mv MediaInfoLib stash/
tar xf mediainfo_${MED_VERSION}.tar.bz2
cd MediaInfo/Project/GNU/CLI
./autogen
./configure --disable-static --enable-shared --with-dll --prefix=${PREFIX} CXXFLAGS=-I${PREFIX}/include LIBS=-L${PREFIX}/lib
make -j4
sudo make install
cd -
mv stash/* .
rmdir stash
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment