]> cvs.zerfleddert.de Git - proxmark3-svn/blob - COMPILING.txt
CHG: 'analyse hid' added @holiman 's permute functions to the output to verify
[proxmark3-svn] / COMPILING.txt
1 The project compiles on Linux, Mac OS X and Windows (MinGW/MSYS).
2
3 it requires:
4 - gcc >= 4.8
5 - libpthread
6 - libreadline
7 - libusb
8 - perl
9 - an ARM cross-compiler to compile the firmware
10 - libncurses5-dev
11
12 and optionally QT for the GUI
13
14
15 To compile, just run "make".
16
17 ===========
18 = Windows =
19 ===========
20 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).
21
22 1 - Install QT SDK for Windows [1]
23
24 In the following instructions, we'll assume you installed it to C:\QT
25
26 2 - MSYS-1.0.11 [2]
27
28 Just follow the installation procedure.
29 When asked if you have MinGW installed and for its path, provide:
30 C:/QT/mingw
31
32 3 - readline-5.0-1-bin [5]
33
34 From this archive, copy:
35 bin/* to C:\QT\mingw\bin
36 include/* to C:\QT\mingw\include
37 lib/*.a to C:\QT\mingw\lib
38
39 4 - libusb-win32-device-bin-0.1.12.2 [6]
40
41 Be careful here, it is *NOT* working with the filter version!
42 Likewise copy:
43 include/usb.h to C:\QT\mingw\include
44 lib/gcc/libusb.a to C:\QT\mingw\lib
45
46
47 5 - Install DevkitPro [5]
48
49 You'll need it to compile the firmware (ARM) side.
50 You only need devkitARM, nothing more (no extra lib or anything else)
51 Assuming you installed it to C:\devkitpro, make sure you set
52 the DEVKITARM environment variable to /c/devkitPro/devkitARM :
53 export DEVKITARM=/c/devkitPro/devkitARM
54 Also, add its bin to your PATH:
55 export PATH=$PATH:$DEVKITARM/bin
56
57 6 - Install Strawberry Perl [6]
58
59 7 - Setup a few variables
60
61 In your shell from MSYS, make sure you set QTDIR to your QT installation:
62 export QTDIR=/c/QT/qt
63 And add its bin to your path as well:
64 export PATH=$PATH:$QTDIR/bin
65
66 Download links:
67
68 [1] http://qt.nokia.com/downloads/sdk-windows-cpp
69 [2] http://downloads.sourceforge.net/mingw/MSYS-1.0.11.exe
70 [3] http://sourceforge.net/projects/gnuwin32/files/readline/5.0-1/readline-5.0-1-bin.zip/download
71 [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
72 [5] http://sourceforge.net/projects/devkitpro/files/Automated%20Installer/devkitProUpdater-1.5.0.exe/download
73 [6] http://strawberry-perl.googlecode.com/files/strawberry-perl-5.10.1.1.msi
74
75 Rather than download and install every one of these packages, a new ProxSpace
76 environment archive file will be made available for download on the project
77 page at http://code.google.com/p/proxmark3/downloads/list
78
79 Download the ProxSpace environment archive and extract it to C:\
80
81 ============
82 = Mac OS X =
83 ============
84
85 Tested on OSX 10.10 Yosemite
86
87 1 - Install Xcode and Xcode Command Line Tools
88
89 2 - Install Homebrew and dependencies
90 brew install readline
91 brew instal libusb
92
93 3 - Download DevKitARM for OSX
94 http://sourceforge.net/projects/devkitpro/files/devkitARM/devkitARM_r44/
95 Unpack devkitARM_r44-osx.tar.bz2 to proxmark3 directory.
96
97 4 - Edit proxmark3/client/Makefile adding path to readline
98
99 LDLIBS = -L/usr/local/Cellar/readline/6.3.8/lib/ -L/opt/local/lib -L/usr/local/lib ../liblua/liblua.a -lreadline -lpthread -lm
100 CFLAGS = -std=c99 -I/usr/local/Cellar/readline/6.3.8/include/ -I. -I../include -I../common -I/opt/local/include -I../liblua -Wall $(COMMON_FLAGS) -g -O4
101
102 Replace path /usr/local/Cellar/readline/6.3.8 with your actuall readline path. See homebrew manuals.
103
104 5 - Set Environment
105
106 export DEVKITPRO=$HOME/proxmark3/
107 export DEVKITARM=$DEVKITPRO/devkitARM
108 export PATH=${PATH}:${DEVKITARM}/bin
109
110
111 ============
112 = Linux =
113 ============
114
115 1 - Download
116
117 A precompiled DevKitARM cross compiler tool chain package can be found at
118 http://sourceforge.net/projects/devkitpro/files/devkitARM
119 Select the one you need (32bit or 64bit) and unpack to a convinient place, eg
120 $HOME/proxmark3/. It will create a devkitARM/ subdirectory.
121
122 You will also need a general compiling environment on your computer for
123 the client and the libusb headers. In most distributions you will get all you
124 need with the lsb-package (Linux Standard Base). In debian/ubuntu you simply
125 call `aptitude install lsb libusb-dev libreadline-dev libreadline6`.
126
127 For the graphical plot view, you might need the qtlibs (debian/ubuntu:
128 libqt4-dev), too.
129
130 2 - Set Environment
131
132 export DEVKITPRO=$HOME/proxmark3/
133 export DEVKITARM=$DEVKITPRO/devkitARM
134 export PATH=${PATH}:${DEVKITARM}/bin
135
Impressum, Datenschutz