RSS

Archive for the ‘Uncategorized’ Category

O Retorno – FreeBSD zica: PHP Fatal error: Call to undefined function preg_match()

Sunday, February 28th, 2010

Depois de um reboot anormal (rede elétrica problemática), o FreeBSD voltou a retornar esse famigerado erro:

PHP Fatal error: Call to undefined function preg_match()

Entretanto, dessa vez, o procedimento descrito no post anterior não deu jeito, tive de ser mais ignorante, simplesmente mandei remover tudo que tinha de php5 no sistema e mandei reinstalar tudo.

Para visualizar o que você tem de instalado do php5 (suporte a linguagem, módulos, etc..)

pkg_version -v | grep -i php5

Para remover tudo:

pkg_delete -f php5-\*

Pronto. Agora é só ir em lang/php5 e lang/php5-extensions, dar um make clean em cada, e mandar instalar tudo com o famoso:

make install clean

Espero que seja útil.

Domingão – FreeBSD, Punk Rock e ressaca! ;)

Sunday, February 7th, 2010

HAAA!!!!! Na animação do blog estar de volta, agora rodando sobre FreeBSD (que eu curto muito) e ainda por cima pra curar a cachaça, mando uma seleção de 5 clássicos do Punk Rock, a lista contém The Clash, Bad Religion, The Offspring Pennywise e Ramones. Então aproveite e leia esse post completo para curtir essa sonzeira ;)

freebsd beastie

(more…)

FreeBSD zica: PHP Fatal error: Call to undefined function preg_match()

Sunday, February 7th, 2010

Hoje eu fui passar meu site para um servidor que roda FreeBSD, e decidi atualizar o PHP4 para o PHP5.

Depois de tudo facilmente desinstalado e instalado (lang/php5 e lang/php5-extensions), apache configurado e tudo mais, todos os sites que usam php estavam abrindo em branco e nos logs apareciam coisas desse tipo:

PHP Fatal error: Call to undefined function preg_match()

Depois de uma googlada, vi que o erro estava na extensão devel/php5-pcre.
Site que continha o workaround original.

Tentei remover essa extensão, mas não foi possível haja visto que outras dependiam dela, entretanto outra linha funcionou perfeitamente:

# make reinstall clean

Depois foi só restartar o apache e tudo voltou a funcionar normalmente.

Só para constar: FreeBSD 7.2, apache 1.3 e php5.

Review Nokia E63

Monday, January 25th, 2010

Alguns já sabem que eu sou o feliz proprietário de um Nokia E63 desde a semana passada.

Comprei esse telefone sem muitas pretenções, na verdade ele foi escolhido exatamente assim. Entrei na loja da Claro e disse assim:

- Querida, qual o telefone mais barato que acessa que redes wi-fi?
Ela sem pestanejar respondeu:
- O Nokia E63.

Troquei meu plano por um melhorzinho, 120 minutos (R$ 70,00) e o telefone saiu por módicos R$ 30,00, e por esse preço camarada, eu esperava uma merda de telefone, e fui surpreendido de tal forma, hahah que até estou escrevendo um Review que favorecerá uma mega caorporação sem estar levando nada em troca. Foram os R$ 30,00 mais bem gastos de todos os tempos.

Quer saber mais sobre o Nokia e63? Então leia o review completo! -> (more…)

OS WARS – M$ Windows 98 travando em sua apresentação. Hilário.

Monday, January 25th, 2010

Esse vídeo é muito antigo, mas é muito engraçado…

… é impagável a parte “…you notice that this scanner build woooowwaaaa…” e a BSOD aparecendo! Bom d+! UAHuhauhau

Tirinha – Praga!

Friday, January 22nd, 2010

Eu rolei de rir com essa! ;)

Google. Invadindo sua privacidade.

Sunday, January 10th, 2010

Vale a pena dar uma refletida…




… tem pessoas que são verdadeiramente paranóicas em relação a esse assunto, eu não chego a um nível de paranóia, mas eu confesso que me preocupo em ter TODA a minha vida concentrada no GMAIL.

Compilando fontes em separado no FORTRAN.

Sunday, January 10th, 2010

Para compilar um programa que está modularizado em diversos fontes, compilando cada fonte de cada vez, é muito simples e muito útil, haja visto que você não precisará recompilar todos os módulos a todo o tempo, e sim somente o módulo alterado e os dependentes do módulo alterado.

Vou dar o exemplo utilizando 3 arquivos fontes, o aleatorio.f90, rotinas3.3.f90 e teste.f90. E utilizando o compilador ifort, o qual é distribuído gratuitamente pela Intel para uso não comercial, não estou querendo fazer propaganda da Intel, mas os compiladores dela, na minha humilde opnião, humilham os compiladores da GNU, mas isso é uma discussão a parte.

A interdependêcia está assim: teste.f90 depende de aleatorio.f90, o qual depende do rotinas3.3.f90.

Primeiro compilamos os dois primeiros como objeto, utilizando a opção -c do ifort:

$ ifort -c rotinas3.3.f90
rotinas3.3.f90(56): (col. 9) remark: LOOP WAS VECTORIZED.
rotinas3.3.f90(61): (col. 9) remark: PERMUTED LOOP WAS VECTORIZED.
$ ifort -c aleatorio.f90
aleatorio.f90(59): (col. 16) remark: LOOP WAS VECTORIZED.

Confira os objetos criados:

$ ls *.o
aleatorio.o rotinas3.3.o

Então compilamos o último programa para gerar o binário:

$ ifort teste.f90 rotinas3.3.o aleatorio.o -o teste.bin

E pronto, o último programa foi compilado, sem recompilar todos os outros módulos, usando um -v você conseguira ver que o ifort não recompila os objetos.

Isso tras uma vantagem imensa para projetos de muitos módulos, pois não há necessidade de recompilar tudo toda hora, por exemplo, se eu fizer um alteração em aletorio.f90, eu só preciso recompilar este módulo e o que depende dele, o arquivo teste.f90, evitando a recompilação desnecessária do arquivo rotinas3.3.f90.

Espero que a dica seja útil.

Script para atualização automática do Wordpress via shell.

Sunday, January 10th, 2010

Hoje fui atualizar o WP, já que não tinha nada melhor pra fazer, e como sempre, estava reclamando pra cacete de como acho chata essa atualização manual do WP, então fiz um script que faz backup dos arquivos estáticos, da database, compacta ambos em bz2, depois baixa a versão mais nova do WP e faz o update.

Está porco, pois foi feito as pressas, mas funciona, e definitivamente você terá de alterá-lo conforme as suas necessidades!

Segue o código:

#!/bin/bash

# Script para atualizacao do wordpress – versao 0.1 – 10/1/2010

# Por Leonardo Marques, analyser. – analyser(no_spam)mail.analyx.org

#Variaveis
DATE=$(date +%d.%m.%y)
DB_PASS=”suasenhadoDB”
DB_USER=”usuariododb”
DB=”suabasededados”
STORE_IN=”/home/analyser/bkp_site/”
LOG=”$STORE_IN/update_log.txt”
SITE=”analyx.org”

#Execucao

#Bkp do DB
echo “fazendo dump do db….”
mysqldump -u $DB_USER -p$DB_PASS $DB > $STORE_IN/site-bkp-$DATE.sql
echo “comprimindo db…”
bzip2 –best $STORE_IN/site-bkp-$DATE.sql

#Bkp dos aquivos
mkdir $STORE_IN/$SITE-bkp-$DATE
echo “Copiando os arquivos estaticos…”
cp -rf /aletta/sitios/$SITE/htdocs-prod/ $STORE_IN/$SITE-bkp-$DATE
cd $STORE_IN
echo “Compactando o backup….”
tar -cf $SITE-bkp-$DATE.tar $SITE-bkp-$DATE
bzip2 –best $SITE-bkp-$DATE.tar
rm -rf $SITE-bkp-$DATE

#Atualizao do WP
cd /home/$USER/
echo “baixando nova versao do wp….”
wget http://wordpress.org/latest.zip
echo “descomprimindo wp…”
unzip latest.zip
echo “removendo wp-admin e wp-includes….”
rm -rf /aletta/sitios/$SITE/htdocs-prod/wp-admin /aletta/sitios/$SITE/htdocs-prod/wp-includes
echo “sobrescrevendo os arquivos…”
cp -rf wordpress/* /aletta/sitios/$SITE/htdocs-prod/
echo “limpando os arquivos tmp….”
rm -rf latest.zip wordpress
echo “#Wiki Backup feito em $DATE – Arquivo Gerado: $STORE_IN/analyx-bkp-$DATE.tar.bz2″ >> $LOG

Espero que seja útil! Abraços!

Erro na instalação do MATLAB R2009a no Linux – Permissão xsetup

Tuesday, January 5th, 2010

Esses dias eu fui instalar o MATLAB no Linux (Ubuntu 8.10) e obtive o seguinte erro:

——————————————————————-

An error status was returned by the program ‘xsetup’,
the X Window System version of ‘install’. The following
messages were written to standard error:

/home/leonardo/Azureus Downloads/Laboratoire Matriciel 2009 for Linux/update/install/main.sh: 178: /home/leonardo/Azureus Downloads/Laboratoire Matriciel 2009 for Linux/update/bin/glnx86/xsetup: Permission denied

Attempt to fix the problem and try again. If X is not available
or ‘xsetup’ cannot be made to work then try the terminal
version of ‘install’ using the command:

install* -t or INSTALL* -t

——————————————————————-

Para corrigir bastou acertar as permissões do arquivo xsetup.

Dentro do diretório de instalação do MATLAB, execute:

chmod 755 update/bin/glnx86/xsetup

E então, a instalação proseguiu corretamente.