A mágica por trás dos comandos configure / make / make install

Se você já utilizou algum sabor de Unix para desenvolvimento, provavelmente instalou software a partir do código fonte com esses comandos:

./configure
make
make install

Eu sei que eu digitava bastante isso, mas quando eu comecei a utilizar o Linux eu não entendia realmente o que isso significava, eu só sabia que que quisesse instalar algum software teria que digitar esses comandos.

Continuar lendo A mágica por trás dos comandos configure / make / make install

Criando bibliotecas estáticas no Linux usando C/C++

Um dos aspectos mais importantes das linguagens modernas é o conceito de reutilização de código. Mesmo a linguagem C permite que reutilizemos nosso código usando conceitos como funções e estruturas. A linguagem C++ segue um passo adiante e permite que agrupemos variáveis e funções em classes com o mesmo propósito – a reutilização do código. Ao usar bibliotecas vamos mais fundo nesse conceito – podemos compartilhar código entre programas completamente diferentes.

Continuar lendo Criando bibliotecas estáticas no Linux usando C/C++

Substituir o Dropbox pelo BitTorrent Sync em um Raspberry Pi

BitTorrent Sync é um utilitário gratuito que usa o protocolo BitTorrent para manter pastas sincronizadas entre dispositivos. Pode ser usada com o OSX, Windows, Android e Linux. Não é código aberto, porém, o que pode ser um problema para algumas pessoas. Mas se não for para você, com um pouco de trabalho pode-se usar o btsync como uma solução de sincronização gratuita.

Continuar lendo Substituir o Dropbox pelo BitTorrent Sync em um Raspberry Pi

Usando o GCC e o Make para compilar, lincar e criar aplicações C/C++

O compilador GNU C original foi desenvolvido por Richard Stallman, o fundador do Projeto GNU. Richard Stallman fundou o projeto GNU em 1984 para criar um sistema operacional baseado no Unix completo como software livre, para promover liberdade e cooperação entre usuários de computadores e programadores.
O GCC, antigamente conhecido como “GNU C Compiler“, cresceu várias vezes para suportar muitas outras linguagens, como C++, Objective-C, Java, Fortran e Ada. É referenciado atualmente como “GNU Compiler Collection“. O site base do GCC é o http://gcc.gnu.org/.

Entendendo e editando o arquivo /etc/fstab

Existe um arquivo chamado /etc/fstab em seu sistema Linux. Nesse artigo, veremos o seu conteúdo e como é usado junto com o comando  mount. Quando tiver entendido o arquivo fstab, será capaz de editar seu conteúdo também. Será assumido aqui que você já sabe montar sistemas de arquivos e partições com o comando mount. Se não souber, sugiro a leitura do artigo Mounting tuXfile antes de continuar nesse artigo.

Continuar lendo Entendendo e editando o arquivo /etc/fstab

Internacionalizando um programa C com o gettext

gettext é a biblioteca de internacionalização (i18n) do GNU, e é um dos padrões mais importantes do Software Livre para a internacionalização dos programas. Tradutores são usados para isso, e existem bastantes ferramentas utéis para trabalhar com os dados do gettext, de maneira que é recomendável a todos evitar tentar criar sua própria ferramenta. O Gettext também funciona no Windows, assim não já desculpa.

Continuar lendo Internacionalizando um programa C com o gettext

Criando um jogo com o engine do quake3

Bem vindo ao mundo dos mods para o quake. O Quake3 parece destinado a ser a melhor plataforma para criação de mods – temos aqui a vantagem de programar em C em um IDE padrão da indústria e os recursos de segurança dos qvm. Temos também o melhor engine para gráficos do momento. Sem mencionar o suporte para ctf e bots. Isso nos dá uma plataforma sólida para criação de modificações.

Continuar lendo Criando um jogo com o engine do quake3

Configurando e personalizando o ioQuake3 no Linux

Seguindo o artigo sobre a configuração do Urban Terror, um jogo de tiro em primeiro pessoa baseado no engine ioQuake3, esse artigo se propoe a serum guia para configurar o jogo ioQuake3 original, incluindo personalizações dos cvars, uso de novos mapas, armas e personagens. Esse guia também se aplica com sucesso ao novo jogo OpenArena, que é praticamente o ioQuake3 com armas, mapas e personagens alterados.

Continuar lendo Configurando e personalizando o ioQuake3 no Linux

Implementando um teclado virtual no Linux

A idéia de escr­ever este artigo surgiu da neces­si­dade de um pro­jeto que tra­bal­hei algu­mas sem­anas atrás. O obje­tivo era imple­men­tar um teclado vir­tual, de forma que um processo ou apli­cação pudesse sim­u­lar o pres­sion­a­mento de uma tecla, sem que esta tecla tivesse sido real­mente pres­sion­ada em um teclado físico. Até aí tudo bem, qual­quer bib­lioteca ou toolkit grá­fico decente (X11, DirectFB, Qt, etc) pos­sui algum mecan­ismo para emu­lar entrada de teclado. Mas o obje­tivo era ser inde­pen­dente de bib­lioteca grá­fica, e fun­cionar tam­bém em ambi­ente somente texto. Ou seja, pre­cisava­mos de algo imple­men­tado den­tro do ker­nel.

Referencia (www.sergioprado.org)

Instalando a biblioteca OpenNI (desenvolvimento para Kinect)

Neste artigo, irei mostrar passo a passo como instalar os componentes necessários para acessar no linux o Kinect usando o OpenNI, um SDk open-source para desenvolver aplicações que façam uso dessa nova ferramenta de interface com o usuário lançada pela Microsoft.

Continuar lendo Instalando a biblioteca OpenNI (desenvolvimento para Kinect)

Guia de programação de jogos para Linux

Esse artigo visa explicar os conceitos básicos para quem quer começar a desenvolver jogos que rodem no linux. Aqui falaremos sobre componentes como GCC, SDL ou OpenGL. Para quem desenvolve para o ambiente Windows, o componente básico para efeito de comparação seria basicamente o DirectX.

Continuar lendo Guia de programação de jogos para Linux

Tutorial para criar a estrutura de arquivos do autoconf & automake para seu projeto

Esse é um tutorial resumido para mover um programa baseado no Makefile para uma estrutura baseada nos arquivos autoconf, automake e libtool. Uma visão completa, baseada em um exemplo, será abordada aqui. Se sua estrutura inicial não for exatamente como a proposta, provavelmente você não precisará executar os passos seguintes.

Continuar lendo Tutorial para criar a estrutura de arquivos do autoconf & automake para seu projeto