The GNU build system consists of several different components. These components enable building a given set of executables and/or libraries in a portable way between different environments and operating systems. This talk will be an introduction to these tools and what advantages and disadvantages this system can offer a developer. In particular, we will focus on autoconf and automake which allows one to discover the state of the system and create custom makefiles for that environment. Finally, we will discuss how one can write code and create directory structures that can ensure portability in this framework.
Patrick Nichols received his PhD in Physics in 2002 from Texas Tech University. He has since worked as a Postdoctoral Researcher/Fellow at the University of New Orleans, and finally at Pacific Northwest National Laboratory. These positions focused on the application of Parallel Distributed Programming to Quantum Chemistry and Condensed Matter. In 2009, Pat joined the High Performance Computing group at PNNL where he worked on the applications of the Global Arrays toolkit to the Smart Electrical Grid, Machine Learning and Cybersecurity. In 2012, Pat moved to Digitalglobe as an HPC programmer to develop software for satellite imaging and geospatial applications. Pat has recently joined the staff at NCAR in the CISL section.