Click here to Skip to main content
15,885,792 members
Articles / Artificial Intelligence

Artificial Neural Networks made easy with the FANN library

Rate me:
Please Sign up or sign in to vote.
4.93/5 (46 votes)
28 Aug 2013CPOL24 min read 194.4K   10.6K   206  
Neural networks are typically associated with specialised applications, developed only by select groups of experts. This misconception has had a highly negative effect on its popularity. Hopefully, the FANN library will help fill this gap.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML
><HEAD
><TITLE
>Installation</TITLE
><link href="../style.css" rel="stylesheet" type="text/css"><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK
REL="HOME"
TITLE="Fast Artificial Neural Network Library"
HREF="index.html"><LINK
REL="UP"
TITLE="Introduction"
HREF="c13.html"><LINK
REL="PREVIOUS"
TITLE="Introduction"
HREF="c13.html"><LINK
REL="NEXT"
TITLE="Getting Started"
HREF="x68.html"></HEAD
><BODY
CLASS="section"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>Fast Artificial Neural Network Library</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="c13.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
>Chapter 1. Introduction</TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="x68.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="section"
><H1
CLASS="section"
><A
NAME="intro.install"
>1.2. Installation</A
></H1
><DIV
CLASS="section"
><H2
CLASS="section"
><A
NAME="intro.install.rpm"
>1.2.1. RPMs</A
></H2
><P
>&#13;	  RPMs are a simple way to manage packages, and is used on many common Linux distributions such as 
          <A
HREF="http://www.redhat.com"
TARGET="_top"
>Red Hat</A
>, <A
HREF="http://www.mandrake.com/"
TARGET="_top"
>Mandrake</A
>,
	  and <A
HREF="http://www.suse.com/"
TARGET="_top"
>SuSE</A
>.
	</P
><P
>&#13;	  Two separate packages exist; fann, the runtime library, and fann-devel, the development library and
	  header files.
	</P
><P
>&#13;	  After downloading FANN, simply run (as root) the following command: <B
CLASS="command"
>rpm -ivh $PATH_TO_RPM</B
>
	</P
></DIV
><DIV
CLASS="section"
><H2
CLASS="section"
><A
NAME="intro.install.deb"
>1.2.2. DEBs</A
></H2
><P
>&#13;	  DEBs are packages for the <A
HREF="http://www.debian.org"
TARGET="_top"
>Debian</A
> Linux distribution.
	  Two separate packages exists libfann1 and libfann1-dev, where libfann1 is the runtime library and
	  libfann1-dev is the development library.
	</P
><P
>&#13;	  Fann is included in the testing distribution of Debian, so testing users can simply run (as root) the following command: <B
CLASS="command"
>apt-get install libfann1 libfann1-dev</B
>.
	</P
><P
>&#13;	  After downloading the FANN DEB package, simply run (as root) the following command: <B
CLASS="command"
>dpkg -i $PATH_TO_DEB</B
>
	</P
></DIV
><DIV
CLASS="section"
><H2
CLASS="section"
><A
NAME="intro.install.win32"
>1.2.3. Windows</A
></H2
><P
>&#13;	  FANN &#62;= 1.1.0 includes a Microsoft Visual C++ 6.0 project file, which can be used to compile FANN for Windows.
	  To build the library and examples with MSVC++ 6.0:
	</P
><P
>&#13;	  First, navigate to the MSVC++ directory in the FANN distribution and open the <TT
CLASS="filename"
>all.dsw</TT
> workspace.
	  In the Visual Studio menu bar, choose "Build" -&#62; "Batch build...", select the project configurations
	  that you would like to build (by default, all are selected), and press "rebuild all"
	</P
><P
>&#13;	  When the build process is complete, the library and examples can be found in the <TT
CLASS="filename"
>MSVC++\Debug</TT
> and
	  <TT
CLASS="filename"
>MSVC++\Release</TT
> directories and the release versions of the examples are automatically copied into
	  the <TT
CLASS="filename"
>examples</TT
> where they are supposed to be run.
	</P
></DIV
><DIV
CLASS="section"
><H2
CLASS="section"
><A
NAME="intro.install.src"
>1.2.4. Compiling from source</A
></H2
><P
>&#13;	  Compiling FANN from source code entails the standard GNU autotools technique. First, configure the package as
	  you want it by typing (in the FANN directory), <B
CLASS="command"
>./configure</B
> If you need help choosing the
	  options you would like to use, try <B
CLASS="command"
>./configure --help</B
>
	</P
><P
>&#13;	  Next, you have to actually compile the library. To do this, simply type <B
CLASS="command"
>make</B
>
	</P
><P
>&#13;	  Finally, to install the library, type <B
CLASS="command"
>make install</B
>. Odds are you will have to
	  be root to install, so you may need to <B
CLASS="command"
>su</B
> to root before installing. Please
	  remember to log out of the root account immediately after <B
CLASS="command"
>make install</B
> finishes.
	</P
><P
>&#13;	  Some people have experienced problems with compiling the library with some compilers, especially windows compilers which can not use GNU autotools. Please look through the <A
HREF="http://sourceforge.net/forum/forum.php?forum_id=323465"
TARGET="_top"
>help forum</A
> and the <A
HREF="http://sourceforge.net/mailarchive/forum.php?forum=fann-general"
TARGET="_top"
>mailing list</A
> archives for info on how these problems was solved. If you do not find any information here, feel free to ask questions.

	</P
></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="c13.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="x68.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>Introduction</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="c13.html"
ACCESSKEY="U"
>Up</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>Getting Started</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Publisher
Poland Poland
Software Developer's Journal (formerly Software 2.0) is a magazine for professional programmers and developers publishing news from the software world and practical articles presenting very interesting ready programming solutions. To read more

Comments and Discussions