Compilação estática em C++ e QT no Linux

Após um post informando como efetuar a compilação do QT para utilização das bibliotecas estáticas no Windows, vamos agora efetuar compilação para ao Linux [Testado no Kubuntu 9.04 e LinuxMint 7].

1 – Efetue a instalação do seguintes pacotes via APT

 $ sudo apt-get install libx11-dev libfreetype6-dev libavahi-gobject-dev libSM-dev libXrender-dev libfontconfig-dev libXext-dev build-essential

2 – Execute ./configure com os seguintes parâmetros

$ sudo ./configure -static -release -nomake demos -nomake examples -nomake tools

3 – Execute o make e o make install

$ sudo make ; sudo make install

4 – Configure o makefile do seu projeto adicionando as seguinte linha no arquivo .pro

CONFIG += static

 

OBS: Caso ocorra algum erro há algumas dicas nesse link http://www.sistemasparalinux.com.br/Compilar_Qt_Debian.html

<a href="http://twitter.com/home?status=Currently reading " title="Click aqui para enviar esse post ao Twitter!" target="_blank">Compartilhe no Twitter

Compilação estática em C++ e QT no Windows

Para adicionar as bibliotecas estáticas aos programas gerados em C++ e QT é necessário recompilar o QT, pois o que é instalado por padrão utiliza as bibliotecas dinâmicas, dificultando assim a distribuição do aplicativo.

  1. Set as variáveis de ambiente include e lib.
    • No menu “Iniciar”, selecione a opção “Painel de controle”;
    • Acesse o item “Sistema”;
    • Selecione a guia “Avançado”;
    • Acesse “Variáveis de ambiente”, e no campo Variáveis do Sistema acesse “Nova”
    • Cria duas variáveis, uma INCLUDE e o outra LIB
      • Na variável INCLUDE adicione a seguinte linha no campo “Valor da variável”

      C:\Qt\mingw\include

      • Na variável LIB adicione a seguinte linha no campo “Valor da variável”

      C:\Qt\mingw\lib

    • OBS: Caso o caminho da instalaçõa do seu QT não seja C:\QT, troque o pelo caminho correto.

    • Pressione o botão “OK” para confirmar cada uma das configurações.
  2. Entre no console da Qt: Menu iniciar -> Qt SDK (ou outro) -> Qt Command Prompt
  3. Execute o comando: configure -static -no-phonon
  4. Execute o comando: mingw32-make sub-src (Esse comando deve demoras algumas horas, dependendo do seu hardware).

Após efetuar essa recompilação ao gerar algum projeto no QTCreator adicione a seguinte linha no arquivo .pro:

CONFIG += static

 

Pronto, agora para disponibilizar seus programas apenas envie o executável gerado com a dll mingwm10.dll.

CVESS – Cálculo de viabilidade econômica de um sistema solar

Como prometido a alguns posts anteriores, estou disponibilizando aqui o programa CVESS que fiz na faculdade que tem o objetivo de calcular a viabilidade econômica de um sistema solar, o sistema foi todo feito em C e GTK e com geração do relatório em html, o sistema foi feito utilizando o DEV-CPP (mas recomendo o Code::Blocks para desenvolvimento de outros programas), também está incluso a documentação feita com doxgen e o programa sem a interface grafica.
Espero que se programa ajude a quem está começando a programar em C e GTK

Tela do CVESS

Tela do CVESS

.
Para fazer o download, escolha “salvar como”, após salvar renomeie o arquivo com a extensão .zip, metódo utilizado, porque o wordpress não tem opção de upload de arquivos .zip.
Fazer o download -> cvess-engenharia-codigo-fonte-e-documentacao
Qualquer duvida sobre o programa deixe um comentário.

Montando um ambiente de desenvolvimento C e GTK com CodeBlocks no Windows

A seguir descrevo um tutorial sobre como montar um ambiente de desenvolvimento windows, para C com GTK. Como vocês podem perceber mudei minha IDE de desenvolvimento. Estou utilizando hoje o Code::Blocks Nightly Builds por duas razões: Primeiro: O Code::Blocks é uma IDE multi-plataforma, quer dizer funciona muito bem tanto no Windows como no Linux (Farei um tutorial de instalação no linux em outro post) e a Segunda: O Code::Blocks funciona perfeitamente com o GDB “GNU source level debbuger”, um ótimo e maravilhoso depurador. Até porque o ele está em constante desenvolvimento, melhorando a cada dia.

Mas vamos deixa de blábláblá e partir para ação.

Criando uma pasta

Muitas dores de cabeça são evitadas se você criar uma pasta para conter todo o seu ambiente de desenvolvimento.Essa pasta deve ser criada preferencialmente na raíz. Por exemplo: C:\Desenv

Dentro dessa pasta, crie também uma subpasta chamada dlls. Essa subpasta servirá para você colocar todas as bibliotecas. Um bom nome para ela seria: C:\Desenv\dlls.

Inserindo caminhos no path do windows

Muitas pastas, como a pasta de dlls deverão ser adicionadas ao path. Por padrão, o Windows apenas procura por arquivos que estejam no mesmo diretório da aplicação sendo executada ou que estejam listados na variável de ambiente path.

Para acrescentar um diretório ao path, siga os passos abaixo:

1. Abra as propriedades do sistema no painel de controle. A janela também pode ser aberta pressionando simultaneamente a tecla do windows e a tecla break;

2. Clique na aba “Avançado” e em “Variáveis de Ambiente”;

3. Na parte de baixo, procure a variável chamada Path:

path_1.png

4. Clique em editar. Adicione um “;”(sem as aspas) e o seu diretório de dlls (no nosso caso C:\Desenv\dlls).

ScreenShot002.png

Instalando o MinGW e o GDB

O MinGW é a versão para windows de um dos mais famosos compiladores C/C++, o GNU. É ele quem irá transformar nossos arquivos .c e .h em programas executáveis reais. O site oficial do MinGW é: http://www.mingw.org

Para instala-lo:

1. Baixe o “Automated MinGW installer”. Quando este artigo foi escrito, a versão disponível era a 5.1.3. O site de download do MinGW pode ser acessado clicando aqui.

2. Do mesmo site, baixe também o “GNU source level debbuger”, ou simplesmente GDB, na versão 5.2.1. Você encontrará essa versão clicando sobre o nome “GNU source level debbuger” ou procurando na longa lista da parte inferior a tabela principal. Se quiser, pode arriscar também trabalhar com o release candidate 6.6.

3. Rode o MinGW installer e passe a tela de abertura;

4. Selecione a opção Download and Install;

5. Concorde com a licença (I Agree);

6. Você pode escolher entre instalar a versão atual clicando em Current (recomendado), uma pré-release da próxima versão clicando em Candidate ou uma das versões antigas clicando em Previous. Para esse tutorial, clique em Current;

7. Selecione as opções MinGW base tools, g++ compiler e MinGW Make:

mingw.png

8. Selecione o diretório para instalação do aplicativo. É recomendável colocar dentro da sua pasta de desenvolvimento. Por exemplo: C:\Desenv\MinGW

9. Clique em Next e em Install. O aplicativo será baixado e instalado na sua máquina. Para a versão 5.1.3, serão 65.8mb;

10. Após a instalação, adicione a pasta bin do mingw a seu path. ;C:\Desenv\MinGW\bin

11. Rode o instalador do gdb e siga todos os passos da instalação. Ele será instalado no mesmo diretório do MinGW (No nosso caso: C:\Desenv\MinGW)

12. Esse passo é necessário apenas para usuários do Windows Vista: Copie o conteúdo do diretório MinGW\libexec\gcc\mingw32\3.4.5 para o diretório MinGW\bin

Instalando o Code::Blocks

Seria possível escrever nossos próprios programas usando apenas o MinGW e o bloco de notas. Mas essa é uma tarefa tediosa e pouco produtiva. Para facilitar a edição de código, controlar automaticamente o make e ainda fornecer uma interface amigável com o depurador, vamos instalar o Code::Blocks. O Code::Blocks é uma IDE gratuita, leve e poderosa e tem versões para diversos sistemas operacionais. O site oficial do Code::Blocks é http://www.codeblocks.org. Os arquivos de instalação estão compactados no formato 7z. Para descompacta-los você pode usar a última versão do WinRar, ou o 7-zip. O 7-zip pode ser baixado aqui.

Para instalar o Code::Blocks, faça o seguinte:

1. Entre no fórum de Nightly Builds do Code::Blocks. É muito importante que você baixe uma nightly build, não a versão oficial. Não há versões oficiais desde 2005. O fórum pode ser acessado clicando aqui.

2. Procure a versão mais atual possível e clique no link. Haverá um texto como “The 24 December 2007 build (4750) is out”. Os tópicos não estão rigorosamente ordenados por data;

3. Na página, devemos fazer o download indicado em dois dos links. O primeiro é da biblioteca wxwidget.dll, necessária para o funcionamento do CodeBlocks. Será necessário baixa-la apenas uma vez. Depois disso, grave-a no diretório de dlls de sua pasta Desenv;

4. O segundo é o próprio Code::Blocks. Faça o download completo.

5. Crie uma pasta chamada CodeBlocks no seu diretório de desenvolvimento e descompacte o arquivo lá dentro. Por exemplo: C:\Desenv\CodeBlocks

6. No seu diretório de desenvolvimento, crie também uma pasta chamada Projetos, que é onde você gravará os seus projetos feitos no Code::Blocks;

Não será necessário baixar o arquivo mingwm10.7z. O mingw já se encarregou disso. Abaixo, está um exemplo do site de uma nightly build, os retângulos vermelho e púrpura destacam os arquivos a serem baixados:

ScreenShot003.png

Instalando o GTK

Agora iremos instalar o GTK, faça o download do da ultima versão do gtk-dev, ao escrever esse post a versão atual era a 2.10.11 que já vinha com o Glade instalado (Link para versão 2.10.11).

Instalando:

1. No processo de instalação do GTK ao escolher a pasta de instalação insira a pasta de densenvovimento (No nosso caso C:\Desenv\GTK). E bom seguir esse metodo para que fique tudo organizado.

Configurando o Code::Blocks

Para nossa alegria as ultimas versões do Code::Blocks Nightly Builds já vem com um wizard de criação de projetos GTK, sendo necessário apenas escolhe-lo, pois o mesmo irá criar um projeto com um modelo para testar.

1. Criando um novo projeto: File->New->Project…

ScreenShot009.png

2. Escolhendo o wizard “GTK+ project”.

ScreenShot008.png

3. Continuar o procedimento

ScreenShot004.png

4. Insira as informações do seu projeto e escolha a pasta para adicionar-lo (No nosso caso C:\Desenv\Projetos\).

ScreenShot005.png

5. Aqui será pedido o caminho onde o GTK foi instalado, prescione “Next”, pois será na proxima tela a configuração necessária.

ScreenShot006.png

6. Nessa tela adicione os seguintes caminhos e flags.

  • base – C:\Desenv\GTK
  • include – C:\Desenv\GTK\include
  • lib – C:\Desenv\GTK\lib
  • obj – C:\Desenv\GTK\bin
  • cflags – pkg-config –cflags gtk+-2.0
  • lflags – pkg-config –libs gtk+-2.0

Após essas configurações prescione “Close”, o configurador voltará a tela anterior, prescione “Next”, aparecerá um erro, apenas prescione “OK”, e prossigar a configuração.

ScreenShot007.png

7. Finalize a configuração e pronto. OBS: A configuração de caminho e flags só será necessário efetuar um vez.

ScreenShot010.png

8. Prescione F9 para compilar o projeto criado e pronto.

ScreenShot011.png

9. Agora é só trabalhar.

O post acima foi baseado no post do ótimo blog PontoV do Vinícius Godoy de Mendonça, onde ele teve uma ótima ideia de como organizar a instalação dos aplicativos acima citados.

Qualquer dúvida e correção deixe seu comentário.


Del.icio.us :