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

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

Apr 10, 2018

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Making Symbian Development Easier with FShell: A Console Environment for the Symbian Platform

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

Page 2: Making Symbian Development Easier with FShell: A Console Environment for the Symbian Platform

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.

Page 3: Making Symbian Development Easier with FShell: A Console Environment for the Symbian Platform

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.

Page 4: Making Symbian Development Easier with FShell: A Console Environment for the Symbian Platform

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.

Page 5: Making Symbian Development Easier with FShell: A Console Environment for the Symbian Platform

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.

Page 6: Making Symbian Development Easier with FShell: A Console Environment for the Symbian Platform

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

Page 7: Making Symbian Development Easier with FShell: A Console Environment for the Symbian Platform

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

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

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.

Page 9: Making Symbian Development Easier with FShell: A Console Environment for the Symbian Platform

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.

Page 10: Making Symbian Development Easier with FShell: A Console Environment for the Symbian Platform

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.

Page 11: Making Symbian Development Easier with FShell: A Console Environment for the Symbian Platform

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.

Page 12: Making Symbian Development Easier with FShell: A Console Environment for the Symbian Platform

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.

Page 13: Making Symbian Development Easier with FShell: A Console Environment for the Symbian Platform

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