mirror of
https://github.com/pascallanger/DIY-Multiprotocol-TX-Module.git
synced 2025-12-15 04:03:15 +00:00
148 lines
3.8 KiB
HTML
148 lines
3.8 KiB
HTML
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
|
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
|
|
|
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en-US">
|
|
|
|
<head>
|
|
<title>Building dfu-util from source</title>
|
|
<meta http-equiv="content-type" content="application/xhtml+xml; charset=iso-8859-1" />
|
|
<meta name="author" content="Tormod Volden" />
|
|
<meta name="keywords" content="dfu-util, build, compile" />
|
|
<meta name="description" content="How to build dfu-util from source" />
|
|
<link rel="icon" type="image/png" href="favicon.ico" />
|
|
<link rel="stylesheet" type="text/css" href="simple.css" media="screen, print" />
|
|
</head>
|
|
|
|
<body>
|
|
<div id="middlebox">
|
|
<h1>How to build dfu-util from source</h1>
|
|
|
|
<h2>Prerequisites for building from git</h2>
|
|
<h3>Mac OS X</h3>
|
|
<p>
|
|
First install MacPorts (and if you are on 10.6 or older, the Java Developer Package) and then run:
|
|
</p>
|
|
<pre>
|
|
sudo port install libusb-devel git-core
|
|
</pre>
|
|
|
|
<h3>FreeBSD</h3>
|
|
<pre>
|
|
sudo pkg_add -r git pkgconf
|
|
</pre>
|
|
|
|
<h3>Ubuntu and Debian and derivatives</h3>
|
|
<pre>
|
|
sudo apt-get build-dep dfu-util
|
|
sudo apt-get install libusb-1.0-0-dev
|
|
</pre>
|
|
|
|
<h2>Get the source code and build it</h2>
|
|
<p>
|
|
The first time you will have to clone the git repository:
|
|
</p>
|
|
<pre>
|
|
git clone git://gitorious.org/dfu-util/dfu-util.git
|
|
cd dfu-util
|
|
</pre>
|
|
<p>
|
|
If you later want to update to latest git version, just run this:
|
|
</p>
|
|
<pre>
|
|
make maintainer-clean
|
|
git pull
|
|
</pre>
|
|
<p>
|
|
To build the source:
|
|
</p>
|
|
<pre>
|
|
./autogen.sh
|
|
./configure # on most systems
|
|
make
|
|
</pre>
|
|
|
|
<p>
|
|
If you are building on Mac OS X, replace the ./configure command with:
|
|
</p>
|
|
<pre>
|
|
./configure --libdir=/opt/local/lib --includedir=/opt/local/include # on MacOSX only
|
|
</pre>
|
|
|
|
<p>
|
|
Your dfu-util binary will be inside the src folder. Use it from there, or install it to /usr/local/bin by running "sudo make install".
|
|
</p>
|
|
|
|
<h2>Cross-building for Windows</h2>
|
|
|
|
<p>
|
|
Windows binaries can be built in a <a href="http://mingw.org/">MinGW</a>
|
|
environment, on a Windows computer or cross-hosted in another OS.
|
|
To build it on a Debian or Ubuntu host, first install build dependencies:
|
|
</p>
|
|
<pre>
|
|
sudo apt-get build-dep libusb-1.0-0 dfu-util
|
|
sudo apt-get install mingw32
|
|
</pre>
|
|
|
|
<p>
|
|
The below example builds dfu-util 0.8 and libusb 1.0.19 from unpacked release
|
|
tarballs. If you instead build from git, you will have to run "./autogen.sh"
|
|
before running the "./configure" steps.
|
|
</p>
|
|
|
|
<pre>
|
|
mkdir -p build
|
|
cd libusb-1.0.19
|
|
PKG_CONFIG_PATH=$PWD/../build/lib/pkgconfig ./configure \
|
|
--host=i586-mingw32msvc --prefix=$PWD/../build
|
|
# WINVER workaround needed for 1.0.19 only
|
|
make CFLAGS="-DWINVER=0x0501"
|
|
make install
|
|
cd ..
|
|
|
|
cd dfu-util-0.8
|
|
PKG_CONFIG_PATH=$PWD/../build/lib/pkgconfig ./configure \
|
|
--host=i586-mingw32msvc --prefix=$PWD/../build
|
|
make
|
|
make install
|
|
cd ..
|
|
</pre>
|
|
The build files will now be in build/bin.
|
|
<p>
|
|
|
|
<h2>Building on Windows using MinGW</h2>
|
|
This assumes using release tarballs or having run ./autogen.sh on
|
|
the git sources.
|
|
<pre>
|
|
cd libusb-1.0.19
|
|
./configure --prefix=$HOME
|
|
# WINVER workaround needed for 1.0.19 only
|
|
# MKDIR_P setting should not really be needed...
|
|
make CFLAGS="-DWINVER=0x0501" MKDIR_P="mkdir -p"
|
|
make install
|
|
cd ..
|
|
|
|
cd dfu-util-0.8
|
|
./configure USB_CFLAGS="-I$HOME/include/libusb-1.0" \
|
|
USB_LIBS="-L $HOME/lib -lusb-1.0" PKG_CONFIG=true
|
|
make
|
|
make install
|
|
cd ..
|
|
</pre>
|
|
To link libusb statically into dfu-util.exe use instead of "make":
|
|
<pre>
|
|
make LDFLAGS=-static
|
|
</pre>
|
|
The built executables (and DLL) will now be under $HOME/bin.
|
|
|
|
<p>
|
|
[<a href="index.html">Back to dfu-util main page</a>]
|
|
</p>
|
|
<p id="footer">
|
|
©2014 Tormod Volden — Valid <a href="http://validator.w3.org/check?uri=referer" title="validate XHTML">XHTML</a> & <a href="http://jigsaw.w3.org/css-validator" title="validate CSS">CSS</a>
|
|
</p>
|
|
</div>
|
|
</body>
|
|
</html>
|