From the Back Cover
If you have some programming experience and are ready to venture into Linux programming, this updated edition of the bestselling entry-level book takes you there. New to this edition are chapters on MySQL® access and administration; programming GNOMETM and KDETM; and Linux standards for portable applications. Coverage of kernel programming, device drivers, CVS, grep, and GUI development environments has expanded.
The authors guide you step by step, using construction of a CD database application to give you hands-on experience as you progress from the basic to the complex.
You’ll start with fundamental concepts like writing Linux programs in C. You’ll learn basic system calls, file I/O, interprocess communication, and shell programming. You’ll become skilled with the toolkits and libraries for working with user interfaces. The book starts with the basics, explaining how to compile and run your first program. First, each concept is explained to give you a solid understanding of the material. Practical examples are then presented, so you see how to apply the knowledge in real applications.
What you will learn from this book
- To write scripts that use grep, regular expressions, and other Linux facilities
- To develop programs to access files and the Linux environment
- To use the GNU compiler, debugger and other development tools
- To program data storage applications for MySQL and DBM database systems
- To write programs that take advantage of signals, processes, and threads
- To access the network using TCP/IP sockets
- To build graphical user interfaces using both the GTK (for GNOME) and Qt (for KDE) libraries
- To write device drivers that can be loaded into the Linux kernel
Who this book is for
This book is for programmers with some C or C++ experience who want to take advantage of the Linux development environment. You should have enough Linux familiarity to have installed and configured users on Linux.
Wrox Beginning guides are crafted to make learning programming languages and technologies easier than you think, providing a structured, tutorial format that will guide you through all the techniques involved.
About the Author
Neil Matthew has been interested in and has programmed computers since 1974. Amathematics graduate from the University of Nottingham, Neil is just plain keen on programming languages and likes to explore new ways of solving computing problems. He’s written systems to program in BCPL, FP (Functional Programming), Lisp, Prolog, and a structured BASIC. He even wrote a 6502 microprocessor emulator to run BBC microcomputer programs on UNIX systems.
In terms of UNIX experience, Neil has used almost every flavor since the late 1970s, including BSD UNIX, AT&T System V, Sun Solaris, IBM AIX, many others, and of course Linux.
Neil can claim to have been using Linux since August 1993 when he acquired a floppy disk distribution of Soft Landing (SLS) from Canada, with kernel version 0.99.11. He’s used Linux-based computers for hacking C, C++, Icon, Prolog, Tcl, and Java at home and at work.
Most of Neil’s “home” projects were originally developed using SCO UNIX, but they’ve all ported to Linux with little or no trouble. He says Linux is much easier because it supports quite a lot of features from other systems, so that both BSD- and System V–targeted programs will generally compile with little or no change.
As the head of software and principal engineer at Camtec Electronics in the 1980s, Neil programmed in C and C++ for real-time embedded systems. Since then he’s worked on software development techniques and quality assurance. After a spell as a consultant with Scientific Generics he is currently working as a systems architect with Celesio AG.
Neil is married to Christine and has two children, Alexandra and Adrian. He lives in a converted barn in Northamptonshire, England. His interests include solving puzzles by computer, music, science fiction, squash, mountain biking, and not doing it yourself.
Rick Stones programming at school, more years ago than he cares to remember, on a 6502-powered BBC micro, which with the help of a few spare parts continued to function for the next 15 years. He graduated from Nottingham University with a degree in Electronic Engineering, but decided software was more fun.
Over the years he has worked for a variety of companies, from the very small with just a dozen employees, to the very large, including the IT services giant EDS. Along the way he has worked on a range of projects, from real-time communications to accounting systems, very large help desk systems, and more recently as the technical authority on a large EPoS and retail central systems program.
A bit of a programming linguist, he has programmed in various assemblers, a rather neat proprietary telecommunications language called SL-1, some FORTRAN, Pascal, Perl, SQL, and smidgeons of Python and C++, as well as C. (Under duress he even admits that he was once reasonably proficient in Visual Basic, but tries not to advertise this aberration.)
Rick lives in a village in Leicestershire, England, with his wife Ann, children Jennifer and Andrew, and two cats. Outside work his main interest is classical music, especially early religious music, and he even does his best to find time for some piano practice. He is currently trying to learn to speak German.