Older blog entries for marcioandreyoliveira (starting at number 84)

Ubuntu package


Yesterday I did something I should have done long ago: I created a package for Ubuntu.

In theory it would be just a matter of download the sources and execute the magical commands (./Configure, make and make install).

In practice, for those who just want to use the program, it is very boring and difficult, because the user will have to install each of the development libraries (eg, libgtk +2.0-dev) and their dependencies.

Some time ago a User (which now I think I can call a friend) was trying to compile the GMouseTool and found out several problems (mostly my fault).

He reported me all problems he was facing to compile GMouseTool and I tried to fix them.

I thought it was an absurd he waste his time when the only thing he wanted was to use the program.

I left my laziness aside and I built a package for Ubuntu 9.10, 32-bit version. This way he wouldn't have to worry about the compilation process.

I want to thank John Desanta by not giving up and for helping me solve many problems GMouseTool had.

Oh, and I will release a package for Ubuntu 9.10 (64-bits) until this Sunday.

Syndicated 2010-01-28 13:14:00 from Marcio Andrey Oliveira

Pacote para Ubuntu


Ontem eu fiz algo que já deveria ter feito a muito tempo: criei um pacote para o Ubuntu.

Em teoria qualquer um só deveria ter que baixar os fontes e executar os comandos mágicos (./configure, make e make install).

Na prática, para quem quer apenas usar o programa, isso é muito chato e trabalhoso, porque o usuário terá que instalar cada uma das bibliotecas de desenvolvimento (por exemplo, libgtk+2.0-dev) e suas respectivas dependências.

A algum tempo um usuário (que agora acho que posso chamar de amigo) estava tentando compilar o GMouseTool e estava encontrando vários problemas (quase todos por minha culpa).

Conforme ele ia me informando dos erros, eu ia fazendo as correções e ele tentava de novo. Pensei um pouco e achei um absurdo ele estar perdendo seu tempo quando a única coisa que ele queria era usar o programa.

Daí deixei minha preguiça de lado e gerei um pacote para o Ubuntu 9.10, versão de 32 bits para que ele não precisasse mais se preocupar com a compilação.

Assim, quero agradecer ao John Desanta por não ter desistido e por ter me ajudado a resolver vários problemas no GMouseTool.

Ah, e devo disponibilizar um pacote para o Ubuntu 9.10 de 64 bits até este domingo.

Syndicated 2010-01-28 13:13:00 from Marcio Andrey Oliveira

The order of the include files make a difference.


Yesterday I was facing some problems to use Google C++ Testing Framework (version 1.4.0).

I got a bunch of error messages from Visual Studio 2005 that you can see below.

Error    1    error C2766: explicit specialization; 'std::numeric_limits<:_bool>' has already been defined    c:\arquivos de programas\microsoft visual studio 8\vc\include\limits    482    
Error    2    error C2766: explicit specialization; 'std::iterator_traits<:_bool>' has already been defined    c:\arquivos de programas\microsoft visual studio 8\vc\include\xutility    678    
Error    3    error C2766: explicit specialization; 'std::_Ptr_cat_helper<:_bool>' has already been defined    c:\arquivos de programas\microsoft visual studio 8\vc\include\xutility    1143    
Error    4    error C2766: explicit specialization; 'std::_Ptr_cat_helper' has already been defined    c:\arquivos de programas\microsoft visual studio 8\vc\include\xutility    1149    
*,std::_bool*>

To make a long story short: the order of the include files made a difference. I put line
#include <gtest/gtest.h>
before all other include files and my problems vanished!

Syndicated 2010-01-06 23:40:00 from Marcio Andrey Oliveira

A ordem dos tratores altera o viaduto


Ontem eu tive alguns problemas ao tentar utilizar o framework de testes do Google (versão 1.4.0).

Eu recebia várias mensagens de erro do Visual Studio 2005 (que tu podes ver abaixo:

Error    1    error C2766: explicit specialization; 'std::numeric_limits<:_bool>' has already been defined    c:\arquivos de programas\microsoft visual studio 8\vc\include\limits    482    
Error    2    error C2766: explicit specialization; 'std::iterator_traits<:_bool>' has already been defined    c:\arquivos de programas\microsoft visual studio 8\vc\include\xutility    678    
Error    3    error C2766: explicit specialization; 'std::_Ptr_cat_helper<:_bool>' has already been defined    c:\arquivos de programas\microsoft visual studio 8\vc\include\xutility    1143    
Error    4    error C2766: explicit specialization; 'std::_Ptr_cat_helper' has already been defined    c:\arquivos de programas\microsoft visual studio 8\vc\include\xutility    1149    
*,std::_bool*>

Para encurtar a história, a ordem dos includes fez toda a diferença. Eu coloquei a linha
#include <gtest/gtest.h>

antes de todos os outros includes e os meus problemas desapareceram.

Syndicated 2010-01-06 23:39:00 from Marcio Andrey Oliveira

Free real-time logic simulator


Today I received an e-mail from a list that I'm signed talking about a real-time logic simulator.

Its' named Atanua (according to documentation I read, the name comes from Polynesian mythology, where Atanua is the goddess of dawn.)

In the following link you can see a demo.

http://sol.gfxile.net/atanua/wink.html

There is a free version for personal, noncommercial use that you can get here:

http://sol.gfxile.net/atanua/downloads.html

The coolest thing is that there is a Linux version (compiled on Ubuntu 8.04), for Mac and Windows.

I already downloaded my version (for Linux, of course) and I'm going to play with it to see if it is as good as it seems on demo.

Do not waste time. Download and install the simulator and start playing / learning.

Syndicated 2009-12-28 17:27:00 from Marcio Andrey Oliveira

Simulador de circuitos eletrônicos


Hoje recebi um e-mal da lista de discussões que assino falando sobre um simulador de circuitos lógicos em tempo real. Chama-se Atanua (segundo a documentação que eu li, é o nome de uma deusa da mitologia polinésia: a Deusa do Amanhecer)

No link abaixo há um demo do produto.

http://sol.gfxile.net/atanua/wink.html

Há uma versão gratuita para uso pessoal e não comercial, que pode ser obtida aqui:

http://sol.gfxile.net/atanua/downloads.html

O mais legal de tudo: Há uma versão para Linux (compilada para Ubuntu 8.04), para Mac e Windows.

Eu baixei a minha versão (para Linux, lógico) e vou começar a brincar com esse programa para ver se ele é bom quanto parece no demo.

Não perca tempo. Baixe e instale o simnulador e comece a brincar / aprender.

Syndicated 2009-12-28 17:13:00 from Marcio Andrey Oliveira

Gravador de PICs


Bom, estou de férias até o dia 04 de janeiro e resolvi me presentear com um circuito eletrônico.

Eu gosto muito de montagens de circuitos analógicos, com amplificadores operacionais, muitos transistores, capacitores, indutores, LEDs e outros componentes discretos.

Geralmente tudo que monto é em proto-board. Assim, após o circuito estar funcionando eu o desmonto para reutilizar as peças em outras montagens.

Mas dessa vez resolvi montar algo definitivo... uma ferramenta: um gravador de PICs.

Como a maioria dos projetos que estou planejando são com os microcontroladores PIC12F675-I/P  e o 16F628A, a primeira versão do programador consegue programar os PICs de 8 e 18 pinos.

A foto abaixo ilustra o resultado final.





Há um espaço na placa para que eu habilite a gravação dos PICs de 28 e 40 pinos. Ela já está preparada para isso. Só não fiz isso na primeira versão porque faltaram componentes e eu estava sem disposição para enfrentar o comércio nesta época de compras natalinas.

Após o aparelho pronto, precisava ter certeza que ele estava funcionando. Daí, eu bolei um circuito bem simples, com 1 LED e utilizei fios no lugar chaves (que estão em falta no meu estoque).

A partir de uma combinação de sinais em nível alto e baixo em determinados pinos, o LED acenderia, apagaria ou ficaria piscando.

Utilizei o Piklab versão 0.15.2 no Ubuntu 8.04 para escrever alguns programas de teste bem simples (em assembly).

Após cada programação do PIC, eu o inseria no proto-board e usava o próprio gravador como fonte de alimentação.

Uma coisa que deve ser observada: no Ubuntu que utilizei não havia o dispositivo para a porta paralela.

Assim tive que criá-lo com o comando

sudo mknod /dev/parport c 99 0

Depois me adicionei ao grupo que tinha direito de leitura e escrita a este dispositivo (no meu caso, o grupo scanner).


A foto abaixo dá a ideia da simplicidade do circuito de teste.





Tudo funcionou muito bem. Agora preciso comprar alguns componentes para começar a brincar com meu gravador.

Bom Natal a todos.

Syndicated 2009-12-25 19:12:00 from Marcio Andrey Oliveira

A nail for a fuse


Some time ago I wrote about the analogy between Electronics and Software Development. Today I came across another interesting analogy: A nail for a fuse - an analogy between fuses and assertions.

This nice reading was written by Miro Samek and can be read here: http://www.embeddedgurus.net/state-space/2009/11/nail-for-fuse.html

Syndicated 2009-11-30 16:32:00 from Marcio Andrey Oliveira

how to enable the touch screen in the simulator sun?


Emulators of WTK from Sun, by default, does not come with the touch screen enabled. But what if we need to develop something for this type of phone?

All we need do is change the configuration of the equipment for which we want to enable the touch screen.

Equipment available for the simulator are in sub-directories within

wtklib\devices\

which is under the root folder of the WTK. The name of the sub-directory is the same as the device available for the simulator.

The configuration file ends with the extension. Properties. Open the configuration file and change the line

touch_screen = false
to
touch_screen = true

For example, suppose that the WTK is used WTK2.5.2_01 and we want to enable the touch screen to the device DefaultColorPhone.

Go to folder

C:\WTK2.5.2_01\wtklib\devices\DefaultColorPhone
then open the
DefaultColorPhone.properties

file and change the line

touch_screen = false
to
touch_screen = true

Syndicated 2009-11-27 19:01:00 from Marcio Andrey Oliveira

75 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!