Mar 31

Se usam o Fedora Core 12 e tentarem compilar algum programa que use extensões fornecidas pelo OpenSSL, poderão deparar-se com erros como estes :

/usr/src/php-4.4.9/ext/openssl/openssl.c:182: error: expected specifier-qualifier-list before ‘LHASH’
/usr/src/php-4.4.9/ext/openssl/openssl.c:343: error: expected declaration specifiers or ‘…’ before ‘LHASH’
/usr/src/php-4.4.9/ext/openssl/openssl.c: In function ‘php_openssl_config_check_syntax’:
/usr/src/php-4.4.9/ext/openssl/openssl.c:348: error: ‘config’ undeclared (first use in this function)
/usr/src/php-4.4.9/ext/openssl/openssl.c:348: error: (Each undeclared identifier is reported only once
/usr/src/php-4.4.9/ext/openssl/openssl.c:348: error: for each function it appears in.)
/usr/src/php-4.4.9/ext/openssl/openssl.c: In function ‘add_oid_section’:
/usr/src/php-4.4.9/ext/openssl/openssl.c:366: error: ‘struct php_x509_request’ has no member named ‘req_config’
/usr/src/php-4.4.9/ext/openssl/openssl.c:370: error: ‘struct php_x509_request’ has no member named ‘req_config’
/usr/src/php-4.4.9/ext/openssl/openssl.c: In function ‘php_openssl_parse_config’:
/usr/src/php-4.4.9/ext/openssl/openssl.c:416: error: ‘struct php_x509_request’ has no member named ‘config_filename’
/usr/src/php-4.4.9/ext/openssl/openssl.c:416: error: ‘struct php_x509_request’ has no member named ‘config_filename’
/usr/src/php-4.4.9/ext/openssl/openssl.c:417: error: ‘struct php_x509_request’ has no member named ‘section_name’
/usr/src/php-4.4.9/ext/openssl/openssl.c:417: error: ‘struct php_x509_request’ has no member named ‘section_name’
/usr/src/php-4.4.9/ext/openssl/openssl.c:418: error: ‘struct php_x509_request’ has no member named ‘global_config’
/usr/src/php-4.4.9/ext/openssl/openssl.c:419: error: ‘struct php_x509_request’ has no member named ‘req_config’
/usr/src/php-4.4.9/ext/openssl/openssl.c:419: error: ‘struct php_x509_request’ has no member named ‘config_filename’
/usr/src/php-4.4.9/ext/openssl/openssl.c:421: error: ‘struct php_x509_request’ has no member named ‘req_config’
/usr/src/php-4.4.9/ext/openssl/openssl.c:426: error: ‘struct php_x509_request’ has no member named ‘req_config’
/usr/src/php-4.4.9/ext/openssl/openssl.c:437: error: ‘struct php_x509_request’ has no member named ‘digest_name’

No inicio pensei que pudesse estar relacionado  com o facto de estar a tentar compilar uma versão do php bastante antiga provocando alguma incompatibilidade entre com as extensões actuais, mas na verdade existem mais pessoas com o mesmo problema utilizando software mais recente.

A forma de resolver (ainda que temporariamente) o problema foi copiar as extensões de outra máquina, no meu caso um servidor com Fedora Core 9.

Para o caso de alguém precisar, ficam aqui. Basta descomprimir para o directório /usr/include/openssl.

Tagged with:
Dec 17

O PHP4 já foi descontinuado à muito tempo mas infelizmente ainda é necessário em algumas plataformas que não são actualizadas e necessitam desta versão para não ficarem quebradas no PHP5.

A última versão do PHP4 lançada foi a 4.4.9 e é impossível instalar esta versão em conjunto com o Fedora Core 9.

Depois de satisfeitas as dependências, a configuração do php-4.4.9 continua à procura das algumas libs no sitio errado, ou seja, /usr/lib ao contrario de /usr/lib64.

Para agravar o problema, as flags –libdir ou –with-libdir não parecem surtir efeito pois apesar de se indicar o directório /lib64 a configuração continua à procura das libs na pasta /lib.

Para se corrigir isto convém pode-se optar por duas opções :

1ª Copiar todas as bibliotecas que o PHP não encontra e que se encontram em /usr/lib64 e que são necessárias em /usr/lib (podem usar o utilitário strace para saber exactamente o caminho completo necessário).
2ª Instalar a versão de 32 bits das mesmas bibliotecas e criar links simbólicos para a versão base de cada biblioteca (ex. /usr/lib/libjpeg.so.5.2 -> /usr/lib/libjpeg.so).

Só depois de insto corrigido é que será possível. Em alternativa podem optar por uma versão mais antiga que não terá este problemas (por ex, a 4.4.4).

Tagged with:
Dec 09

Esta é uma daquelas questões pela qual muita gente já passou… Possuem acesso a uma consola linux, mas sem ambiente gráfico e também não têm uma conta premium num rapidshare/megaupload/depositfiles/etc mas querem fazer downloads múltiplos sem ter de estar sempre a carregar os links ?

A resposta é : slimrat

O Silmrat é um gestor de downloads que pode correr numa consola sem precisar do X. A grande vantagem desta aplicação é que faz a gestão automática dos tempos de espera e tenta efectuar o download novamente caso falhe a primeira vez (que acontece regularmente por exemplo com o rapidshare que diz que não existem slots disponíveis para utilizadores não premium).

Podem saber mais aqui.

Tagged with:
Dec 07

Quem usa Ubuntu como base para um HTPC já deve ter passado por esta dor de cabeça :

Como é que posso fazer login automático no Gnome e ligar-me automaticamente numa rede wireless ?

Os forums do ubuntu estão repletos de dúvidas semelhantes, mas a verdade é que no karmic nenhuma delas funciona (pelo menos no que toca a autenticação automática na rede wireless). Todos aqueles truques de acrescentar algumas linhas ao PAM são ignoradas pelo porta-chaves do gnome nesta versão. A dica para conseguir autenticar numa rede wifi passa por criar um novo porta-chaves sem password.

 

0º Utilizem o gdmsetup para configurar o login automático no Ubuntu.

 

1º Eliminem (ou movam se quiserem guardar de backup) todas as entradas dentro da pasta .gnome2/keyrings/ que se encontra na vossa home.

 

2º Reiniciem o computador. No próximo boot já será feito o login automático no Ubuntu. Depois deste login, irá aparecer uma caixa a pedir a password da rede wireless. Insiram-na normalmente e cliquem em OK. Após isto, irá aparecer novamente a caixa do gnome-keyring para criar um novo porta chaves. O segredo está aqui. Criem um porta chaves sem password e desta forma nunca mais vos vai chatear. A partir de agora o Ubuntu efectuará login automático incluindo a vossa rede wireless favorita.

 

PS: Tenham em atenção que desta forma as passwords armazenadas neste porta chaves serão guardadas sem encriptação, por isso cuidado com os conteúdos sensíveis.

Tagged with:
Dec 06

Na realidade não é bem assim, o suporte está lá, mas não funciona correctamente…
VLC
A ultima release de Ubuntu possui nos seus repositórios uma versão do VLC que tem alguns bugs no que toca ao suporte a dispositivos de captura que utilizem os drivers video4linux2. A única solução passa mesmo por fazer um downgrade de versão ou upgrade.

No meu caso optei por um upgrade para a versão 1.0.3 para aproveitar alguns binários já disponíveis no launchpad (não me apetecia perder tempo a compilar uns MB valentes de código).

Podem utilizar os binários disponíveis aqui :

https://launchpad.net/~c-korn/+archive/vlc

Problema resolvido :o

Tagged with:
Dec 05

A EasyCap DC60 é uma placa de captura de vídeo super económica. Quem anda nas andanças do ebay sabe perfeitamente que a pode comprar por uma pechincha (algo tipo 10 euros).  A grande chatice é que pode ser uma verdadeira dor de cabeça colocar a funcionar em sistemas operativos *nix. Depois de muitas dores de cabeça,  isto foi o que funcionou comigo :

1º Fazer o download da ultima versão disponível via SVN:

svn co https://syntekdriver.svn.sourceforge.net/svnroot/syntekdriver syntekdriver 

 

2º Entrar na pasta driver e compilar  :

cd syntekdriver/trunk/driver && make

 

3º Copiar o driver para a respectiva pasta :

cp stk11xx.ko /lib/modules/$(uname -r)/kernel/drivers/media/video/

 

4º Actualizar os módulos

depmod -a

 

5º Inicializar o modulo e começar a utilizar. Aconselho a passar os seguintes parâmetros (norm=1 fps=25) pois a mim não me funcionou sem eles.

modprobe stk11xx norm=1 fps=25

 

Finalizado !

Para testarem podem usar o mplayer :

 

mplayer tv:// -tv driver=v4l2:width=720:height=576:fps=25:outfmt=rgb24:device=/dev/video0

 

Tagged with:
preload preload preload