USER'S GUIDE Version 6.4 New editions of this guide incorporate all material added or changed since the previous edition. Update packages may be used between editions. The manual printing date changes when a new edition is printed. The contents and format of this manual are subject to change without notice.

Generated: 10/1/2017, 8:10 PM

Rev: cb0043d

Part Number: User's Guide for VectorCAST/++ RSP v.6.4

VectorCAST is a trademark of Vector Software, Inc.

© Copyright 2017, Vector Software, Inc. All rights reserved. No part of the material protected by this copyright notice may be reproduced or utilized in any form or by any means, electronic or mechanical, including photocopying, recording, or by any informational storage and retrieval system, without written permission from the copyright owner.

U.S. Government Restricted Rights

This computer software and related documentation are provided with Restricted Rights. Use, duplication or disclosure by the Government is subject to restrictions as set forth in the governing Rights in Technical Data and Computer Software clause of

DFARS 252.227-7015 (June 1995) and DFARS 227.7202-3(b).

Manufacturer is Vector Software, Inc. East Greenwich RI 02818, USA.

Vector Software reserves the right to make changes in specifications and other information contained in this document without prior notice. Contact Vector Software to determine whether such changes have been made.

Third-Party copyright notices are contained in the file: 3rdPartyLicenses.txt, located in the VectorCAST installation directory.

2 Table of Contents

INTRODUCTION 10

About This Manual 11 Introduction 11 Overview 11 VectorCAST/RSP Concepts 11 Harness Architecture 11 RSP Communication Overview 12 RSP Communication Details 13 Execute Commands 14

Flags 18

Execution Methods 21

USING VECTORCAST/RSP 22

Introduction 23 Combining Host- and Target-based Testing 23 CLICAST - Command Line VectorCAST 23 QuickStart 23 Command Format 24 The C/C++ Options 26 The Target Options 29 CLICAST-Only Options 41

TARGET REFERENCE 43

Analog Devices VisualDSP 44 Configuration 44 Target Execution 46 ARM RVDS 48 Configuration 48 Target Execution 48 Target Debug Execution 50 Code Composer Studio 52 Configuration 52 Target Execution with Code Composer Studio 4.0 53 Target Execution with Code Composer Studio 3.3 55 Target Execution with Code Composer Studio 2 57 DSP/BIOS support on Code Composer Studio 3.3 and 4.x 61 Configuration 61

3 DSP/BIOS Configuration 61 Code Composer Studio on ezDSP28335 target board 65 Configuration 65 Target Execution with Code Composer Studio 3.3 67 Target Execution with Debug in Code Composer Studio 3.3 68 Code Composer Studio on DSK 6713 target board 69 Configuration 69 DSP/BIOS Configuration 69 Target Execution with Code Composer Studio 3.3 73 Target Execution with Debug in Code Composer Studio 3.3 74 Code Composer Studio on OMAP 35x EVM target board 75 Configuration 75 DSP/BIOS Configuration 75 Running in a Heterogeneous Multi-core environment with Code Composer Studio 3.3 79 Target Execution with Code Composer Studio 3.3 81 Target Execution with Debug in Code Composer Studio 3.3 82 Code Composer Studio v4.2.4 on TI Stellaris EKT-LM3S9B92 EVB 83 Target Configuration 83 Configuration 83 Target Execution with Code Composer Studio 4.2 85 Target Debug Execution in Code Composer Studio 4.x 87 Code Composer Studio v4.2.4 on TI TMS570LS31xHercules USB Stick 91 Target Configuration 91 Configuration 91 Target Execution with CCS 4.2 on the TMS570LS31x USB Stick 94 Target Debug Execution in Code Composer Studio 4.x 96 CodeWarrior DSP56800E 103 Configuration 103 Target Execution 105 Target Debug Execution 106 CodeWarrior StarCore SC140e 108 Configuration 108 Target Execution 109 Target Debug Execution 109 CodeWarrior for HC12 113 Configuration 113 Banked Memory Model 116 Target Execution 117 Target Debug Execution 118 CodeWarrior for HCS08 119 Configuration 119 Target Simulator Execution 123 Target Simulator Debug Execution 124 CodeWarrior for MPC 5554 126 Configuration 126

4 Target Execution 127 Target Debug Execution 128 CodeWarrior for MPC 8315 129 CodeWarrior USB TAP Installation 129 Configuration 133 Target Execution 134 Target Debug Execution 136 CodeWarrior for MPC5121 138 Configuration 138 Target Execution 139 Target Debug Execution 142 Cosmic 68HC12 and HCS12X 143 Configuration for 68HC12 143 Configuration for HCS12X 145 Target Execution 149 Target Debug Execution 151 Cosmic STM8 152 Configuration for Cosmic STM8 on ZAP Simulator 152 Configuration for Cosmic STM8 on STVD Simulator 153 Target Execution 154 Target Debug Execution 155 EVP for VD3204x 156 Configuration 156 Fujitsu Softune for FFMC Chips 159 Configuration 159 Target Execution 160 Target Debug Execution 160 Fujitsu Softune Simulator 161 Configuration 161 Target Execution 162 Target Debug Execution 162 Green Hills Simulator/Bare Target 163 Configuration 163 Configuration for a Target Board 163 Target Execution 164 Target Execution with Green Hills Multi Debugger 164 Improving Target Execution Speed 165 Green Hills INTEGRITY Simulator 167 Configuration 167 Target Execution 167 Target Execution with Green Hills Multi Debugger 168 Improving Target Execution Speed 168 Green Hills INTEGRITY mpserv 169 Configuration 169 Target Execution 171

5 Target Execution with Green Hills Multi Debugger 171 Improving Target Execution Speed 171 Green Hills INTEGRITY rtserv 172 Configuration 172 Target Execution 174 Target Execution with Green Hills Multi Debugger 175 Improving Target Execution Speed 176 HighTec TriCore-gcc 178 Configuration 178 Target Execution 181 Target Debug Execution 182 IAR Embedded Workbench 3.x MSP430 183 Configuration 183 Target Execution 184 Target Debug Execution 185 IAR Embedded Workbench 6.0MSP430X Large Memory Model 5.x 187 Configuration 187 Target Execution 189 Target Debug Execution 189 IAR Embedded Workbench 4.x ARM 9 192 Configuration 192 Target Execution 194 Target Debug Execution 195 IAR Embedded Workbench 5.x ARM 9 198 Configuration 198 Target Execution 200 Target Debug Execution 201 IAR Embedded Workbench v6.3for Amtel SAM3N 204 Configuration 204 Target Execution 206 Target Debug Execution 207 IAR Embedded Workbench for dsPIC 209 Configuration 209 Target Execution 211 Target Debug Execution 212 IAR Embedded Workbench for PIC24 target 214 Configuration 214 Target Execution 215 Target Debug Execution 217 IAR Embedded Workbench 5.x for Amtel AVR 220 Configuration 220 Target Execution 221 Target Debug Execution 222 Keil 224

6 Configuration for the C166 224 Configuration for the C51 227 Target Execution 229 Target Debug Execution 229 Keil for ARM 231 Configuration 231 Target Execution 232 Target Debug Execution 233 Keil for ARM Cortex M3 235 Configuration 235 Instrumentation Trace Macrocell (ITM) Configuration 236 Integration Notes 238 Target Execution 239 Target Debug Execution 239 Lauterbach TRACE32 242 Configuration 242 Target Execution 244 Target Debug Execution 244 Microchip MPLAB dsPIC (PIC30) and PIC24 246 Configuration 246 Target Execution 247 Target Debug Execution 248 Microchip MPLAB C30for PIC24 on Explorer 16 249 Configuration 249 Target Execution 250 Target Debug Execution 253 NEC V850 254 Configuration 254 Target Execution 257 Target Debug Execution 257 Paradigm for 80186 259 Configuration 259 Target Execution 261 Target Debug Execution 262 Paradigm for SC520 264 Configuration 264 Target Connections and Configuration 264 Target Execution 267 Target Debug Execution 268 QNX Neutrino & QNX Momentics 270 Configuration 270 Target Execution 271 Target Debug Execution 271 Renesas HEW – M16C/R8C 273 Configuring for Renesas HEW – M16C/R8C 273

7 Target Execution 273 Target Debug Execution 282 Troubleshooting 283 Compatibility 283 Renesas HEW SuperH (SH) chips 285 Configuration for Renesas HEW - SH 285 Target Execution 286 Target Debug Execution 288 Troubleshooting 288 Compatibility 290 TASKING 56k C Compiler 291 Configuration 291 Target Execution 291 Target Debug Execution 292 TASKING 563xx C Compiler 293 Configuration 293 Target Execution 293 Target Debug Execution 294 TASKING C166 Classic 296 Configuration 296 Target Execution 297 Target Debug Execution 297 TASKING C166 VX 298 Configuration 298 Target Execution 299 Target Debug Execution 299 TASKING TriCore 300 Configuration 300 Target Execution 301 Target Debug Execution 301 Tasking C166 Classic withTRACE32 Simulator on 302 Configuration 302 Target Execution 302 Target Debug Execution 303 TriMedia 305 Configuration 305 Target Execution 307 Target Debug Execution 307 Wind River Diab/SingleStep Simulator 309 Configuration 309 Target Execution 309 Wind River Diab withTRACE32 Simulator on Linux 312 Configuration 312 Target Execution 313 Target Debug Execution 313

8 Wind River vxWorks 315 Overview 315 Starting vxSim in Tornado 315 Setting up the Command Line Tools for Tornado 316 Starting vxSim in Workbench 316 Setting up the Command Line Tools for Workbench 317 Configuration 318 Target Execution 318 Target Execution with vxWorks 653 319 Example Using vxSim 320 Example Using SBC 323 Troubleshooting a vxWorks Target Connection 326 Improving I/O Performance 331 Debugging with Tornado Crosswind on Windows 333

EXECUTION METHODS 336

EXECUTION VIA A REMOTE SHELL 337

Introduction 337 Execution via a Remote Shell 337 Introduction 337 Setting Up NFS 337 Setting Up Anonymous FTP 338 Setting Up scp 339 Setting Up rsh 339 Setting Up ssh 340 VectorCAST Configuration for Remote Shell Execution 342 Target Execution Using a Remote Shell 345 Target Debug Execution 345 Standard I/O 347 Introduction 347 Configuring to Use Stdin and Stdout 347 Target Execution - Stdin/Stdout (Automatic) 349 Target Execution - Stdin/Stdout (Manual) 349 Configuring to Use Stdout Only 350 Target Execution - Stdout (Automatic) 352 Target Execution - Stdout (Manual) 352 VectorCAST Monitor 353

INDEX 354

9 Introduction ABOUT THIS MANUAL 11

About This Manual

This section of the VectorCAST/RSP User's Guide contains information that you will need to use VectorCAST/RSP to test your software on an embedded target processor. This section is formatted with its own table of contents and index. The following topics are covered:

l VectorCAST/RSP concepts

l Creating target environments

l Target reference Introduction

Welcome to VectorCAST/RSP.

Congratulations! You have just taken the first step towards increasing your productivity testing your C/C++ language programs on embedded targets. The VectorCAST/RSP User’s Guide is intended to be a companion to the VectorCAST/C++ User’s Guide. This user guide assumes a familiarity with the VectorCAST product and its features.

This user guide has four sections. The first section, which you are currently reading, introduces the product and RSP concepts. The second section describes creating target environments. The third section contains a target reference, with specific information on configuring and executing tests on each target. Overview

VectorCAST/RSP is an extension of the VectorCAST product. It provides an interface layer that allows you to use the VectorCAST testing techniques and methods on an embedded target processor. The VectorCAST/RSP product will always run on your host platform (the same platform as the compiler). Only the VectorCAST generated test harness will be downloaded to, and executed on, the embedded target.

The VectorCAST/RSP product is always customized to a particular Target CPU, Cross Compiler, and Run-Time environment (or kernel). As such, the information presented here contains sections for several different compiler and kernel combinations. VectorCAST/RSP Concepts

VectorCAST/RSP complements the VectorCAST functionality. This section provides a conceptual overview of the VectorCAST/RSP functionality and architecture.

VectorCAST allows for the automation of software testing in a self-host environment. That is, testing of the software by running the VectorCAST Test Harnesses on the software development platform – generally a commercial workstation.

The VectorCAST/RSP package allows you to extend your testing one step further and execute your VectorCAST test cases in an embedded Target Environment. This allows you to easily verify that the test results generated in each environment are the same. It also allows you to test software that cannot be executed in the host environment due to target dependencies. Harness Architecture

The VectorCAST architecture is centered on the executable test harness that is constructed using the VECTORCAST/RSP CONCEPTS 12

VectorCAST environment constructor. The source code for this harness is custom built each time a new version of your application is built. The test harness code is compiled and linked into an executable program using the same cross-compiler and linker that you are using for your application code. The result is a complete executable program that can be downloaded to any target architecture your cross- compilation tools support. There is complete compatibility with whatever processor and board the application is intended to run on. The components of the test harness are illustrated in the following graphic:

RSP Communication Overview

The VectorCAST harness is data driven, which means that no changes are required to the harness source code in order to change how the harness stimulates the code under test. VectorCAST uses ASCII text based test data sets to stimulate the test harness. All data produced by the harness during a test run is likewise ASCII text. All IO that the harness performs is funneled through the VectorCAST IO facility. VECTORCAST/RSP CONCEPTS 13

The VectorCAST architecture allows the VectorCAST application to run on a Host platform while the test harness executable runs on the same host platform, OR on a remote target platform. The architecture of the target is not important, all that matters to VectorCAST is that there is some mechanism to send ASCII test data into the harness and to retrieve ASCII test result data back from the harness. With VectorCAST/RSP this mechanism is the IO link that is used for down-loading the target processor from the host platform, or some other dedicated communications link.

VectorCAST supports a variety of different IO mechanisms. The mechanism that you will use is dependent on the compiler and the RTOS (if any) that you are using.

The version of VectorCAST that you are using has been customized for the real-time (or kernel) that is running on your target, and for the IO link that exists between your host and target. For each compiler that is supported by VectorCAST, there is a default IO mechanism. RSP Communication Details

The IO mechanism is controlled using the “Execute Command” field in the C/C++ tab of the VectorCAST options dialog. This dialog is accessed via the Tools => Options menu choice. VECTORCAST/RSP CONCEPTS 14

There are two types of entries that can be put into this field. One is the actual command sequence that should be used to execute the cross-compiled program; the other is a “flag” command that tells VectorCAST to use one of a series of built-in command sequences to execute the target program.

Execute Commands

The command sequence method is used for Instruction Set Simulators (ISS) which have a shell, or command line interface, that can be used to run target programs. For instance the Green Hills PPC compiler has an ISS for the PowerPC called simppc. The default “Execute Command” field for this compiler is simppc -ppc603 because the way you can run target programs under the simulator is to issue the shell command simppc -ppc603 my_program.exe.

The current list of execute commands is as follows:

Compiler Execute command

ARM C 1.x armsd –E

ARM C 3.x armsd –E

CodeWarrior for Power cmdIDE PC Comm

CodeWarrior StarCore runsim VECTORCAST/RSP CONCEPTS 15

Compiler Execute command

CodeWarrior StarCore runsim –d sc140e SDMA

Diab/rtasim rtasim

EVP VD32040 vrun.bat

EVP VD32041 vrun.bat -tgt vd32041

$(VECTORCAST_DIR)DATA\tricore- HighTec TriCore gcc\simulator.bat

Green Hills 68000 grun s68 68881 -- Simulator

Green Hills ARM simarm Simulator

Green Hills Blackfin grun isimbf –X83 -- INTEGRITY Simulator

Green Hills ColdFire grun sim68 -cpu=cf547x -- Simulator

Green Hills ColdFire grun isimcf -X83 -- INTEGRITY Simulator

Green Hills MIPS simmips Simulator

Green Hills NEC 850 sim850 Simulator

Green Hills PPC INTEGRITY 178B grun isimppc -X83 ppc603 -- Simulator (C Static Link)

Green Hills PPC $(VECTORCAST_DIR)\IO\pty $(VECTORCAST_DIR) INTEGRITY 178B \IO\monitor_stdout grun isimppc -X83 ppc603 Simulator (C Monolith -- Link)

Green Hills PPC grun mpserv -setup W:\TARGET\00-ghs-map- INTEGRITY 178B A400 os\cca-147\cca-147.dbs 192.168.0.21 -- PPC Board VECTORCAST/RSP CONCEPTS 16

Compiler Execute command

Green Hills PPC grun mpserv -setup INTEGRITY MBX860 C:\GHS\int408\mbx800\mbx800_mp.dbs ghprobe mpserv --

Green Hills PPC INTEGRITY MBX860 rtserv -port udp@mbx860 -X8 -X14 rtserv

grun - Green Hills PPC Bare setup=C:\GHS\PPC423\target\ppc\mbx860\ MBX860 mpserv mpserv_standard.mbs mpserv ghprobe --

grun -setup= Green Hills PPC Bare C:\ghs\ppc423\target\ppc\core403\ hpserv_ PPC403 hpserv standard.mbs hpserv hpprobe --

grun mpserv -setup Green Hills PPC Bare C:\GHS\int408\mbx800\mbx800_mp.dbs ghprobe MBX860 mpserv (C++) --

Green Hills PPC INTEGRITY 178B grun isimppc -X83 ppc603 -- Simulator

Green Hills PPC rtserv -loaddir INTEGRITY (FAB-T C++) C:\tftpboot -port udp@fabtsil222 -X8 -X14

Green Hills PPC rtserv -port [email protected] INTEGRITY 82XX rtserv

Green Hills PPC grun isimppc -X83 –- INTEGRITY Simulator

Green Hills PPC $(VECTORCAST_DIR)\IO\pty INTEGRITY Simulator $(VECTORCAST_DIR)\IO\monitor_stdout isimppc (Monolith Link)

Green Hills PPC INTEGRITY Simulator grun isimppc -X83 -- (C++ static link)

Green Hills PPC INTEGRITY Simulator rtserv -port udp@localhost -X8 -X14 (C/C++ dynamic link) VECTORCAST/RSP CONCEPTS 17

Compiler Execute command

Green Hills INTEGRITY grun isimarm -X83 -- ARM Simulator (Static)

Green Hills INTEGRITY ARM Simulator rtserv -port udp@localhost -X8 -X14 (Dynamic)

Green Hills INTEGRITY grun -setup= ARM IMX31 mpserv C:\ghs\int508\imx31litekit\imx31litekit.mbs (C++) mpserv ghprobe --

Green Hills INTEGRITY ARM IMX31 rtserv rtserv -port udp@imx31 -X8 -X14 (C++)

Green Hills PPC simppc Simulator

Green Hills x86 grun simx86 -- Simulator

Green Hills x86 rtserv2 -port [email protected] -X8 -X14 INTEGRITY Safeplex

Mercury Computer PPC runmc –ce 2

MetaWare ARC 4.5 scarc -cl -run

MetaWare ARC 6.5.3 scarc -cl –run

Microchip MPLAB C30 for dsPIC (PIC30) & $(VECTORCAST_DIR)\DATA\pic\pic30_sim_c.bat PIC24 MCU

QNX Windows host on live x86 target

QNX Windows host on live SH target

QNX Windows host on $(VECTORCAST_DIR)\DATA\qnx\qnx_windows.bat live PowerPC target 192.168.2.171 root u: /home/vcast_files

QNX Windows host on live MIPS target

QNX Windows host on live ARM target VECTORCAST/RSP CONCEPTS 18

Compiler Execute command

QNX Linux host on live x86 target

QNX Linux host on live SH target sh $(VECTORCAST_DIR)DATA/qnx/qnx_linux.sh QNX Linux host on live 192.168.2.171 root /mnt/qnx/ /home/vcast_ PowerPC target files QNX Linux host on live MIPS target

QNX Linux host on live ARM target

TriMedia tmsim

Flags

The flag technique is used for more complex mechanisms that require VectorCAST customization. The current list of IO mechanism flags is as follows:

Compiler Flag

CodeWarrior DSP56800E <>

CodeWarrior HC12 S12XDT512 <>

CodeWarrior HC12 S12E128 <>

CodeWarrior HC12 SIM S12XDT512 <>

CodeWarrior HC12 S12XDP512 <>

CodeWarrior HC12 S12XEP100 EVB <>

CodeWarrior HC12 S12XEP100 IVY <>

CodeWarrior HC12 SIM S12XDP512 <>

CodeWarrior HC12 SIM S12E128 <>

<>

Cosmic 68HC12 <>

Cosmic 68HC12 Paged <>

Cosmic 68HC12 ICD <> VECTORCAST/RSP CONCEPTS 19

Compiler Flag

Cosmic 68HC12 ICD Paged <>

Cosmic S12X <>

Cosmic S12X Simulator <>

Diab/Single Step 68K <>

Diab/Single Step PPC <>

GNU Target PA-Semi <>

GNU ARM vxWorks <>

GNU MIPS vxWorks <>

GNU PPC vxWorks <>

GNU 68K vxWorks <>

GNU x86 vxWorks <>

Green Hills PPC vxWorks <>

Green Hills vxSim Win32 <>

Green Hills vxSim UNIX <>

Green Hills INTEGRITY ARM Civic Board (stdout) <>

Green Hills INTEGRITY ARM Civic Board (multi) <>

Hard Hat PPC <>

IAR 68HC12 1.x <>

IAR MSP430 1.x <>

IAR for ARM 7 version 3.x <>

IAR for ARM 7 version 5.x <>

IAR for ARM 9 version 3.x <>

IAR for ARM 9 version 4.x <>

IAR for ARM 9 version 5.x <>

IAR M16C 3.x <>

IAR M16C 3.x TGT <>

IAR M32C 2.x <> VECTORCAST/RSP CONCEPTS 20

Compiler Flag

IAR M32C 3.x <>

IAR MSP430 3.x <>

IAR MSP430 4.x <>

Microtec/Xray <>

Paradigm <>

Keil C166 <>

Keil C51 <>

Keil C51_TGT <>

NEC V850 f3359 <>

NEC V850 f3378 <>

Paradigm C++ <>

Paradigm SC520 <>

Renesas M16C 3.x <>

SCORE Target 2.4 <>

SCORE Target <>

SCORE c3x4x <>

ST ST-20 <>

Tasking 56K <>

Tasking C166 Classic <>

Tasking 68K <>

Tasking 8051 <>

TI Code Composer 3.3 F2812 DSP ezDSP <>

TI Code Composer 3.3 F28XX DSP C2000 <>

TI Code Composer 3.3 F2407 DSP <>

TI Code Composer 3.3 DSP C55xx <>

TI Code Composer 3.3 DSP C64xx <>

VisualDSP++ ADSP-21xx <>

VisualDSP++ Blackfin <> VECTORCAST/RSP CONCEPTS 21

Compiler Flag

VisualDSP++ TigerSHARC <>

Visual DSP++ (2.0) <

vxSim Unix <>

vxSim Win32 (Tornado 2.0) <>

vxSim Win32 (Tornado 2.20) <>

vxSim Win32 (Tornado 2.21) <>

vxSim Win32 (Tornado 3.x) <>

Diab vxWorks 6.x <>

vxSim (Workbench) <>

vxSim rtp (Workbench) <>

vxSim 653 v1.8 Win32 <>

PPC vxWorks 653 v1.8 Win32 <>

vxSim 653 v2.1 Win32 <>

PPC vxWorks 653 v2.1 Win32 <>

PPC vxWorks 653 v2.2 vxSim <>

PPC vxWorks 653 v2.2 SBC <>

PPC vxWorks PSC v2.2 <>

Each compiler that is supported by VectorCAST has a default I/O mechanism. For instance, the Texas Instruments TMS320 compiler uses Code Composer as its default mechanism. You may override this default by choosing a different “Execute Command” from the list of available commands, or typing in the command string that should be used to execute the target program.

Execution Methods

The following execution methods can be used with any compiler:

Execution Method Flag

Execute via Remote Shell <>

Execute via Secure Shell <>

Execute via Standard IO <>

Execute via Standard Out <> Using VectorCAST/RSP INTRODUCTION 23

Introduction

The VectorCAST/RSP product allows you to use all of the VectorCAST functionality on an embedded target, emulator or simulator. The steps involved in creating a VectorCAST environment for target testing are exactly the same as for host testing. You specify the compiler and target in the Tools => Options dialog. When creating a target environment make sure that the directories entered into the Search List contain cross-compiled code for your target.

After the environment is created, VectorCAST must interact with the target (or simulator) in order to populate a VectorCAST database with target-specific information such as type ranges and sizes of storage units, and information on type ranges on the target and other target specific information. For each compiler and RTOS this is slightly different.

Note: VectorCAST will invoke the target two separate times to retrieve target-specific data.

The speed at which a test case runs on the target is based the amount of processing done by the code under test and on the amount of data that you ask VectorCAST to capture to the test results. A way to decrease the amount of data captured is to turn off the Expand Report Parameters and Expand Report Objects options in the Tools => Options dialog box, Execute tab. Combining Host- and Target-based Testing

If you are doing both Host- and Target-based testing, you should use different directories to store your VectorCAST/C and VectorCAST/RSP directories. All instances of VectorCAST that are started from the same directory will share the same configuration file (CCAST_.CFG). If you run the target product and the host product from the same directory, options saved for the target environments will over-write the options saved from the host environment, which may not be desirable. CLICAST - Command Line VectorCAST QuickStart

The following is a list of useful commands to get online CLICAST help. Each command is preceded by $VECTORCAST_DIR/ (Unix) or %VECTORCAST_DIR%\ (Windows).

To see a list of all commands, type:

clicast -lc help all

To see a list of categories, type:

clicast -lc help

To see a list of commands in a single category, type:

clicast -lc help

where is one of the following: CLICAST - COMMAND LINE VECTORCAST 24

l ENvironment (or just “EN”)

l EXecute

l Report

l TEst

l TOol

l Option

l Get_option

l Language

l Cover

To see a list of all options, type:

clicast –lc help options all

To see a list of option categories, type:

clicast –lc help options

To see a list of options in a single category, type:

clicast –lc help options

where is one of the following:

l Language

l Builder

l Execute

l Report

l Target

l Coverage

l Prqa

To find out the value of an option, type:

clicast –lc get_option

In this manual, the VectorCAST/RSP User’s Guide, only the Target Options are listed. See the VectorCAST/C++ User’s Guide for a complete description of commands and other options. Command Format

CLICAST is invoked using the following syntax: CLICAST - COMMAND LINE VECTORCAST 25

Unix systems:

$VECTORCAST_DIR/clicast –lc –eenv –uunit –ssub –ttestcase command arguments

Windows systems:

%VECTORCAST_DIR%\clicast /l:C /e:env /u:unit /s:sub /t:testcase command arguments where env is the name of the environment, unit is the name of a unit under test, sub is the name of a subprogram, and testcase is the name of a testcase. If the environment has only one UUT, then -u unit is optional.

Throughout this User Guide, the corresponding CLICAST command is presented after each feature or option available in the VectorCAST application. The CLICAST command uses the following format:

clicast -lc -e command | option arguments

Description of the command, option, and arguments.

The following conventions are used:

l -lc indicates that VectorCAST/C++ should be used. If -lc is not present, CLICAST defaults to VectorCAST/Ada. If the command contains -e then -lc is not necessary.

l The vertical bar | stands for “or”, indicating that one of several choices is to be included in the command.

l Square brackets around a parameter indicate that a parameter is optional. For example, -e [-u ] indicates that the environment name must be specified, but the unit name can optionally be specified on the command line.

l Angle brackets indicate that a source file name or script file name must be substituted. For example, indicates that an output file name must be provided.

l Square brackets and angle brackets can be combined to indicate that a substitution is optional. For example, [] indicates that if the optional output filename is not present, standard output is used.

l Capital letters in a command name indicate the minimum that needs to be typed to uniquely identify the command. For example, clicast ENvironment Build indicates that the abbreviated command clicast EN B can be used.

To specify <> or <> as the subprogram or when used in a testcase name, enclose the name in quotes, as in:

clicast –lc -e DM6B -s "<>" -t “<>.001” exec run CLICAST - COMMAND LINE VECTORCAST 26

The C/C++ Options

Once VectorCAST is running, you should select the Tools => Options from the main menu to bring up the Options dialog. The C/C++ tab contains options that enable you to configure the interface between VectorCAST and the compiler.

Each compiler and target has a separate entry in the compiler templates list. By pulling down on this list you can select from the available target and host compilers, and the appropriate execute command.

The “Execute Command” option controls how VectorCAST interfaces with your specific compiler and target. This field is set to the correct value for the specific compiler you are using and you should not have to change this setting.

l If you are building an environment with C source code files, choose a template name ending with “C”. Example: GNU Native => 3.3 => C

l If you are building an environment with C++ source files (or a mixture of C++ and C files), choose a template name ending with “C++”. Example: GNU Native => 3.3 => C++

clicast -lc template