qmake template
Escrever um buildsystem é sempre o primeiro passo (e algumas vezes o mais chato) ao começar um novo projeto de software. O Qt provê uma ferramenta própria para fazer com que uma única árvore de código possa ser compilada em todas as plataformas suportadas: o qmake. Ao invés de criar um projeto do qmake do zero para seu novo projeto, este template tem como objetivo lhe fornecer uma base sólida para seu buildsystem, atendendo a alguns requisitos básicos:
Shadow build – Chega de repositórios sujos após uma compilação. Compilar seu código dentro do repositório é opcional, você precisa apenas criar um diretório qualquer fora da sua árvore e chamar o script de configuração do seu projeto (configure). Existem várias situações onde isto é especialmente necessário: compilar a mesma árvore de código para diferentes plataformas ou quando seu código fonte está localizado em um storage lento (como um compartilhamento de rede ou uma partição criptografada).
Integração com testes automatizados – Desenvolvimento orientado a testes tem sido cada vez mais comum e provou ser uma importante ferramenta para detectar regressões. Este template provê mais do que um modo fácil de rodar seus testes (digitando “make check”), mas um relatório gráfico mostrando quão abrangentes seus testes são usando LCOV.
Documentação de código – Desenvolvedores em geral são preguiçosos se tratando de escrever documentos, a não ser que você lhes dê uma forma fácil de ver o o belo resultado de uma documentação bem escrita. Após digitar “make doc”, uma página HTML é automaticamente gerada agrupando toda a informação extraídas dos markups qdoc3 do seu código fonte. Compare os resultados com o código original.
Internacionalização – Um buildsystem moderno precisa prover um jeito fácil para os tradutores atualizarem os arquivos de tradução. Precisamos ter em mente que tradutores não são necessariamente desenvolvedores e eles podem não gostar de ter que vasculhar o código fonte em busca de strings para tradução. Este template fornece uma integração com lupdate e lrelease – ferramentas i18n do Qt – criando todos os aquivos .ts necessários ao Qt Linguist.
Fácil depuração – É meio óbvio que um buildsystem também deve gerar uma versão do software especial para depuração. Você também não precisa instalar esta versão no sistema para fazer testes (pelo menos no Linux).
Empacotamento – Seu software precisa ser de fácil distribuição. Adicionamos o suporte a empacotamento para Debian como exemplo neste template para demonstrar como é fácil fazer um pacote baseado neste buildsystem. Alguém anima contribuir com o empacotamento RPM?
Considerações finais
Só fiz testes deste template no Linux. Infelizmente algumas features só vão funcionar se você estiver usando GCC, como por exemplo a cobertura de código dos testes automatizados.
A última versão para download está disponível aqui. Você também pode navegar pelo repositório git do template. Lembre-se: patches e sugestões são sempre bem-vindos.
Mais instruções de uso (em inglês) no aquivo BUILD.
Em: artigo, desenvolvimento, en, nerd, pt_br · Com as tags: buildsystem, qmake, qt
Ovi Maps 3
Recentemente fiz uma viagem de moto partindo de Porto Velho – RO com destino a Belo Horizonte – MG. Durante a viagem, usei extensivamente meu celular Nokia N85, principalmente o GPS embutido do mesmo. Resolvi escrever sobre a aplicação de maps, porque muita gente potencialmente tem acesso a ela (já tem o celular com GPS embutido) e não se deu conta de quão útil é.
Instalar a aplicação no celular é um parto, o que pode ser o motivo de tanta gente não dar a mínima para os mapinhas. O N85 vem com a versão 2.X que é bem inferior e para atualizar, foi necessário fazer uma série de downloads de lugares diversos. Um amigo com um N95 mais antigo chegou a ter que atualizar o firmware do celular por causa de um erro de certificado ao instalar a nova versão do Ovi Maps.
- Nokia PC Suite (instala drivers para reconhecer o celular, Windows apenas)
- Nokia Maps Updater (atualiza a versão do seu Nokia Maps)
- Nokia Maps Loader (atualiza/baixa os mapas e vozes para navegação offline)
- Nokia Software Updater (caso seja necessário atualizar o firmware)
Após tudo instalado e funcionando, uma bela surpresa. O meu celular veio com uma licença de navegação por voz gratuita de 180 dias. Sem esta licença, o programa serve apenas para localização e perde sua principal função.
A Nokia liberou gratuitamente a navegação por voz para os modelos mais novos de celular e há rumores que vai fazer o mesmo para os mais antigos. Até lá, no caso de comprar a navegação para a América Latina, os preços são R$25,99 / ano ou R$7,69 / mês. Você compra pelo próprio celular usando um cartão de crédito. O mais engraçado é que semana passada, estava custando ~R$140,00. Considero o preço atual bastante atrativo.
Atenção: A licença é atrelada ao SIM Card, portanto não invente de ficar trocando de chip a todo momento e usando o Ovi Maps. Use sempre com o mesmo chip para não perder a licença (como aconteceu comigo).
Durante minha viagem, testei o software em diversas cidades – pequenas e grandes – com sucesso. Os mapas estão atualizados e o GPS é bem preciso. A única cidade que não funcionou tão bem foi Brasília, que devido ao confuso sintema de nomenclatura de ruas, é difícil localizar um endereço sem ser pelo CEP.
Como estava de moto, utilizei um fone de ouvido e escutava apenas a mulher falando (em bom e claro português do Brasil), para virar à esquerda, retornar, etc. Já depois, de carro em Belo Horizonte, podendo olhar para o celular, se mostrou ainda mais eficaz.
Dicas:
- Pareie o GPS com o veículo parado, costuma ser mais rápido.
- Salve os pontos de interesse previamente. Serve também para se ter uma noção rápida da distância linear até o ponto. Exemplo: Qual restaurante vou? Na lista de pontos salvos, vai aparecer ordenado por proximidade ao lado distância linear até cada item.
- Use senha de acesso ao celular. Sem ela, em caso de roubo, o ladrão poderá ver nos pontos de interesse salvos algo como: “Casa” ou “Trabalho”.
- Compre um suporte Ching Ling™, facilmente encontrado no seu muambeiro predileto.
- Ande sempre com o carregador de bateria veicular.
- Para quem tem apenas Linux instalado, dá para fazer todo o processo pelo Windows via VirtualBox. Só não consegui (e não recomendo) atualizar o firmware. Achei inclusive que tinha “brickado” o celular.

Suporte chinês: vintão
Em: nerd, pt_br · Com as tags: gps, mobile, nokia, review
Edimax 3G-6200Wg
Faz um tempo que estou usando uma conexão 3G da Claro, que tem funcionado incrivelmente bem, inclusive na zona rural. O inconveniente disso é que quando o modem está em casa (95% do tempo), todo mundo quer pegar uma carona.
Inicialmente compartilhava ligando meu notebook a um roteador wireless convencional, fazendo o papel do “provedor”. O ruim disso é que toda hora que alguém quer usar a internet, tenho que fazer o setup deste ambiente manualmente.
Pesquisando sobre os roteadores wireless com suporte a compartilhamento de internet 3G disponíveis no mercado brasileiro, concluí o seguinte:
- São bem mais caros que os convencionais, à partir de R$ 450,00 em média.
- Nenhum vem com o modem embutido. Você deve ter um modem 3G para espetar na entrada USB do roteador.
- Os roteadores suportam um número limitado de modelos e marcas de modem 3G.
Lendo reviews estrangeiras, analisando preços e contanto com a sorte, resolvi comprar o Edimax 3G-6200Wg, que na época saiu por R$ 340,00 (Sedex incluso).

Edimax 3G-6200Wg
Após 3 meses de uso, seguem minhas impressões positivas e negativas a respeito deste hardware:
- Preço abaixo da média de mercado, o que costuma ser o principal diferencial.
- Duas entradas USB, sendo que uma para o modem 3G e outra para impressora. Testei o servidor de impressão com uma HP Deskjet 3535 e funcionou beleza.
- Suporta boa parte dos modems vendidos no Brasil. Para uma lista completa, acesse o site da Edimax. Se seu modem está na lista, mas não funciona, provável que você tenha que atualizar o firmware.
- Failover – se você tiver duas conexões (3G e ADSL), você define qual é a primária e se ela cair, ele alterna automaticamente para a secundária. Não testei este recurso mas li relatos que funciona bem.
- A interface de configuração é meio feia (e não suporta HTTPS), mas tem todos os recursos oferecidos pelos principais roteadores do mercado, como QoS, MAC Filter, Port Fowarding, etc.
- Achei o alcance do sinal fraco, quando comparado ao Linksys WRT54G (que tem duas antenas).
- Estou tendo que reiniciar o roteador quinzenalmente para restabelecer a conexão com a Internet. Não posso dizer com certeza se o problema é nele ou no modem.
Comprei o meu na BrTek, que me entregou na porta de casa dois dias após a confirmação do pagamento. Minha avaliação final é positiva, meu roteador tem resolvido o problema até então.
Em: nerd, pt_br · Com as tags: 3g, hardware, review, wireless





