Advanced Linux Programming

Peter Kitson

ISBN : 0735710430

Order a printed copy of this book from Amazon.

Cover Design - Advanced Linux Programming

For your free electronic copy of this book please verify the numbers below. 

(We need to do this to make sure you're a person and not a malicious script)



Sample Chapter From Advanced Linux Programming
     Copyright © Mark Mitchell, Jeffrey Oldham, Alex Samuel

1. Getting Started

THIS CHAPTER SHOWS YOU HOW TO PERFORM THE BASIC steps required to create a C or C++ Linux program. In particular, this chapter shows you how to create and modify C and C++ source code, compile that code, and debug the result. If you’re already accustomed to programming under Linux, you can skip ahead to Chapter 2, “Writing Good GNU/Linux Software;” pay careful attention to Section 2.3,“Writing and Using Libraries,” for information about static versus dynamic linking that you might not already know.

Throughout this book, we’ll assume that you’re familiar with the C or C++ programming languages and the most common functions in the standard C library. The source code examples in this book are in C, except when demonstrating a particular feature or complication of C++ programming.We also assume that you know how to perform basic operations in the Linux command shell, such as creating directories and copying files. Because many Linux programmers got started programming in the Windows environment, we’ll occasionally point out similarities and contrasts between Windows and Linux.

1.1 Editing with Emacs

An editor is the program that you use to edit source code. Lots of different editors are available for Linux, but the most popular and full-featured editor is probably GNU Emacs.

If you’re familiar with another editor, you can certainly use it instead. Nothing in the rest of this book depends on using Emacs. If you don’t already have a favorite Linux editor, then you should follow along with the mini-tutorial given here.

If you like Emacs and want to learn about its advanced features, you might consider reading one of the many Emacs books available. One excellent tutorial, Learning GNU Emacs, is written by Debra Cameron, Bill Rosenblatt, and Eric S. Raymond (O’Reilly, 1996).

1.1.1 Opening a C or C++ Source File

You can start Emacs by typing emacs in your terminal window and pressing the Return key.When Emacs has been started, you can use the menus at the top to create a new source file. Click the Files menu, choose Open Files, and then type the name of the file that you want to open in the “minibuffer” at the bottom of the screen.1 If you want to create a C source file, use a filename that ends in .c or .h. If you want to create a C++ source file, use a filename that ends in .cpp, .hpp, .cxx, .hxx, .C, or .H. When the file is open, you can type as you would in any ordinary word-processing program.To save the file, choose the Save Buffer entry on the Files menu.When you’re finished using Emacs, you can choose the Exit Emacs option on the Files menu.

If you don’t like to point and click, you can use keyboard shortcuts to automatically open files, save files, and exit Emacs.To open a file, type C-x C-f. (The C-x means to hold down the Control key and then press the x key.) To save a file, type C-x C-s.To exit Emacs, just type C-x C-c. If you want to get a little better acquainted with Emacs, choose the Emacs Tutorial entry on the Help menu.The tutorial provides you with lots of tips on how to use Emacs effectively.