A single development machine can have multiple Symbian OS development
kits installed. The devices
command allows you to specify which
Symbian OS device to develop for, and configures the required environment
settings according. The command was introduced at v7.0. You need to set a
device using the commands explained below in order to use the build and other
tools.
A single kit can itself have an emulator and tools for more than one type
of Symbian OS phone\device. A device in a particular kit can therefore be fully
specified with an identifier in the form
kitname:devicename. You can get a list of
all the installed devices by just using the devices
command
without any switches.
Because the kitname:devicename form
can be quite long, the devices
command, for convenience, also
allows you to choose an alias name for the device.
There are a number of levels at which you can set the device that you want to work with.
default: the default device is assumed for the current session, and for all new sessions, unless you specify otherwise. To set the default device, use the command:
> devices -setdefault
@device-identifier
per session override: you can change the device used in
a particular Windows Command Prompt session by setting in that session the
environment variable EPOCDEVICE
to the device to use, i.e.
> set
EPOCDEVICE=device-identifier
per command override: you can override both the default
and per session setting for a particular command by specifying the device
(prefixed by an @
character) as part of the normal command
parameters. For example,
> bldmake bldfiles
@device-identifier
The following command-line session:
lists the available devices
creates an alias tview
for the device
os7.00604:com.symbian.techview
sets the default device to be tview
displays the default device (confirming what has just been set)
C:\>devices
os7.00604:com.symbian.techview
C:\>devices -setalias tview @os7.00604:com.symbian.techview
C:\>devices -setdefault @tview
C:\>devices -default
Default device: os7.00604:com.symbian.techview (alias tview)
EPOCROOT
compatibility
Previous to v7.0, the active development kit was set by the user setting
the environment variable EPOCROOT
. You no longer have to do this:
EPOCROOT
is set automatically, based on the default device setting
and any specified overrides.
If EPOCROOT
is set by the user, the tools stub will not
override it with the default device's EPOCROOT
setting. However,
the tools stub will continue to use the default device to locate the tool. If
the user wishes to override the current device, they can use the
EPOCDEVICE
environment variable, or specify the device name (or
alias) on each command in the form of an '@device
' parameter.
Only v7.0 and later kits automatically update the device list when they
are installed. If you also want to use the devices
command to
manage earlier kits, you can add them to the list yourself using the command
devices -add
, specifying the location of the kit's
epoc32\
(the directory that contains the release\
sub-directory) and epoc32\tools\
directories.
For example, the following command adds a v6.0 SDK which has its
epoc32
tree at C:\symbian\6.0\nokiacpp\
, and its
epoc32\tools
tree at C:\symbian\6.0\shared\
.
> devices -add C:\symbian\6.0\nokiacpp\ C:\symbian\6.0\shared\
@v60:com.nokia.cpp
The device identifier (here v60:com.nokia.cpp
) should be
descriptive of the kit, but doesn't have to correspond to a particular
directory name.
Use of the devices
command is supported for all kits from
v6.0.
CodeWarrior is aware of the devices information, and will query you at appropriate times for the device kit to use. Note that in order for CodeWarrior to detect the device, the device-name part of the identifier must be of the form com.name.name.