| 1 | The project compiles on Linux, Mac OS X and Windows (MinGW/MSYS). |
| 2 | |
| 3 | it requires: |
| 4 | - gcc >= 4.4 |
| 5 | - libpthread |
| 6 | - libreadline |
| 7 | - libusb |
| 8 | - perl |
| 9 | - an ARM cross-compiler to compile the firmware |
| 10 | |
| 11 | and optionally QT for the GUI |
| 12 | |
| 13 | |
| 14 | To compile, just run "make". |
| 15 | |
| 16 | =========== |
| 17 | = Windows = |
| 18 | =========== |
| 19 | The following is a complete list of packages required to setup the compile environment yourself. Alternatively you can download an archive of the full environment (see below). |
| 20 | |
| 21 | 1 - Install QT SDK for Windows [1] |
| 22 | |
| 23 | In the following instructions, we'll assume you installed it to C:\QT |
| 24 | |
| 25 | 2 - MSYS-1.0.11 [2] |
| 26 | |
| 27 | Just follow the installation procedure. |
| 28 | When asked if you have MinGW installed and for its path, provide: |
| 29 | C:/QT/mingw |
| 30 | |
| 31 | 3 - readline-5.0-1-bin [5] |
| 32 | |
| 33 | From this archive, copy: |
| 34 | bin/* to C:\QT\mingw\bin |
| 35 | include/* to C:\QT\mingw\include |
| 36 | lib/*.a to C:\QT\mingw\lib |
| 37 | |
| 38 | 4 - libusb-win32-device-bin-0.1.12.2 [6] |
| 39 | |
| 40 | Be careful here, it is *NOT* working with the filter version! |
| 41 | Likewise copy: |
| 42 | include/usb.h to C:\QT\mingw\include |
| 43 | lib/gcc/libusb.a to C:\QT\mingw\lib |
| 44 | |
| 45 | |
| 46 | 5 - Install DevkitPro [5] |
| 47 | |
| 48 | You'll need it to compile the firmware (ARM) side. |
| 49 | You only need devkitARM, nothing more (no extra lib or anything else) |
| 50 | Assuming you installed it to C:\devkitpro, make sure you set |
| 51 | the DEVKITARM environment variable to /c/devkitPro/devkitARM : |
| 52 | export DEVKITARM=/c/devkitPro/devkitARM |
| 53 | Also, add its bin to your PATH: |
| 54 | export PATH=$PATH:$DEVKITARM/bin |
| 55 | |
| 56 | 6 - Install Strawberry Perl [6] |
| 57 | |
| 58 | 7 - Setup a few variables |
| 59 | |
| 60 | In your shell from MSYS, make sure you set QTDIR to your QT installation: |
| 61 | export QTDIR=/c/QT/qt |
| 62 | And add its bin to your path as well: |
| 63 | export PATH=$PATH:$QTDIR/bin |
| 64 | |
| 65 | Download links: |
| 66 | |
| 67 | [1] http://qt.nokia.com/downloads/sdk-windows-cpp |
| 68 | [2] http://downloads.sourceforge.net/mingw/MSYS-1.0.11.exe |
| 69 | [3] http://sourceforge.net/projects/gnuwin32/files/readline/5.0-1/readline-5.0-1-bin.zip/download |
| 70 | [4] http://sourceforge.net/projects/libusb-win32/files/libusb-win32-releases/0.1.12.2/libusb-win32-device-bin-0.1.12.2.tar.gz/download |
| 71 | [5] http://sourceforge.net/projects/devkitpro/files/Automated%20Installer/devkitProUpdater-1.5.0.exe/download |
| 72 | [6] http://strawberry-perl.googlecode.com/files/strawberry-perl-5.10.1.1.msi |
| 73 | |
| 74 | Rather than download and install every one of these packages, a new ProxSpace |
| 75 | environment archive file will be made available for download on the project |
| 76 | page at http://code.google.com/p/proxmark3/downloads/list |
| 77 | |
| 78 | Download the ProxSpace environment archive and extract it to C:\ |
| 79 | |
| 80 | ============ |
| 81 | = Mac OS X = |
| 82 | ============ |
| 83 | |
| 84 | macport stuff should do ;) |
| 85 | |
| 86 | ============ |
| 87 | = Linux = |
| 88 | ============ |
| 89 | |
| 90 | 1 - Download |
| 91 | |
| 92 | A precompiled DevKitARM cross compiler tool chain package can be found at |
| 93 | http://sourceforge.net/projects/devkitpro/files/devkitARM |
| 94 | Select the one you need (32bit or 64bit) and unpack to a convinient place, eg |
| 95 | $HOME/proxmark3/. It will create a devkitARM/ subdirectory. |
| 96 | |
| 97 | Of course, you will need a general compiling environment on your computer for |
| 98 | the client and the libusb headers. In most distributions you will get all you |
| 99 | need with the lsb-package (Linux Standard Base). In debian/ubuntu you simply |
| 100 | call `aptitude install lsb libusb-dev`. |
| 101 | |
| 102 | For the graphical plot view, you might need the qtlibs (debian/ubuntu: |
| 103 | libqt4-dev), too. |
| 104 | |
| 105 | 2 - Set Environment |
| 106 | |
| 107 | export DEVKITPRO=$HOME/proxmark3/ |
| 108 | export DEVKITARM=$DEVKITPRO/devkitARM |
| 109 | export PATH=${PATH}:${DEVKITARM}/bin |
| 110 | |