Este documento introduce al lector al SDK Nokia Series 60 y C++, explicando
cómo instalar los programas y su configuración y uso para crear aplicaciones
para las Series 60 de Nokia.
El SDK sirve para los teléfonos 7650, 3650 y N-Gage de Nokia, así como otros
modelos como Siemens SX1 y Nokia 6600.
Primero instala el SDK, es aconsejable que se mantengan las opciones por
defecto, si por alguna razón prefieres cambiarlas, asegúrate que:
Necesita unos 700 MB libres, además del Java y Perl. El "Nokia Add-on"
incorpora la barra de herramientas y menús para crear e importar areas de trabajo, y
facilitar el trabajo con ellos.
El programa funciona como lo haría normalmente, con la excepción del Add-on
de Nokia, y unas pequeñas limitaciones debido a que ciertas herramientas están
deshabilitadas: Debugger, Object Inspector y Object TreeView. Es necesario
actualizar a la versión Pro o Enterprise para disponer de ellas. Esto hace que si
un programador esta acostumbrado a usar el debugger, entonces el programa
Borland no es mucho más que un editor de textos avanzado configurado para usar
el compilador de ARM y el emulador del SDK.
La ventaja que tiene es que es un IDE gratis y que no es necesario acudir a
la línea de comandos para compilar los programas.
Primero instala Visual Studio C++ 6.0, que necesita tener también instalado
el Service Pack 3.
El SDK trae una serie de herramientas que facilitaran la tarea de compilar y
ejecutar los programas que desarrollemos:
- Application Wizard
Incorpora un nuevo asistente que ayudará al
programador a generar nuevas areas de trabajo en el Visual Studio C++. Ve al
directorio “C:\Symbian\6.1\Series60Tools\ApplicationWizard” y copia los archivos .awx y .hlp en el
directorio de platillas del VC++ “C:\Archivos de programa\Microsoft Visual
Studio\Common\MsDev98\Template”
- Epoc Toolbar
Copia del directorio “C:\Symbian\6.1\Series60Tools\EpocToolbar” los
archivos .dll al direcotio “C:\Archivos de programa\Microsoft Visual
Studio\Common\MsDev98\Addins”. Arranca VC++ y selecciona Tools -> Customize
de la barra de menú. Entonces pulsa en la pestaña “Add-ins and Macro Files” y
marca el cuadro próximo a “Epoc Toolbar Add-in”. Cierra el dialogo y una nueva
barra de herramientas aparecerá en el VC++.
- Menú de contexto para ficheros .mmp
Añade opciones extras cuando
se pulsa con el botón derecho del ratón sobre archivos .mmp
En la línea
de comando ve al directorio “C:\Symbian\6.1\Series60Tools\MmpClick" y alli ejecuta el
siguiente comando: “regsvr32 mmpclick.dll“. Si se quiere desinstalar ejecutar el
comando: “regsvr32 /u mmpclick.dll”. Para instalar nuevas versiones, simplemente
sobrescribe el archivo antiguo con el nuevo.
Me atrevo a afirmar que este
programa es compatible con el Kit de Borland, aunque no lo he
probado.
Las opciones en el menu son: Build for armi: compilar para el
móviil
· Build for wins (deb): compilar para el
emulador (modo debug)
· Build for wins (rel):
compilar para el emulador (modo release)
· Create VC
Workspace: crear "WorkSpace" para VC++
· Open VC
Workspace: abrir el "WorSpace" vinculado a este .mmp
Usando la línea de comando para compilar programas
Normalmente, el código fuente dispondrá de los siguientes directorios:
Group contiene los archivos usados para la compilación del programa, Src
tiene los fuentes del programa e Inc las librerías.
Ve al directorio Group. Debería haber 3 archivos, .inf que contiene los
archivos .mmp que se van a usar, .mmp tiene los fuentes del programa y rss
especifica los recursos a usar.
Ejecuta el comando “bldmake bldfiles”. Esto creare el archivo
ABLD.BAT que usaremos para compilar el programa o crear los ficheros
necesarios para usar el VC++ con nuestro programa y compilarlo a través de
él.
Para crear el “workspace” para VC++ ejecuta “abld makefile VC6”. Si el
directorio Group se encuentra dentro del directorio “prog”, los archivos .dsw y
.dsp del “workspace” serán creados en
“C:\Symbian\6.1\Series60\Epoc32\BUILD\SYMBIAN\PROGS\prog\GROUP\prog\WINS\"
Ahora se puede compilar el programa desde VC++
Si se quiere compilar el programa desde la línea de comando, en vez de crear
los archivos para VC++, se ejecuta “abld build wins udeb”. Udeb (unicode
debug) indica que se compila para el emulador en modo “debug”, urel (unicode
release) se usa para el modo “release”, aunque es más normal usar el modo
“debug”. Unicode permite procesar caracteres especiales.
Una vez compilador, ejecuta el SDK y el programa debería estar en la pantalla
principal.
Para crear los archivos que funcionaran en el mobil hay varias opciones. Esto
es debido a que el procesador que viene con el telefono (www.arm.com) puede ser de 32 bits (ARM4) o de 16
bits (THUMB).
"abld build thumb urel" compila para THUMB y "abld build arm4
urel" para ARM4. Los programas THUMB son mas pequeños, y los ARM4 son mas
rapidos. En cualquier caso, en un procesador de 16 bits el programa THUMB seria
mas rapido que el ARM4, ya que esta especialmente preparado para ese tipo de
procesadores.
A pesar de esas opciones, es especialmente recomendable compilar usando la
opcion “abld build armi urel” ARMI (ARM Intermediate) soporta ambos THUMB
y ARM4 tipos.
Si compilamos con ARMI, el fichero .pkg generado con VC++ no encontrara los
archivos y sera necesario modificarlo a mano, caso contrario que si compilamos
con THUMB.
“cshlpcmp name.xml” que general un fichero de ayuda a partir de un
archivo .xml
Ejecutar el programa desde VC++
Se puede ejecutar el programa desde VC++ una vez compilado. Si se ejecuta en
modo debug, VC++ preguntará que ejecutable abrir, inserta allí el ejecutable del
emulador “C:\Symbian\6.1\Series60\Epoc32\Release\wins\UDEB\EPOC.EXE”.
Libros y enlaces recomendados:
- Programming for the Series 60 Platform and Symbian OS, Author: Digia, Editorial: Symbian Press
- Symbian OS C++ for Mobile Phones, Autor: Richard Harrison, Editorial: Symbian Press
- Symbian OS Communications Programming, Autor: Michael J Jipping, Editorial: Symbian Press
- Professional Symbian Programming: Mobile solutions on the EPOC platform, Autores: Martin Tasker, Jonathan Allin, Jonathan Dixon, Mark Shackman, Tim Richardson, John Forrest, Editorial: Wrox Press
- página web de Symbian para desarrolladores
- Newsgroup Symbian C++
- foro sobre programacion C++ en Symbian
- páginas de Nokia sobre programacion
Autor:
Juan de Miguel Hernández
chili_fi
Si has encontrado algo incorrecto o con lo que no estás de acuerdo
puedes ponerte en contacto con el autor o con Todo Symbian. Tu contribución será
bienvenida.
Opina en el foro
sobre este reportaje.
¿Te ha sido de utilidad? Vota por Todo Symbian en GSMspain
TOPSites, tan sólo te tomará un minuto.