Python no Z6
-
Upload
henrique-pereira -
Category
Technology
-
view
2.263 -
download
5
description
Transcript of Python no Z6
Python no Motorola Z6
Henrique G. G. [email protected]
Sobre a apresentação● Nível: Intermediário● Escopo:
● Python em celulares● Celulares Motorola rodando Linux● Port do Python para celulares Motorola Z6
● Pré-Requisitos:● Nenhum
● Processos de Compilação
O que é Python?● Altíssimo Nível● Interpretada● Multiplataforma
● Windows, Linux, Mac, BSD, Symbian● Multidispositivo● Python Software Foundation License
● Compatível com a GPL
Por que Python?● Desenvolvedores ativos● Poderosa
● Biblioteca padrão muito boa● Simples
● Comandos fáceis de memorizar● Boa aceitação
Python em Celulares● Smartphones com Windows● Iphone● Palm OS
● Versão 1.5● Nokia
● Python for Series 60
Python for Series 60● Symbian OS● Baseado no Python 2.2.2● Mantido pela Nokia
● Desenvolvido pela Nokia● Open Source● http://opensource.nokia.com/projects/pythonfors60/
Python for Series 60● Comunidade Ativa● Eventos Internacionais
● Forum Nokia● Nokia CodeCamp
● Integração total com o celular● Padrão de desenvolvimento
Motorola● Fundada em 1928
● Rádios para carros● Hoje em dia
● Equipamentos de Telecomunicação● Walk-talkies, Radios● Celulares
● Celulares que rodam Linux!!!
Motorola + Linux● LiMo Foundation
● Criar um sistema aberto para celulares● Baseado em Linux● Motorola, NEC, Samsung, LG, Ericson
● OpenSource● http://opensource.motorola.com
MOTOMAGX™● Plataforma Linux da Motorola● 1ª Geração
● A728, A760, A768, A780, E680, E680i, E680g● 2ª Geração
● A910, A1200, Rokr E2, Rokr E6, A810● 3ª Geração
● Rokr E8, Rokr Z6, Razr2 V8, i876, U9, A1600, A1800
MOTOMAGX™● 3 ambientes de programação
● Java ME (1ª geração)● WebUI (2ª geração)● Linux (3ª geração)
● QT!
MOTOMAGX™
MOTOROKR Z6● Processador ARM● GSM● MiniUSB / Bluetooth● 64MB memória on-board● Java● Linux 2.6.10
● QtLite
Portando o Python!● Motivações● Por onde começar?● Problemas● Funciona, e agora?● Trabalhos Futuros
Motivações● Meu celular rodar Linux● Python roda em qualquer lugar● Python é OpenSource● Vou fazer meu celular rodar Python!
Por onde começar?● Baixar os fontes
● Python 2.5● Compilar os fontes
● Z6 não tem compilador● Cross-compilar no pc e mover pro Z6
● MotoDev Studio
MOTODEV Studio for Linux● Desenvolver aplicações nativas
● C/C++● IDE baseada no Eclipse● Máquina Virtual● Toolchain específico
Cross-Compilando● Complicado
● Python usa o próprio binário pra compilar e instalar alguns módulos
● binário pra arm não funciona em x86● Python tenta importar módulos compilados
● muitos erros● Módulos desaparecidos
● Necessidade de alterar a maneira como a compilação é executada
Compilou, e agora?● Testar na máquina virtual
● Verificar o que deu errado● Corrigir e recompilar
● Tudo funciona Ok!
● Enviar pro celular● Cartão MicroSD
Problemas● Como rodar o Python?
● Instalando e rodando● Como instalar o Python?
● Direto no shell● Mas cadê ele?
O primeiro problema● Como instalar?
● Assinatura Digital● $$$
● Certificação● $$$
● Open EZX● G1 e G2
O problema da shell● Modding
● MP LinuxMod● Bash, Telnet, FTP
● Outras coisinhas legais
● MP Power of Linux● Shell, Telnet
Soluções Atuais● Rodando via Telnet
● Precisa de outro computador● Mostrar pra outras pessoas
Soluções Atuais● Rodando pelo Bash
● Roda no celular● Complicado
● Teclas pequenas demais
Problemas (ainda) Sem Solução● Threads● Interface Gráfica
● API meia-boca
Trabalhos Futuros● Distribuição
● Versão Pública● Acesso● Interface Gráfica
● Bindings pro Qt● Camera
Dúvidas?Sugestões?
Henr“Ikke” G. G. [email protected]