I decided to finally give a try to a couple neat projects, first one is a modification of VXCage by mboman (originally by @botherder), second one was viper itself.
It got a tidbit complicated installing pydeep, a dependency for both projects. Googling around did not help much.
I like to keep my things tidy, for this I use a mix of brew, virtualenv and other tricks in order to keep python modules and other libs/software as isolated as possible.
First things first, If you just try to brew install ssdeep from brew, it will fetch an old version, you can fix the formula yourself:
123456789101112131415161718192021
$ cat <<'EOF' >/usr/local/Library/Formula/ssdeep.rb
require "formula"
class Ssdeep < Formula
homepage "http://ssdeep.sourceforge.net/"
url "https://downloads.sourceforge.net/project/ssdeep/ssdeep-2.11.1/ssdeep-2.11.1.tar.gz"
sha256 "a632ac30fca29ad5627e1bf5fae05d9a8873e6606314922479259531e0c19608"
def install
system "./configure", "--disable-dependency-tracking", "--prefix=#{prefix}"
system "make install"
end
end
EOF
$ brew install ssdeep
==> Downloading https://downloads.sourceforge.net/project/ssdeep/ssdeep-2.11.1/ssdeep-2.11.1.tar.gz
Already downloaded: /Library/Caches/Homebrew/ssdeep-2.11.1.tar.gz
==> ./configure --prefix=/usr/local/Cellar/ssdeep/2.11.1
==> make install
/usr/local/Cellar/ssdeep/2.11.1: 12 files, 168K, built in 11 seconds
Then if you just:
12
$ workon viper # note, for this to work, you need a virtualenv named viper ;)
(viper)$ pip install pydeep
you will be greeted with something along these lines:
Well, that isn’t quite working. Fear not, the compiler just doesn’t know where to find the includes and libs for building the pydeep bindings.
This should fix it: