Skip to Content
Cross-Platform Development in C++: Building Mac OS X, Linux, and Windows Applications
book

Cross-Platform Development in C++: Building Mac OS X, Linux, and Windows Applications

by Syd Logan
November 2007
Intermediate to advanced
576 pages
14h 12m
English
Addison-Wesley Professional

Overview

Cross-Platform Development in C++ is the definitive guide to developing portable C/C++ application code that will run natively on Windows, Macintosh, and Linux/Unix platforms without compromising functionality, usability, or quality.

Long-time Mozilla and Netscape developer Syd Logan systematically addresses all the technical and management challenges associated with software portability from planning and design through coding, testing, and deployment. Drawing on his extensive experience with cross-platform development, Logan thoroughly covers issues ranging from the use of native APIs to the latest strategies for portable GUI development. Along the way, he demonstrates how to achieve feature parity while avoiding the problems inherent to traditional cross-platform development approaches.

This book will be an indispensable resource for every software professional and technical manager who is building new cross-platform software, porting existing C/C++ software, or planning software that may someday require cross-platform support.

Build Cross-Platform Applications without Compromise

Throughout the book, Logan illuminates his techniques with realistic scenarios and extensive, downloadable code examples, including a complete cross-platform GUI toolkit based on Mozilla’s XUL that you can download, modify, and learn from. Coverage includes 

  • Policies and procedures used by Netscape, enabling them to ship Web browsers to millions of users on Windows, Mac OS, and Linux

  • Delivering functionality and interfaces that are consistent on all platforms

  • Understanding key similarities and differences among leading platform-specific GUI APIs, including Win32/.NET, Cocoa, and Gtk+

  • Determining when and when not to use native IDEs and how to limit their impact on portability

  • Leveraging standards-based APIs, including POSIX and STL

  • Avoiding hidden portability pitfalls associated with floating point, char types, data serialization, and types in C++

  • Utilizing platform abstraction libraries such as the Netscape Portable Runtime (NSPR)

  • Establishing an effective cross-platform bug reporting and tracking system

  • Creating builds for multiple platforms and detecting build failures across platforms when they occur

  • Understanding the native runtime environment and its impact on installation

  • Utilizing wxWidgets to create multi-platform GUI applications from a single code base

  • Thoroughly testing application portability

  • Understanding cross-platform GUI toolkit design with Trixul

  • Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
    and much more.

    Read now

    Unlock full access

    More than 5,000 organizations count on O’Reilly

    AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

    QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
    Julian F.
    Head of Cybersecurity
    QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
    Addison B.
    Field Engineer
    QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
    Amir M.
    Data Platform Tech Lead
    QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
    Mark W.
    Embedded Software Engineer

    You might also like

    Beginning Open Source Development on Linux

    Beginning Open Source Development on Linux

    William Bo Rothwell

    Publisher Resources

    ISBN: 9780321246424Purchase book