O dia em que eu perdi 2 horas por causa de 1 byte

Não raro, essa vida de programador nos leva a enfrentar algumas peleias bravas. Hoje durante testes de um software desenvolvido pela empresa aonde trabalho o aplicativo começou a apresentar um comportamento estranho (entenda-se SIGSEGV). Obviamente, a primeira reação foi abrir o gdb, rodar o aplicativo e analisar o backtrace. Este, entretanto, mostrava-se incapaz de localizar o problema tornando o problema particularmente interessante. Resumindo, depois de alguns bons minutos quebrando a cabeça, foi possível identificar que o problema era *muito* mais simples do que parecia ser: numa determinada parte do código existia 1 mísero byte sendo escrito a mais.

Adicionando suporte a PostgreSQL na QT p/ windows

Para quem seguiu as minhas dicas sobre como usar a QT OpenSource no Visual Studio e quer habilitar o suporte a banco de dados PostgreSQL na QT. Após instalar o PostgreSQL com os seus arquivos de desenvolvimento (headers, bibliotecas, etc), basta fazer o seguinte:

1) Abra o arquivo C:\Program Files\Micorsoft Visual Studio 8 Express\Common7\Tools\vsvars.bat e adicione o caminho para os includes na variável INCLUDE. Ela deverá ficar mais ou menos assim:

@set INCLUDE=C:\Program Files\Microsoft Platform SDK\Include;C:\Program Files\Microsoft Visual Studio 8\VC\INCLUDE;C:\Program Files\PostgreSQL\Include;%INCLUDE%

2) Faça o mesmo para a variável LIB, obviamente adicionando o caminho para as bibliotecas dos PostgreSQL. Deverá ficar mais ou menos assim:

@set LIB=C:\Program Files\Microsoft Platform SDK\Lib;C:\Program Files\Microsoft Visual Studio 8\VC\LIB;C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\lib;C:\Program Files\PostgreSQL\Lib;%LIB%

Ao recompilar a QT, informe o parâmetro -plugin-sql-psql.