Split Windows README instructions into new file, with a few fixes.

git-svn-id: svn://svn.berlios.de/openocd/trunk@2515 b42882b7-edfa-0310-969c-e2dbd0fdcd60
This commit is contained in:
zwelch 2009-07-14 07:35:29 +00:00
parent 6d20e27f9a
commit ff5170a979
2 changed files with 102 additions and 87 deletions

92
README
View File

@ -305,6 +305,10 @@ libftdi.
Using LIBFTDI
-------------
The libftdi source code can be download from the following website:
http://www.intra2net.com/en/developer/libftdi/download.php
For both Linux and Windows, both libusb and libftdi must be built and
installed. To use the newer FT2232H chips, supporting RTCK and USB high
speed (480 Mbps), you need libftdi version 0.16 or newer. Many Linux
@ -353,19 +357,6 @@ according to GNU GPLv2 without any exceptions. That means that
_distributing_ copies of OpenOCD built with the FTDI code would violate
the OpenOCD licensing terms.
Cygwin/Win32 Notes
******************
The Cygwin/Win32 ZIP file contains a directory named ftd2xx.win32.
Assuming that you have extracted this archive in the same directory as
the OpenOCD package, you could configure with options like the following:
./configure \
--enable-ft2232_ftd2xx \
--with-ftd2xx-win32-zipdir=../ftd2xx.win32 \
... other options ...
Linux Notes
***********
@ -404,82 +395,9 @@ Tips For Building From The Subversion Repository
************************************************
Building OpenOCD from a repository requires a recent version of the GNU
autotools (autoconf >= 2.59 and automake >= 1.9). For building on
Windows, you have to use Cygwin. Make sure that your PATH
environment variable contains no other locations with Unix utils (like
UnxUtils) - these can't handle the Cygwin paths, resulting in obscure
dependency errors. This was an observation gathered from the logs of
one user; please correct us if this is wrong.
autotools (autoconf >= 2.59 and automake >= 1.9).
1) Run './bootstrap' to create the 'configure' script and prepare
the build process for your host system.
2) Run './configure --enable-maintainer-mode' with other options.
The following URL is a good reference if you want to build OpenOCD
under cygwin.
http://forum.sparkfun.com/viewtopic.php?t=11221
Alternatively you can build the Windows binary under Linux using
MinGW cross compiler. The following documents some tips of
using this cross build option.
a) libusb-win32
You can choose to use the libusb-win32 binary distribution from
its Sourceforge page. As of this writing, the latest version
is 0.1.12.2. This is the recommend version to use since it fixed
an issue with USB composite device and this is important for FTDI
based JTAG debuggers.
http://sourceforge.net/projects/libusb-win32/
You need to download the libusb-win32-device-bin-0.1.12.2.tar.gz
package. Please extract this file into a temp directory.
Copy the file libusb-win32-device-bin-0.1.12.2\include\usb.h
to your MinGW include directory.
Copy the library libusb-win32-device-bin-0.1.12.2\lib\gcc\libusb.a
to your MinGW library directory.
Take note that different Linux distros often have different
MinGW installation directory. Some of them also put the
library and include into a seperate sys-root directory.
If there is a new svn version of libusb-win32, you can build it
as well.
This is the instrunction from the libusb-win32 Makefile.
# If you're cross-compiling and your mingw32 tools are called
# i586-mingw32msvc-gcc and so on, then you can compile libusb-win32
# by running
# make host_prefix=i586-mingw32msvc all
b) libftdi
libftdi source codes can be download from the following website.
http://www.intra2net.com/en/developer/libftdi/download.php
It does not provide Windows binary. You can build it from the
source tarball or the git tree.
If you are using the git tree, the following is the instruction
from README.mingw. You need to have cmake installed.
- Edit Toolchain-mingw32.cmake to point to the correct MinGW
installation.
- Create a build directory like "mkdir build-win32", e.g in ../libftdi/
- cd in that directory and run
"cmake -DCMAKE_TOOLCHAIN_FILE=../Toolchain-mingw32.cmake .."
- Copy src/ftdi.h to your MinGW include directory.
- Copy build-win32/src/*.a to your MinGW lib directory.
c) OpenOCD
Now you can build OpenOCD under Linux using MinGW.
You need to use --host=your_mingW_prefix in the configure option.
Example for libftdi (in one line, tested under Ubuntu 9.04):
./configure --host=i586-mingw32msvc --enable-maintainer-mode
--disable-shared --enable-ft2232_libftdi
Example for ftd2xx (in one line, tested under Ubuntu 9.04)
./configure --host=i586-mingw32msvc --enable-maintainer-mode
--disable-shared --enable-ft2232_ftd2xx
--with-ftd2xx-win32-zipdir=/home/mcuee/Desktop/build/openocd/libftd2xx-win32

97
README.Win32 Normal file
View File

@ -0,0 +1,97 @@
Building OpenOCD for Windows
----------------------------
For building on Windows, you have to use CygWin. Make sure that your
PATH environment variable contains no other locations with Unix utilities
(like UnxUtils). Those tools can't handle the CygWin paths, resulting
in obscure dependency errors. This was an observation gathered from the
logs of one user; please correct us if this is wrong.
The following URL is a good reference if you want to build OpenOCD
under CygWin:
http://forum.sparkfun.com/viewtopic.php?t=11221
Alternatively you can build the Windows binary under Linux using
MinGW cross compiler. The following documents some tips of
using this cross build option.
libusb-win32
------------
You can choose to use the libusb-win32 binary distribution from
its SourceForge page. As of this writing, the latest version
is 0.1.12.2. This is the recommend version to use since it fixed
an issue with USB composite device and this is important for FTDI
based JTAG debuggers.
http://sourceforge.net/projects/libusb-win32/
You need to download the libusb-win32-device-bin-0.1.12.2.tar.gz
package. Extract this file into a temp directory.
Copy the file libusb-win32-device-bin-0.1.12.2\include\usb.h
to your MinGW include directory.
Copy the library libusb-win32-device-bin-0.1.12.2\lib\gcc\libusb.a
to your MinGW library directory.
Take note that different Linux distributions often have different MinGW
installation directory. Some of them also put the library and include
into a separate sys-root directory.
If there is a new svn version of libusb-win32, you can build it as well.
These are the instruction from the libusb-win32 Makefile:
# If you're cross-compiling and your mingw32 tools are called
# i586-mingw32msvc-gcc and so on, then you can compile libusb-win32
# by running
# make host_prefix=i586-mingw32msvc all
libftdi
-------
The author does not provide Windows binary. You can build it from a
released source tarball or the git tree.
If you are using the git tree, the following are the instructions from
README.mingw. You will need to have the cmake utility installed.
- Edit Toolchain-mingw32.cmake to point to the correct MinGW
installation.
- Create a build directory like "mkdir build-win32", e.g in ../libftdi/
- cd into that directory and run
"cmake -DCMAKE_TOOLCHAIN_FILE=../Toolchain-mingw32.cmake .."
- Copy src/ftdi.h to your MinGW include directory.
- Copy build-win32/src/*.a to your MinGW lib directory.
libftd2xx
---------
The Cygwin/Win32 ZIP file contains a directory named ftd2xx.win32.
After being extracted, the directory does not need further preparation.
Instead, its path must be provided to the --with-ftd2xx-win32-zipdir
configure option, as shown in the next section.
OpenOCD
-------
Now you can build OpenOCD under Linux using MinGW. You need to use
--build and --host configure options.
To use libftdi:
./configure --build=i686-pc-linux-gnu --host=i586-mingw32msvc \
--enable-ft2232_libftdi \
... other options ...
To use ftd2xx:
./configure --build=i686-pc-linux-gnu --host=i586-mingw32msvc \
--enable-ft2232_ftd2xx \
--with-ftd2xx-win32-zipdir=/path/to/libftd2xx-win32 \
... other options ...
If you are using the SVN repository, see the README file for additional
instructions about configuring and building OpenOCD.