… profisional, pessoal e comunitário
RSS icon Email icon Home icon
  • Python, Django, Mysql e MySQLdb no Snow Leopard

    Posted on December 11th, 2009 admin No comments

    Pessoal, criei uma série de posts para ajudar quem ainda tem dificuldades em instalar o ambiente de desenvolvimento Django no Mac OS X 10.6 (Snow Leopard). Para isso separei esse tutorial em vários posts, segue a lista.

    Se o seu objetivo é ter Django com suporte ao MySQL e tudo rodando junto, você precisa iniciar do primeiro post, e ir até o último. Chato mas necessário.

  • MySQLdb no OS X 10.6 (intel)

    Posted on December 11th, 2009 admin No comments

    Vamos acompanhar a instalação do MySQLdb no python2.5.4. É galera eu prometi instalar no 2.6.4, mas ainda não tive sucesso. Por enquanto então vai no que funciona.

    Passo 1:

    Partimos do princípio que você tem o Python e o MySQL já instalados no sistema. Para isso veja os posts anteriores neste blog. Ah e claro, você deve ter instalado o Xcode 3.2.1 completo e instalado.

    Passo 2:

    Baixe a versão 1.2.2 do MySQL for Python em AQUI. Extraia o conteúdo do pacote com o seguinte comando

    $ tar xzvf MySQL-python-1.2.2.tar.gz

    Passo 3:

    Entre na pasta descompactada e edite o arquivo “_mysql.c” com seu editor de texto. Dessa forma faça as seguintes alterações

    - Remova as seguintes linhas:

    #ifndef uint
    #define uint unsigned int
    #endif

    - Altere as linhas

    uint port = MYSQL_PORT;
    uint client_flag = 0;

    para:

    unsigned int port = MYSQL_PORT;
    unsigned int client_flag = 0;

    Passo 4:

    Crie um link simbólico dos arquivos do mysql com o comando:

    $ sudo ln -s /usr/local/mysql/lib /usr/local/mysql/lib/mysql

    Passo 5:

    Edite o arquivo “setup_posix.py” e altere a seguinte linha:

    mysql_config.path = "mysql_config"

    para

    mysql_config.path = "/usr/local/mysql/bin/mysql_config"

    Passo 6:

    Execute os comandos:

    export CC=gcc-4.2
    ARCHFLAGS=`i386` python setup.py build

    Se tudo correr bem, seu mysqldb está compilado, agora precisamos instalá-lo com o comando:

    python setup.py install

    E pronto! Agora tudo vai funcionar corretamente. Observação importante, quanto foi passado o argumento ARCHFLAGS i386, é porque meu MAC é Intel, não se como isso pode se comportar no PPC.

    Espero ter ajudado.

  • Python 2.6.4 on OS X 10.6

    Posted on December 11th, 2009 admin No comments

    Nesse post vamos abordar a instalação do Python 2.6.4 no Mac OS X 10.6 (Snow Leopard). Detalhes, nessa instalação já vamos preparar o PIL (python image library) e o setuptools. E ainda, deixar os arquivos de “headers”, os famosos .h, disponíveis caso alguma aplicação necessite do python-dev.

    1 – Instalar o Python2.6.4.

    Para isso acesse o link http://www.python.org/ftp/python/2.6.4/python-2.6.4_macosx10.3.dmg e baixe o pacote “.dmg”

    Abra o arquivo .dmg e instale o python. Feito isso você já pode usar o python2.6.4 pelo terminal. Para testar digite:

    # python2.6

    A saída deve ser algo semelhante a isso:

    sh-3.2# python2.6
    Python 2.6.4 (r264:75821M, Oct 27 2009, 19:48:32)
    [GCC 4.0.1 (Apple Inc. build 5493)] on darwin
    Type “help”, “copyright”, “credits” or “license” for more information.
    >>>

    sh-3.2# python2.6
    Python 2.6.4 (r264:75821M, Oct 27 2009, 19:48:32)
    [GCC 4.0.1 (Apple Inc. build 5493)] on darwin
    Type “help”, “copyright”, “credits” or “license” for more information.
    >>>

    Pronto Python instalado.

    2 – Instalar o setuptools

    Primeiro é necessário baixar o setuptools no endereço: http://pypi.python.org/packages/2.6/s/setuptools/setuptools-0.6c11-py2.6.egg

    Antes de executá-lo verifique se o pacote baixado tem exatamente este nome “setuptools-0.6c11-py2.6.egg”. Caso não tenha renomei-o. Agora exetute o arquivo baixado como mostra o campo a seguir:

    sh-3.2# sudo sh setuptools-0.6c11-py2.6.egg
    Processing setuptools-0.6c11-py2.6.egg
    Copying setuptools-0.6c11-py2.6.egg to /Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages
    Adding setuptools 0.6c11 to easy-install.pth file
    Installing easy_install script to /Library/Frameworks/Python.framework/Versions/2.6/bin
    Installing easy_install-2.6 script to /Library/Frameworks/Python.framework/Versions/2.6/bin
    Installed /Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/setuptools-0.6c11-py2.6.egg
    Processing dependencies for setuptools==0.6c11
    Finished processing dependencies for setuptools==0.6c11

    Se tudo correu bem o setuptools está instalado.

    3 – Instalar o PIL

    O PIL, Python Image Library é um problema a parte. O instalador do PIL para o OS X é baseado na versão 2.4 do Python, então fazemos uma pequena gambiarra. Está disponibilizado na sessão de downloads do meu site uma versão já compilada do PIL para Macs Intel. Então baixe essa versão em http://www.oalexandre.com/files/PIL.zip

    Descompacte esse arquivo e pelo terminal copie a pasta PIL para dentro do diretório “site-packages” do Python. Siga o examplo:

    sh-3.2# sudo mv PIL /Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/

    Pronto, PIL instalado. Agora essa parte está feita. Espero ter ajudado.

  • mod_python

    Posted on April 7th, 2009 admin No comments

    Pois é, estes dias em uma aula de programação para a internet lá estava eu aprendendo PHP, não estava muito contente em usar aqueles códigos meio confusos no meio do HTML, foi aí que pensei: porque não usar Python??

    Abri meu navegador e fui direto no google, mod-python. Como eu uso Debian não tive diviculdades nenhuma na istalação do mesmo:

    aptiture instal libapache2-mod-python

    Pronto, agora o mod-python está pronto para rodar!! Mas aí vem, como fazer para usar o python para HTML? Como fazer as páginas?

    Primeiramente nós temos que configurar o arquivo de configuração do apache, para isso edite o arquivo correspondente ao site habilitado no seu servidor Apache2, no meu caso editei o 000-default que resolve na maioria dos casos:

    vi /etc/apache2/sites-enabled/000-default

    Neste arquivo deve ser adicionado as configurações ao apache para que ele consiga interpretar os scripts Python, para isso adicione as seguintes linhas:

    <Directory /var/www/python/>
    SetHandler mod_python
    PythonHandler mod_python.publisher
    </Directory>

    Com estas linhas você está dizendo ao apache que dentro da pasta “/var/www/python/” exitirão scripts em python que serão interpretados pelo Python assim que requisitados pelo apache.

    Agora só resta programar e salvar seu arquivo dentro de “/var/www/python/”, no meu caso o chamei de “index.py” para testar use o exemplo abaixo:

    def teste(req):
    return “<html> <h1> Funcionou!</h1> </html>”

    Para acessar a página que você fez basta acessar no seu navegador o endereço “http://localhost/python/index/teste”

    Explicando: na função o “req” é obrigatório como parâmetro para o funcionamento do mod-python. O conteúdo que será impresso no navegador é o resultado da string que é retornada pela função teste.

    Caso dentro da pasta /var/www/python/ exista dois scripts com várias funcões, para acessar a regra é a seguinte: http://endereco/python/nomedoarquivo_sem_o_.py/funçãoquevcquerchamar

    Teste, tente, invente.

    Dúvias estou disposto a ajudar: eusou@oalexandre.com