]>
Commit | Line | Data |
---|---|---|
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 | Installing from HomeBrew tap | |
85 | --------------------------- | |
86 | This method is recommended and tested on macOS Sierra 10.12.3 | |
87 | ||
88 | 1. Install homebrew if you haven't yet already done so: http://brew.sh/ | |
89 | ||
90 | 2. Tap proxmark repo: | |
91 | brew tap proxmark/proxmark3 | |
92 | ||
93 | 3. Install Proxmark3: | |
94 | ||
95 | Stable release | |
96 | brew install proxmark3 | |
97 | ||
98 | Latest non-stable from GitHub (use this if previous command fails) | |
99 | brew install --HEAD proxmark3 | |
100 | ||
101 | For more information go to https://github.com/Proxmark/homebrew-proxmark3 | |
102 | ||
103 | ||
104 | Compilling from source manually (Legacy) | |
105 | --------------------------- | |
106 | ||
107 | Tested on OSX 10.10 Yosemite | |
108 | ||
109 | 1 - Install Xcode and Xcode Command Line Tools | |
110 | ||
111 | 2 - Install Homebrew and dependencies | |
112 | brew install readline libusb p7zip libusb-compat wget qt5 pkgconfig | |
113 | ||
114 | 3 - Install DevKitARM for OSX | |
115 | Option 1: | |
116 | http://sourceforge.net/projects/devkitpro/files/devkitARM/devkitARM_r44/ | |
117 | Unpack devkitARM_r44-osx.tar.bz2 to proxmark3 directory. | |
118 | Option 2: | |
119 | brew tap nitsky/stm32 | |
120 | brew install arm-none-eabi-gcc | |
121 | ||
122 | 4 - Edit proxmark3/client/Makefile adding path to readline and qt5 | |
123 | ||
124 | LDLIBS = -L/usr/local/opt/readline/lib -L/usr/local/opt/qt5/lib -L/opt/local/lib -L/usr/local/lib ../liblua/liblua.a -lreadline -lpthread -lm | |
125 | CFLAGS = -std=c99 -I/usr/local/opt/qt5/include -I/usr/local/opt/readline/include -I. -I../include -I../common -I../zlib -I/opt/local/include -I../liblua -Wall $(COMMON_FLAGS) -g -O4 | |
126 | ||
127 | If your old brew intallation use /usr/local/Cellar/ path replace /usr/local/opt/readline/lib with your actuall readline and qt5 path. See homebrew manuals. | |
128 | ||
129 | 5 - Set Environment | |
130 | ||
131 | export DEVKITPRO=$HOME/proxmark3/ | |
132 | export DEVKITARM=$DEVKITPRO/devkitARM | |
133 | export PATH=${PATH}:${DEVKITARM}/bin | |
134 | ||
135 | ||
136 | ============ | |
137 | = Linux = | |
138 | ============ | |
139 | ||
140 | 1 - Download | |
141 | ||
142 | A precompiled DevKitARM cross compiler tool chain package can be found at | |
143 | http://sourceforge.net/projects/devkitpro/files/devkitARM | |
144 | Select the one you need (32bit or 64bit) and unpack to a convinient place, eg | |
145 | $HOME/proxmark3/. It will create a devkitARM/ subdirectory. | |
146 | ||
147 | You will also need a general compiling environment on your computer for | |
148 | the client and the libusb headers. In most distributions you will get all you | |
149 | need with the lsb-package (Linux Standard Base). In debian/ubuntu you simply | |
150 | call `aptitude install lsb libusb-dev libreadline-dev libreadline6`. | |
151 | ||
152 | For the graphical plot view, you might need the qtlibs (debian/ubuntu: | |
153 | libqt4-dev), too. | |
154 | ||
155 | 2 - Set Environment | |
156 | ||
157 | export DEVKITPRO=$HOME/proxmark3/ | |
158 | export DEVKITARM=$DEVKITPRO/devkitARM | |
159 | export PATH=${PATH}:${DEVKITARM}/bin | |
160 |