<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">\documentclass[onecolumn,letterpaper,11pt]{article}

%===================================================================
\input{common_latex/common_latex_packages}
\input{common_latex/common_latex_definitions}
\input{common_latex/common_latex_help_format}
%===================================================================

\begin{document}

\begin{labcover}
\labtitle{Help Topic: Downloading and Building the MOOS-IvP Software}
\vspace{0.1in}
\labdate{Spring 2022}
\vspace{0.1in}
\labauth{Michael Benjamin, mikerb@mit.edu}
\labauth{Department of Mechanical Engineering}
\labauth{MIT, Cambridge MA 02139}
\labline
\end{labcover}

\wikidoc{file=Help.MIPDownload}
\wikidoc{auth=mikerb@mit.edu}

%====================================================================
\section*{Downloading and Building the MOOS-IvP Software}
%====================================================================
\label{obtaining_ivp}

The MOOS-IvP autonomy code may be checked out and built following the
steps on this page. Before you begin, below are few steps that need to
be done beforehand:

%====================================================================
\subsection*{For MacOS}

Here are prerequisites for the Mac (likely not needed if working with
an MIT course-provided laptop):

\begin{packed_itemize}[2]

\item On the Mac you will need to have installed XCode and command
  line tools. More info here: \newline
  \urlx{http://oceanai.mit.edu/ivpman/help/osx_get_xcode}
\item On the Mac you will need to have installed either the Homebrew
  or Macports package manager installed, for installing a few external
  software dependencies you will need for building all of
  MOOS-IvP. While the helm and other "on-the-robot" apps do not have
  dependencies, the MOOS-IvP graphical (operator) tools do have
  dependencies like OpenGL, FLTK, etc.

  More info on Homebrew here: \newline
  \urlx{http://oceanai.mit.edu/ivpman/help/osx_get_homebrew}

  More info on MacPorts here: \newline
  \urlx{http://oceanai.mit.edu/ivpman/help/osx_get_macports}
      
\item Once the package manager has been installed, homebrew (or
  macports), per the above instructions, install the packages needed
  for running the course software, e.g., cmake, subversion, fltk,
  libtiff, xterm.
\end{packed_itemize}

\vspace{0.1in}
\begin{consoleverb}
$ brew install cmake subversion fltk libtiff xterm
\end{consoleverb}
\vspace{0.1in}


%====================================================================
\subsection*{For Linux}

Here are prerequisites for Linux (likely not needed if working with
an MIT course-provided laptop):

\begin{packed_itemize}[2]
\item On a Linux machine, the build environment, e.g., C++, and the package
  manager come with the Linux OS install, so there should be no issues there.
\item Install the packages needed for running the course software,
  e.g., cmake, xterm, subversion, libfltk1.3-dev, libtiff5-dev.
\end{packed_itemize}

\vspace{0.1in}
\begin{consoleverb}
$ apt-get --assume-yes install cmake xterm subversion libfltk1.3-dev libtiff5-dev
\end{consoleverb}
\vspace{0.1in}



%====================================================================
\subsection*{Downloading the Software}

The latest software is downloaded using Git (\cmd{git}). You will
download this into your home directory. 

\vspace{0.15in}
\begin{consoleverb}
 $ cd 
 $ git clone https://github.com/moos-ivp/moos-ivp.git
\end{consoleverb}
\vspace{0.1in}

\begin{packed_itemize}[2]
\item The above command invokes \cmd{git} to clone a tree,
  at the given URL, with the local name of "moos-ivp".
\item This tree is generally available from moos-ivp.org in one of several
   forms. The most public forms are (1) the latest release, and (2)
   the development trunk.
\item At any point after an initial checkout, users may pull down the 
   latest updates to the software by typing:
\end{packed_itemize}

\begin{consoleverb}
 $ cd ~/moos-ivp
 $ git pull
\end{consoleverb}
\vspace{0.1in}


%====================================================================
\subsection*{Building the Course Software}

After a successful download, you should have a new directory (folder)
called \var{moos-ivp}. All the code is in this folder. There are
\var{README} instructions in the top-level folder for each OS
flavor.

Assuming you have installed the handful of prerequisite packages outlined
above, the course software may be built in the steps below:

\vspace{0.1in}
\begin{consoleverb}
 $ cd ~/moos-ivp
 $ ./build-moos.sh
 (let it build)
 $ ./build-ivp.sh
 (let it build)
\end{consoleverb}
\vspace{0.1in}

\end{document}


</pre></body></html>