Installing and Building Your SourcePro® C++ Products
Chapter 1 Introduction
1.1 Welcome
1.2 What is RCB?
1.2.1 Creating Buildspecs
1.2.2 Executing Buildspecs
1.3 Features
1.3.1 Wizard-Like Interface
1.3.2 Built-In Intelligence
1.3.3 Understanding Your Environment
1.3.4 Selectable Component Set
1.3.5 Sequential Multiple Builds
1.3.6 Single, Multipurpose Buildspace
1.3.7 Three Selectable Build Activities
1.3.8 Command Line Interface
1.3.9 Flexible Naming Conventions
1.3.10 Reusable Data for Building Applications
1.3.11 Information Exchange Capabilities
1.4 3rd-Party Software Use
1.5 Resources
1.6 Products and Services Information
Chapter 2 Quick Start
2.1 Getting Started
2.2 Installing RCB and Components
2.2.1 License Key File
2.2.2 Installing RCB and SourcePro Components
2.2.3 The Buildspace Directory
2.3 Starting RCB
2.4 Setting Consents for Platform Information Exchange
2.4.1 User Consent Setting
2.4.2 Transfer Method
2.5 Creating Buildspecs
2.5.1 Select a Buildspec
2.5.2 Specify a Buildspace
2.5.3 Select Components
2.5.4 Specify Build Options
2.5.5 Submit Buildspec to the Build Queue
2.5.6 Answer Platform Information Exchange Request (optional)
2.5.7 Consider Build Queue Options
2.5.7.1 Buildspecs in the Build Queue
2.5.7.2 Buildspecs Outside the Build Queue
2.5.7.3 Navigation Buttons
2.5.8 Build Output Screen
2.5.8.1 Platform Information Exchange Submission
2.6 Executing Buildspecs
2.6.1 License Message
2.6.2 Executing a Buildspec from the GUI
2.6.3 Executing a Buildspec from the Command Line
2.6.3.1 Running the Build Manager from the Command Line (Method 1)
2.6.3.2 Running make from the Command Line (Method 2)
2.7 Results of Running a Buildspec
2.7.1 Directory Structure
2.7.1.1 Directory Naming
2.7.1.2 Directory Structure Variations
2.7.2 Build Report
2.8 Keyboard Shortcuts
2.8.1 Accelerator Keys
2.8.2 Navigating Through the Items on a Screen
2.8.3 “Clicking” Buttons Without the Mouse
2.8.4 Checkbox and Radio Button Selection and Deselection
2.8.5 Shortcuts Specific to the Component Selection Screen
2.8.6 Dropdown Menus
2.8.7 Dismissing the Help Window
2.9 Known Problems
Chapter 3 Buildspec Details
3.1 Introducing Buildspecs
3.2 Working with Buildspecs
3.2.1 What is a Buildspec?
3.2.2 Common Buildspec Mistakes
3.2.2.1 Changing Answers and Accidentally Creating a New Buildspec
3.2.2.2 Accidentally Overwriting a Buildspec
3.2.3 Modifying a Buildspec Without Changing Its Name
3.3 Migrating from an Earlier RCB Version
3.4 Answering Questions to Create a Buildspec
3.4.1 Question List
3.4.2 How RCB Determines Which Questions to Ask
3.4.2.1 Context-Sensitive Q&A
3.4.3 Unavailable (Greyed-out) Answers
3.4.4 Options Dialog
3.4.4.1 Advanced Options
3.4.4.2 Information Exchange
3.4.4.3 Welcome Screen
3.5 General Buildspec Questions
3.5.1 Select Buildspec
3.5.2 Select Buildspace
3.5.2.1 Local Buildspace
3.5.2.2 Copying Buildspecs
3.5.2.3 Export Buildspace
3.5.3 Select Components
3.5.3.1 Dependency Checking
3.5.4 Select Build Action
3.5.5 Select Operating System
3.5.6 Select Compiler
3.5.7 Select Bitwidth
3.5.8 Select Linking
3.5.9 Select Threading
3.5.10 Select Debugging
3.5.11 C++ Standard Library Selection Screen
3.5.12 Select Compile and Link Options
3.5.13 Select Naming Convention
3.5.13.1 Naming Conventions
3.5.13.2 Build Tags
3.5.14 Select Clean Options
3.5.14.1 Prebuild Clean Optons
3.5.14.2 Postbuild Clean Options
3.6 Module-Specific Questions
3.6.1 Essential Tools Module
3.6.1.1 RWCString and RWWString Implementation
3.6.1.2 Requiring Four-Digit Years
3.6.2 Internationalization Module
3.6.2.1 ICU Selection
3.6.2.2 ICU Directory Path
3.6.3 Threads Module
3.6.3.1 Tracing Question
3.6.3.2 Performance Option (Windows)
3.6.4 Secure Communication Module
3.6.4.1 Library Location
3.6.5 SourcePro DB Access Modules
3.6.5.1 DB Access Modules
3.6.5.2 Microsoft SQL Server Access Module
3.6.5.3 Rerunning Example Builds After Correcting DB Connection Information
3.6.5.4 XA Module of SourcePro DB
3.6.6 Essential Math Module
3.6.6.1 Basic Linear Algebra Library Selection
3.6.6.2 MKL or CLAPACK Selection
3.6.6.3 MKL or CLAPACK Location
Chapter 4 Working with Buildspaces
4.1 Buildspace Issues
4.2 Multiple Buildspaces
4.2.1 Using an Imported Buildspec
4.2.1.1 Platform Information Exchange Settings and Imported Buildspecs
4.2.2 Using the Export Buildspace Feature
4.3 Cleaning Up Buildspaces
4.3.1 Invoking rwclean
4.3.2 Deleting All Buildspace Files
4.3.3 Deleting Buildspace Files According to Buildtype and Module
4.3.4 Command Line Syntax
4.3.5 Examples
Chapter 5 Compiling Issues
5.1 Invoking RCB's Makefiles from the Command Line
5.1.1 Example
Appendix A Glossary
Appendix B Third‑Party Licenses
B.1 Apache Software License v. 2.0
B.2 Apache Software License v. 1.1
B.3 Sun Binary Code License 2.0
Rogue Wave Component Builder (RCB): Building Your Applications
PART IGeneral Build Information
Chapter 1 The Basics
1.1 The Four Basic Build Requirements
1.2 More About Include Path
1.3 More About Linking to Libraries
1.4 More About _RWCONFIG
1.5 More About System Requirements
1.6 Products and Services Information
Chapter 2 Additional Topics
2.1 Procedure for Building Your Applications
2.2 Dueling Compiler Flags
2.3 Working With Dynamic Binding
2.3.1 Linking to Required Libraries
2.3.2 Running the Application
2.3.2.1 Windows requirements
2.3.2.2 UNIX requirements
2.4 Using Rogue Wave Static Libraries with MSVC
PART II Module-Specific Build Information
Chapter 3 Internationalization Module Build Information
3.1 International Components for Unicode (ICU)
3.1.1 Location
3.2 Required Include Paths
3.3 Required Link Libraries
3.4 The Default Locale
Chapter 4 DB Interface Module Build Information
4.1 Required Link Libraries
4.1.1 Statically-linked Applications
4.1.2 Dynamically-linked Applications
4.2 Runtime Issues
4.2.1 Statically-linked Applications
4.2.2 Dynamically-linked Applications
4.3 Setting Environment Variables
4.3.1 Setting Environment Variables in Windows
4.3.2 Setting Environment Variables in UNIX
4.4 Establishing Connectivity
4.4.1 Establishing a Database Connection
4.4.2 Establishing a C Connection to the Database
4.4.3 Establishing a Connection Between the DB Interface Module and the Database Server
Chapter 5 Secure Communication Module Build Information
5.1 OpenSSL
5.1.1 OpenSSL Location
5.2 Required Include Paths
5.3 Required Link Libraries
5.3.1 Linking to OpenSSL on Windows
5.3.2 Linking to OpenSSL on UNIX
Chapter 6 Essential Math Module Build Information
6.1 Issues to Consider
6.2 Building the Essential Math Module Library
6.3 Building Applications that Depend on the Essential Math Module
6.3.1 Windows
6.3.1.1 NetLib CLAPACK Library
6.3.1.2 MKL BLA Library
6.3.2 UNIX
6.3.2.1 Linux
6.3.2.2 Solaris
Chapter 7 All Other Modules
7.1 No Module-Specific Explanations Needed
PART III Appendices
Appendix A Build Tag Conventions
A.1 Summary Tables
A.2 Supported Conventions
A.3 The RCB Convention
A.4 Build Tags
Appendix B Location of Key Files
B.1 Rogue Wave Buildspace
Installing and Building Your SourcePro® C++ Products
Appendix B Location of Key Files
RCB-Interface-Overview
Platform-Information-Exchange
RCB-Opening-Screen
Build-Options
Buildspec-Editing-Sessions-Summary
Build-Queue
Build-Specifications
Options-Dialog
Buildspace-Selection-Screen
Component-Selection-Screen
Build-Action
Operating-System
Compiler
Bitwidth
Linking
Threading
Debugging
Standard-Library-Options
Compile-and-Link-Options
Naming-Convention
Clean-Options
Essential-Tools-Module
Internationalization-Module
Threads-Tracing
Threads-Performance-Option
Secure-Communication-Module
Secure-Communication-Library-Location
SourcePro-DB-Access-Modules
SQL-Server-Client
Essential-Math-Module
Basic-Linear-Algebra-Library-Selection
MKL-or-CLAPACK-Selection