pwndbg/setup.sh

34 lines
946 B
Bash
Raw Normal View History

2016-05-12 10:36:26 +08:00
#!/bin/bash -ex
if uname | grep -i Linux &>/dev/null; then
2016-05-25 13:32:59 +08:00
sudo apt-get update
sudo apt-get -y install python-dev python3-dev python-pip python3-pip libglib2.0-dev
fi
2016-05-12 10:36:26 +08:00
# Update all submodules
git submodule update --init --recursive
# Find the path to the Python interpreter used by GDB.
2016-05-12 10:36:26 +08:00
PYTHON=$(gdb -batch -q --nx -ex 'pi import sys; print(sys.executable)')
# Install Python dependencies
sudo $PYTHON -m pip install -Ur requirements.txt
# Find the path to the Python2 interpreter needed by the Unicorn install process.
export UNICORN_QEMU_FLAGS="--python=$(which python2)"
# Install both Unicorn and Capstone
2016-05-12 10:36:26 +08:00
for directory in capstone unicorn; do
pushd $directory
git clean -xdf
2016-05-12 10:36:26 +08:00
sudo ./make.sh install
cd bindings/python
sudo ${PYTHON} setup.py install
popd
done
# Load Pwndbg into GDB on every launch.
2016-05-12 10:36:26 +08:00
if ! grep pwndbg ~/.gdbinit &>/dev/null; then
echo "source $PWD/pwndbg/gdbinit.py" >> ~/.gdbinit
fi