Arquivo mensal: dezembro 2009

ARToolkitPlus 2.1.3

Se você deseja utilizar a biblioteca ARToolKitPlus no GCC 4.4, uma das alternativas é obter a versão 2.1.3 da biblioteca. Esta versão já foi portada para o compilador  gcc 4.4. A seguir o link  para download seguido da receita de bolo para compilação.

$ wget http://edge.launchpad.net/artoolkitplus/2.1.x/2.1.3/+download/ARToolkitPlus-2.1.3.tar.gz
$ tar -zxvf ../ARToolkitPlus-2.1.3.tar.gz
$ cd ARToolkitPlus-2.1.3/
$ scons

Mais informações AQUI!

Como debugar projetos no Tomcat com Eclipse.

Em 30 de Novembro de 2009, postei como configurar o debug Remoto no WebSphere, agora deixo neste  post  uma dica similar. Entretanto a  plataforma é o Tomcat no Windows 2003 server.

Em primeiro lugar, defina  a  variável ambiental jpda_transport e jpda_address:

set JPDA_TRANSPORT=dt_socket
set JPDA_ADDRESS=5050

Agora insira as linha a  seguir no Java Options:

-Xdebug 
-Xrunjdwp:transport=dt_socket,address=192.168.2.10:1044,server=y,suspend=n

Pronto! Agora basta executar a aplicação no modo debug!

CUDA: Programe a sua NVIDIA na plataforma Linux!

Depois dos estudos sobre visão computacional, publiquei um artigo distribuído gratuitamente na revista Linux Magazine sobre a sua aplicabilidade e custo computacional.Neste cenário os chips gráficos (GPU) serão imprescindíveis para um ganho significativo na performance destes aplicativos.

O uso orquestrado das GPU e CPU mudará o rumo da computação, pois trabalhos que processam em dias poderão ser processados em horas. Na minha visão, screensavers que trabalharão em cluster, utilizando a GPU, permitirão acelerar trabalhos de pesquisas para o desenvolvimento da  curas de doenças letais.

Nos meus testes laboratoriais, a multiplicação de vetores com 50 milhões de elementos levaram 20µs na GPU contra 401742µs (microsegundos) na CPU. Para fechar o ano de 2009, disponiblizo um documento no Viva O Linux, onde menciono como instalar e compilar o SDK da NVidia.

Documento na íntegra AQUI!

LevelHead compilado no OpenSuse 11.2

Ontem terminei de compilar o jogo Levelhead no OpenSuse 11.2, os principais obstáculos foi ajustar o fonte de algumas libs para o GCC  4.4 (ARToolKitPlus e outras). No final deu tudo certo.

Para efeito de informação, Levelhead é um inovador e fantástico jogo, criado pelo designer e programador Julian Oliver. O jogo open source é baseado em um cubo real que utiliza recurso da tecnologia de realidade aumentada para reproduzir o cubo virtual no monitor. É um novo conceito: print e play!

Um  tutorial completo no Viva O Linux.

Postgresql no OpenSuse 11.2

Deixo neste post a minhas anotações criadas ao instalar o banco postgresql no OpenSuse  11.2. Siga as instruções a seguir após  instalar o banco via RPM, source ou YAST.

# rcpostgresql stop
# su - postgres
$$  psql -U postgres template1
em vindo ao psql 8.2.4, o terminal iterativo do PostgreSQL.

Digite:  \copyright para mostrar termos de distribuição
 \h para ajuda com comandos SQL
 \? para ajuda com comandos do psql
 \g ou terminar com ponto-e-vírgula para executar a consulta
 \q para sair

template1=# alter user postgres with encrypted password 'NOVA-SENHA';
ALTER ROLE
template1=# \q

Alterar o conteúdo do arquivp pg_hba.conf conforme o exemplo abaixo:

/var/lib/pgsql/data/pg_hba.conf
local   all         all                               password
host    all         all         127.0.0.1/32          password
host    all         all         ::1/128               password

tcpip_socket = true
listen_addresses = '*'

Criando usuário:

$ createuser -U postgres -W -P
Digite o nome da role a ser adicionada: cabelo
Digite a senha para a nova role:
Digite-a novamente:
A nova role podera criar um super-usuario? (s/n) n
A nova role podera criar bancos de dados? (s/n) s
A nova role podera criar novas roles? (s/n) n
Senha:
CREATE ROLE

Criando e apagando um banco de dados.

$createdb BANCO-VOL
Senha:
$dropdb BANCO-VOL
Senha:

Criando uma tabela;

$ psql FACIAL
Bem vindo ao psql 8.2.4, o terminal iterativo do PostgreSQL.

Digite:  \copyright para mostrar termos de distribuição
 \h para ajuda com comandos SQL
 \? para ajuda com comandos do psql
 \g ou terminar com ponto-e-vírgula para executar a consulta
 \q para sair

FACIAL=>  CREATE TABLE usuarios (
FACIAL(> registro int primary key NOT NULL,
FACIAL(> nome varchar(60) NOT NULL,
FACIAL(>  dt_cadastro timestamp,
FACIAL(> dt_acesso timestamp,
FACIAL(> aviso varchar(256),
FACIAL(> depto varchar(30),
FACIAL(> cargo varchar(30),
FACIAL(> chamar varchar(30),
FACIAL(> novofir varchar(1),
FACIAL(> alterarfoto varchar(1),
FACIAL(> empresa varchar(30),
FACIAL(> documento varchar(20),
FACIAL(> endereco varchar(60),
FACIAL(> cidade varchar(30),
FACIAL(> estado varchar(2),
FACIAL(> tipo_doc varchar(10)
FACIAL(> );
NOTA:  CREATE TABLE / PRIMARY KEY criara i­ndice impli­cito "usuarios_pkey" na tabela "usuarios"
CREATE TABLE
FACIAL=>  \q

Alterando  uma  tabela:

$ psql FACIAL
Bem vindo ao psql 8.2.4, o terminal iterativo do PostgreSQL.

Digite:  \copyright para mostrar termos de distribuição
 \h para ajuda com comandos SQL
 \? para ajuda com comandos do psql
 \g ou terminar com ponto-e-vírgula para executar a consulta
 \q para sair

FACIAL=> ALTER TABLE usuarios ADD COLUMN foto OID;
FACIAL=> ALTER TABLE usuarios ADD COLUMN fir OID;
ALTER TABLE usuarios ALTER  tipo_doc TYPE VARCHAR(15);
 alter table acesso add sequencia int primary key DEFAULT NEXTVAL('acesso_seq')

ALTER TABLE
FACIAL=> \q;

Backup e restore:

$ pg_dump -Ftob FACIAL > FACIAL.tar
$ pg_restore -d FACIAL FACIAL.tar

Inserindo auto-incremento na  tabela:

CREATE SEQUENCE sq;
CREATE TABLE t_test( id INTEGER PRIMARY KEY DEFAULT NEXTVAL('sq'), name VARCHAR(10) );
INSERT INTO t_test(name)
 VALUES ('Andrew');
INSERT INTO t_test(name)
 VALUES ('Gordon');
SELECT * FROM t_test;

Por enquanto é só, até o próximo post.