Wind River Workbench User's Guide, 3.2
Contents
Part I Introduction
1 Overview
1.1 Introduction
1.2 Wind River Documentation
1.2.1 How This Guide Is Organized
1.2.2 Documentation Conventions
1.3 Workbench Context-Sensitive Help
1.3.1 Searching Documentation
1.3.2 For More Information
2 Introduction to Workbench
2.1 Introduction
2.2 About Wind River Workbench
2.3 Starting Workbench
2.4 Establishing Workspaces
2.5 Workbench Basics
2.5.1 Workbench Windows
2.5.2 Perspectives
2.5.3 Views
2.5.4 Editors
2.5.5 Dragging and Dropping Within the Project Explorer
2.5.6 Saving and Restoring Customized Perspectives
2.6 Standard Workbench Export and Import
Part II Projects
3 Projects Overview
3.1 Introduction
3.2 Specifying Project Locations
3.3 Creating New Projects
3.3.1 Modifying Project Settings
3.4 Project Types
3.4.1 Linux-Specific Projects
3.4.2 VxWorks-Specific Projects
3.4.3 User-Defined Projects
3.4.4 Native Application Projects
3.5 Structuring Projects
3.5.1 Adding Subprojects and Superprojects to a Project
3.5.2 Removing Subprojects
3.5.3 Project Structures and Host File System Directory Structure
3.5.4 Project Structures and the Build System
3.5.5 Project Structures and Sharing Subprojects
3.5.6 Customizing Build Settings for Shared Subprojects
3.6 Project-Specific Execution Environments
3.6.1 Using a project.properties file with a Shell
3.6.2 Limitations When Using project.properties Files
4 Building and Debugging a Sample Project
4.1 Introduction
4.2 Creating a Project and Running a Program
4.2.1 Starting Workbench
4.2.2 Returning to the Default Perspective
4.2.3 Creating the ball Project
4.2.4 Importing Source Files Into Your Project
4.2.5 Building the ball Project
4.2.6 Connecting to the Target
4.2.7 Running the ball Application in the Debugger
4.2.8 Setting Up the Device Debug Perspective
4.2.9 Stepping Through Code
4.2.10 Setting and Running to a Breakpoint
4.2.11 Modifying the Breakpoint to Execute Continuously
4.3 Editing and Debugging Source Files
4.3.1 Using Bookmarks in Lines and Files
4.3.2 Building a Project with Introduced Errors
4.3.3 Rebuilding the Project Without Errors
4.3.4 Displaying a File’s History
4.4 Using the Editor’s Code Development Features
4.4.1 Changing File Preferences
4.4.2 Navigating in the Source
4.4.3 Using Code Completion to Suggest Elements
4.4.4 Getting Parameter Hints for Routine Data Types
4.4.5 Finding Symbols in Source Files
4.4.6 Using Bracket Matching to Find Code Open and Close Sections
5 Creating Native Application Projects
5.1 Introduction
5.2 Creating Native Application Projects
5.3 Configuring Build Properties
5.4 Native Applications in the Project Explorer
5.4.1 Project Build Specs and Target Nodes
5.4.2 Makefile Nodes
5.4.3 Nodes
5.5 Application Code for a Native Application Project
6 Creating User-Defined Projects
6.1 Introduction
6.2 Creating and Maintaining Makefiles
6.3 Creating User-Defined Projects
6.4 Configuring User-Defined Projects
6.5 Debugging Source
Part III Development
7 Working in the Project Explorer
7.1 Introduction
7.2 Adding Resources and Files to Projects
7.3 Opening and Closing Projects, Scoping and Navigation
7.4 Moving, Copying, and Deleting Resources and Nodes
7.4.1 Manipulating Project Nodes
7.4.2 Manipulating Target Nodes
7.5 Parsing Binary Images
8 Using Advanced Navigation and Editing
8.1 Introduction
8.2 Using Advanced Context Navigation
8.3 Using the Editor’s Advanced Features
8.3.1 Building Projects from the Editor
8.4 Searching for and Replacing Elements
8.4.1 Initiating Text Retrieval
8.5 Expanding and Exploring Macro References
8.6 Configuring the Source Analysis Indexer
8.6.1 Turning Off the Source Analysis Indexer
8.6.2 Setting Indexer Preferences
8.6.3 Editing Build Properties
8.6.4 Setting Up Paths and Symbols
8.6.5 Updating a Project’s Index
8.6.6 Sharing Source Analysis Data with a Team
9 Building Projects
9.1 Introduction
9.2 Configuring Managed Builds
9.3 Configuring User-Defined Builds
9.4 Accessing Build Properties
9.4.1 Workbench Global Build Properties
9.4.2 Project-specific Build Properties
9.4.3 Folder, File, and Build Target Properties
9.4.4 Multiple Target Operating Systems and Versions
9.5 Working with Build Specs
9.5.1 Defining and Importing Build Specs
9.5.2 Regenerating Build Spec Cache Information (VxWorks)
9.6 Configuring Build Macros
9.7 Configuring Build Paths
9.8 Makefiles
9.8.1 Derived File Build Support
10 Building: Use Cases
10.1 Introduction
10.2 Adding Compiler Flags
10.3 Building Applications for Different Target Architectures
10.4 Creating Library Build Targets for Multiple Applications
10.4.1 Creating the ComplexSystem Example Project
10.4.2 Creating the ComplexSystem Project Manually
10.5 Implementing Architecture-Specific Functions
10.6 Creating User-Defined Build Targets in the Project Explorer
10.6.1 Custom Build Targets in User-Defined Projects
10.6.2 Custom Build Targets in Workbench-Managed Projects
10.6.3 Custom Build Targets in Wind River Linux Platform Projects
10.6.4 User Build Arguments
10.7 Defining Build Specs for New Compilers and Other Tools
10.8 Developing on Remote Hosts
10.8.1 Remote Development Requirements
10.8.2 Remote Build Scenarios
10.8.3 Setting Up a Connection to a Remote Environment
10.8.4 Building Projects Remotely
10.8.5 Running Native Applications Remotely
10.8.6 Example: Using Samba on Remote Linux Host
Part IV Target Management
11 Connecting to Targets
11.1 Introduction
11.2 The Remote Systems View
11.3 Defining a New Connection
11.3.1 Modifying Connection Properties
11.3.2 Viewing Kernel Task and Process Properties
11.4 Establishing a Connection
11.5 The Registry
11.5.1 Launching the Registry
11.5.2 Remote Registries
11.5.3 Shutting Down the Registry
11.5.4 Changing the Default Registry
Part V Debugging
12 Working with Breakpoints
12.1 Introduction
12.2 Types of Breakpoints
12.2.1 Line Breakpoints
12.2.2 Expression Breakpoints
12.2.3 Hardware Breakpoints
12.2.4 Dynamic printf Event Points
12.3 Managing Breakpoints
12.4 Knowing Which Debugger Gets the Breakpoints
12.5 Limitations on Breakpoints During SMP Task Debugging
13 Launching Programs
13.1 Introduction
13.2 Defining Terminology
13.3 Creating and Customizing Launch Configurations
13.4 Using Launch Configurations to Run Programs
13.5 Launching Programs Manually
13.5.1 Editing an Automatically Created Launch Configuration
13.6 Attaching the Debugger to a Running Process
13.7 Controlling Multiple Launches
13.8 Launches and the Console View
13.9 Attaching to the Kernel
13.10 Suggested Workflow
14 Debugging Projects in Workbench
14.1 Introduction
14.2 Using the Debug View
14.2.1 Understanding the Debug View Display
14.2.2 Stepping Through a Program
14.3 Using Debug Modes
14.3.1 Setting and Recognizing the Debug Mode of a Connection
14.3.2 Debugging Multiple Target Connections
14.3.3 Suppressing Target Exception Dialogs
14.3.4 Disconnecting and Terminating Processes
14.3.5 Configuring Debug Settings for a Custom Editor
14.4 Debugging Self-Hosted Applications
14.4.1 Debugging with GDB
14.4.2 Debugging with the Wind River Debugger (Linux Hosts Only)
14.5 Changing Source Lookup Path Settings
14.5.1 Selecting Source Lookup Containers
14.5.2 Reverse Source Lookup
14.6 Stepping Through Assembly Code
14.7 Using the Disassembly View
14.7.1 Opening the Disassembly View
14.7.2 Understanding the Disassembly View Display
14.8 Run/Debug Preferences
Part VI Using Workbench in a Larger Environment
15 Integrating Plug-ins
15.1 Introduction
15.2 Finding New Plug-ins
15.3 Incorporating New Plug-ins into Workbench
15.3.1 Creating a Plug-in Directory Structure
15.3.2 Installing a ClearCase Plug-in Example
15.4 Disabling Plug-in Functionality
15.5 Managing Multiple Plug-in Configurations
15.6 Installing JDT for Third-Party Plug-ins and Debugging
16 Using Workbench in an Eclipse Environment
16.1 Introduction
16.2 Recommended Software Versions and Limitations
16.3 Setting Up Workbench
16.4 Using CDT and Workbench in an Eclipse Environment
16.4.1 Workflow in the Project Explorer
16.4.2 Workflow in the Build Console
16.4.3 Workflow in the Editor
16.4.4 Workflow for Debugging
17 Using Workbench Without a License
17.1 Introduction
17.2 About Workbench License Deferral
17.3 Working Without a Workbench License
18 Using Workbench with Version Control
18.1 Introduction
18.2 Using Workbench with ClearCase Views
18.2.1 Specifying the Path to an External JVM
18.2.2 Adding Workbench Project Files to Version Control
18.2.3 Choosing Not to Add Build Output Files to ClearCase
18.3 Using Workbench with CVS
19 Using Workbench in a Team Environment
19.1 Introduction
19.2 Team Support with Combined Workspace Export and Import
19.2.1 Exporting Combined Workspace Information
19.2.2 Importing Combined Workspace Information
19.3 Automatic Path Resolution
19.4 Multiple Users and Installations of Workbench
Part VII Reference
A Troubleshooting
A.1 Introduction
A.2 Startup Problems
A.3 General Problems
A.3.1 Help System Does Not Display on Solaris or Linux
A.3.2 Help System Does Not Display on Windows
A.3.3 Removing Unwanted Target Connections
A.3.4 Resetting Workbench to its Default Settings
A.3.5 When CDF File Changes Do Not Take Affect
A.4 Fixing Indexer Issues
A.4.1 Indexing Problems with Managed Projects
A.4.2 Indexing Problems with User-defined Projects
A.4.3 Other Indexing Problems
A.5 Optimizing Workbench Performance
A.6 Error Messages
A.6.1 Project System Errors
A.6.2 Build System Errors
A.6.3 Building Projects While Connected to a Target
A.6.4 Remote Systems View Errors
A.6.5 Launch Configuration Errors
A.6.6 Debugger Errors
A.6.7 Source Analysis Errors
A.7 Error Log View
A.8 Error Logs Generated by Workbench
A.8.1 Creating a Log ZIP file
A.8.2 Eclipse Log
A.8.3 DFW GDB/MI Log
A.8.4 DFW Debug Tracing Log
A.8.5 Debugger Views GDB/MI Log
A.8.6 Debugger Views Internal Errors Log
A.8.7 Debugger Views Broadcast Message Debug Tracing Log
A.8.8 Target Server Output Log
A.8.9 Target Server Back End Log
A.8.10 Target Server WTX Log
A.8.11 Remote Systems Debug Tracing Log
A.9 Technical Support
B Command-line Updating of Workspaces
B.1 Introduction
B.2 wrws_update Reference
C Command-line Importing of Projects
C.1 Introduction
C.2 wrws_import Reference
D Configuring a Wind River Proxy Host
D.1 Introduction
D.2 Configuring wrproxy
D.3 wrproxy Command Summary
E Configuring Firewalls for Host-Target Interaction
E.1 Introduction
E.2 System Limitations
E.3 Wind River Components
F Glossary
F.1 Searching for Terms in Online Documentation
F.2 Glossary of Terms
Index