ProDBG is a new debugger under development that will support a variety of targets and operating systems. Currently it's in very early development and primary focusing on Mac as primary target. Right now lots of the code are being restructured and rewritten in Rust. There is a blog post about the move to Rust over here
I did a presentation on 2014-11 about the project for the awesome rendering team at Frostbite/EA and it can be viewed here (notice that some of the information is a bit out-dated by now)
As the rewrite of ProDBG is currently under way no debugging is working currently and just some basic UI is up and running.
The ProDBG repository contains submodules. Clone it with git clone --recursive
. If you forgot to clone it recursively the first time, from within the cloned repository run git submodule update --init --recursive
.
Latest stable version of Rust (1.8+) needs to be present on the system. We recommend using rustup to install and manage your Rust toolchain(s). There are also other ways to install rustup. If you already have rustup installed but aren't on the latest stable Rust, you can simply run rustup update
.
Building the code on Mac requires that Clang is installed on your system. The easiest way to do this is to get Xcode and install the commandline tools.
Run: rustup install stable-x86_64-apple-darwin
or rustup override add stable-x86_64-apple-darwin
Run: scripts/mac_build_debug.sh
The main execeutable is located at: t2-output/macosx-clang-debug-default/ProDBG.app/Content/MacOS/prodbg
On Windows Visual Studio 2013 or later is required (2012 or earlier will not work as parts of the code uses C99)
rustup install stable-x86_64-pc-windows-msvc
or rustup override add stable-x86_64-pc-windows-msvc
Run: scripts\vcvarsx86_amd64.bat
and then scripts\win64_build_debug.cmd
Run: t2-output\win64-msvc-debug-default\prodbg.exe
Building the code on Linux will require some prerequisites to be installed. Which prerequisites depends on the distribution being used.
For Ubuntu you can use the following:
sudo apt-get update
sudo apt-get install -y libx11-dev libgl1-mesa-dev libgtk-3-dev pkg-config
ProDBG uses Tundra to build the project the project. Binaries are supplied on Mac and Windows but needs to be built on Linux:
git clone https://github.com/emoon/tundra.git
cd tundra
CXX=g++ make
sudo make install
Run: rustup install stable-x86_64-unknown-linux-gnu
or rustup override add stable-x86_64-unknown-linux-gnu
Run: tundra2 linux-gcc-debug
The main execeutable is located at: t2-output/linux-gcc-debug-default/prodbg