Difference between revisions of "Template:CompileOpenOCDFedoraGit"
(→Compiling OpenOCD) |
(→Preparing to Run OpenOCD) |
||
Line 68: | Line 68: | ||
cd ~/openocd/tcl | cd ~/openocd/tcl | ||
cp -r * ~/openocd-bin | cp -r * ~/openocd-bin | ||
− | cd | + | cd ../src |
cp openocd ~/openocd-bin | cp openocd ~/openocd-bin | ||
Revision as of 12:38, 23 August 2012
This guide will compile OpenOCD {{{3}}} for Fedora 17 with the {{{{{2}}}_NAME_CAPS}} driver library, for use with the TinCanTools Flyswatter and Flyswatter2. Version {{{3}}} is the version of OpenOCD currently in development. For instructions on compiling with the most recent release code, see Compiling OpenOCD Linux.
Contents
OpenOCD 0.6.0 vs the 0.5.0 Release
This guide uses the most recent version of the OpenOCD source currently in development. Unlike the 0.5.0 release the development version includes support for the Flyswatter2, so you won't need to download or apply a patch before compiling. However, the development code is subject to change at any time. If you encounter problems with this option, try the OpenOCD 0.5.0 instructions in Compiling OpenOCD Linux instead.
Installing Packages
You will need to install several packages to compile and run OpenOCD. Open a terminal window (Applications menu > Terminal Emulator) and type:
sudo yum install libtool autoconf texinfo libusb-dev
If you prefer to compile libusb yourself, you can find the source at http://sourceforge.net/projects/libusb/files/libusb-1.0/.
Downloading and Compiling libFTDI
libFTDI is an open source library that enables you to talk to FTDI chips like: FT232BM, FT245BM, FT245R, FT2232C, FT2232D and FT2232H. You will need libFTDI to compile OpenOCD.
Fedora 17 provides libftdi-0.19. To install:
$ sudo yum install libftdi
Downloading OpenOCD
Git is version control software distributed with Fedora. You can use git to download the current development code from the OpenOCD git repository at sourceforge.net. In the terminal window, navigate to your home directory and make sure you don't already have a directory there named openocd/. (Downloading with git will create a directory called openocd/ containing the OpenOCD source. If you already have a directory called openocd/ either rename it or navigate to a different directory before you proceed.) Then download OpenOCD with the following command:
cd ~ git clone git://openocd.git.sourceforge.net/gitroot/openocd/openocd
There should now be a folder in your home directory called openocd/.
Compiling OpenOCD
In the terminal window, navigate to the new folder containing the OpenOCD source and compile as follows.
cd ~/openocd ./bootstrap ./configure --enable-maintainer-mode --disable-werror --enable-ftdi make
At this point you can continue and do:
sudo make install
I personally prefer not to do this, as I prefer to copy the openocd binary and supporting files to a /bin directory within my home directory. This is described below.
Navigate to /home/USERNAME/openocd/src to find the openocd binary. You will need superuser privileges (the sudo command) to run OpenOCD.
Preparing to Run OpenOCD
You can run openocd from /home/USERNAME/openocd/src, but you may encounter problems with configuration files. For a more in-depth discussion of these issues, see OpenOCD Config File Paths. This guide recommends that you create a new directory containing OpenOCD and its config files.
Create a new directory in /home/USERNAME called openocd-bin, and copy the openocd binary and the contents of /home/USERNAME/openocd/tcl to the new directory. You can do this from the terminal window with the collowing commands:
cd ~ mkdir openocd-bin cd ~/openocd/tcl cp -r * ~/openocd-bin cd ../src cp openocd ~/openocd-bin
openocd-bin should now contain the following files and subdirectories:
board chip cpld cpu openocd interface target test bitsbytes.tcl mem_helper.tcl memory.tcl mmr_helpers.tcl
You can now run OpenOCD from /home/USERNAME/openocd-bin. To get started running OpenOCD, see Running OpenOCD on Linux.