making symbian development easier with fshell: a console environment for the symbian platform

13
1 Making Symbian Development Easier Introducing fshell: A Console Environment for the Symbian Platform Tom Sutcliffe Accenture Embedded Software Services

Upload: see2010-platform-developer-track

Post on 10-Apr-2018

222 views

Category:

Documents


0 download

TRANSCRIPT

8/8/2019 Making Symbian Development Easier with FShell: A Console Environment for the Symbian Platform

http://slidepdf.com/reader/full/making-symbian-development-easier-with-fshell-a-console-environment-for-the 1/13

1

Making Symbian Development Easier

Introducing fshell: A Console

Environment for the Symbian Platform

Tom Sutcliffe

Accenture Embedded Software Services

8/8/2019 Making Symbian Development Easier with FShell: A Console Environment for the Symbian Platform

http://slidepdf.com/reader/full/making-symbian-development-easier-with-fshell-a-console-environment-for-the 2/13

Copyright © 2010 Accenture All Rights Reserved. Accenture, its logo, and High Performance Delivered are trademarks of Accenture.

8/8/2019 Making Symbian Development Easier with FShell: A Console Environment for the Symbian Platform

http://slidepdf.com/reader/full/making-symbian-development-easier-with-fshell-a-console-environment-for-the 3/13

What is fshell?

•An interactive command-line shell for SymbianOS

•Supporting remote connections to the device

•Plus a suite of command-line tools

3 © 2010 Accenture All Rights Reserved.

8/8/2019 Making Symbian Development Easier with FShell: A Console Environment for the Symbian Platform

http://slidepdf.com/reader/full/making-symbian-development-easier-with-fshell-a-console-environment-for-the 4/13

Why should I care?

(As a developer, that is!)

•Command lines are quicker to debug on, and

work with, than GUIs

•Doing it remotely from your PC is quicker still

•All the included tools are really useful

4 © 2010 Accenture All Rights Reserved.

8/8/2019 Making Symbian Development Easier with FShell: A Console Environment for the Symbian Platform

http://slidepdf.com/reader/full/making-symbian-development-easier-with-fshell-a-console-environment-for-the 5/13

Dependencies, Dependencies,Dependencies!

•The more you have...

...the more difficult things become

•Fshell has very few fixed dependencies• Meaning it can work on almost any setup

• Production handset, prototype, textshell dev board...

5 © 2010 Accenture All Rights Reserved.

8/8/2019 Making Symbian Development Easier with FShell: A Console Environment for the Symbian Platform

http://slidepdf.com/reader/full/making-symbian-development-easier-with-fshell-a-console-environment-for-the 6/13

8/8/2019 Making Symbian Development Easier with FShell: A Console Environment for the Symbian Platform

http://slidepdf.com/reader/full/making-symbian-development-easier-with-fshell-a-console-environment-for-the 7/13

7

Demo

8/8/2019 Making Symbian Development Easier with FShell: A Console Environment for the Symbian Platform

http://slidepdf.com/reader/full/making-symbian-development-easier-with-fshell-a-console-environment-for-the 8/13

Examples (2) - ECOM

# Test if ECOM can load itc:\>ecom create 0x12345678

Error: Couldn't instantiate plugin 0x12345678 : KErrNotFound (-1)

# Try loading the DLL manually, see if it's a

# linkage problem or an ECOM-specific problem c:\>load myplugin.dll

Error: Unable to load "myplugin.dll" : KErrNotFound (-1)

# See if chkdeps reports any DLL dependencies missing

c:\>chkdeps c:\sys\bin\myplugin.dll

 Number of dependencies checked = 10

2: mymissingdependency.dll Uid3: [12340000] --- File was not found 

8 © 2010 Accenture All Rights Reserved.

8/8/2019 Making Symbian Development Easier with FShell: A Console Environment for the Symbian Platform

http://slidepdf.com/reader/full/making-symbian-development-easier-with-fshell-a-console-environment-for-the 9/13

Tips & Tricks (1) - ymodem

•The „ymodem‟ command can be used to uploadnew code live onto the device

(PlatSec permitting! Also some other caveats)

c:\>ymodem receive --overwrite c:\sys\bin\

Please start the file transfer in your terminal...

Successfully received "c:\sys\bin\myapp.exe".

c:\> 

c:\>kill --match myapp*

Killed myapp.exe[e0286b46]0001 (id=388) with 0

c:\>myapp.exe &

9 © 2010 Accenture All Rights Reserved.

8/8/2019 Making Symbian Development Easier with FShell: A Console Environment for the Symbian Platform

http://slidepdf.com/reader/full/making-symbian-development-easier-with-fshell-a-console-environment-for-the 10/13

Tips & Tricks (2) - Scripting

•Fshell supports scripting, to automate repetitivetasks

•Syntax is fairly similar to DOS or sh

•Decent error handling, environment variables,conditional execution...

•The fshell smoke tests themselves are written

as fshell scripts• As is Autometric

10 © 2010 Accenture All Rights Reserved.

8/8/2019 Making Symbian Development Easier with FShell: A Console Environment for the Symbian Platform

http://slidepdf.com/reader/full/making-symbian-development-easier-with-fshell-a-console-environment-for-the 11/13

Writing fshell-based tools

•Very quick to develop new command-line apps• For anything from a quick hack or test app, to additions to the

fshell tool suite itself

•Example: the “showdebug” command

• Writing code for initial version: 23 minutes

• Adding to build system, compilation errors etc: 8 mins

• Deploying to device & running for first time: 1 minute

11 © 2010 Accenture All Rights Reserved.

8/8/2019 Making Symbian Development Easier with FShell: A Console Environment for the Symbian Platform

http://slidepdf.com/reader/full/making-symbian-development-easier-with-fshell-a-console-environment-for-the 12/13

For more information

http://developer.symbian.org/wiki/index.php/Fshell

Forums Kernel and Hardware Adaptation

12 © 2010 Accenture All Rights Reserved.

8/8/2019 Making Symbian Development Easier with FShell: A Console Environment for the Symbian Platform

http://slidepdf.com/reader/full/making-symbian-development-easier-with-fshell-a-console-environment-for-the 13/13

13