03.12.2012 Views

Introduction to Free Software - SELF | Sharing Knowledge about ...

Introduction to Free Software - SELF | Sharing Knowledge about ...

Introduction to Free Software - SELF | Sharing Knowledge about ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

© FUOC • P07/M2101/02709 113 <strong>Free</strong> <strong>Software</strong><br />

Given the diversity of languages, character sets and cultural contexts, C pro-<br />

grammers (and programmers using many other languages) often use gettext<br />

(http://www.gnu.org/software/gettext) [31] and the internationalisation opti-<br />

ons of the standard C library (http://www.gnu.org/software/libc) [34] for pro-<br />

gramming applications that may be used easily in any cultural environment<br />

and in the execution time.<br />

Thus, when we receive a source package, it is most likely written in C, packaged<br />

with tar, compressed with gzip, made portable with au<strong>to</strong>conf and associated<br />

<strong>to</strong>ols, and can be built and installed with make. Its installation will be carried<br />

out in a very similar process <strong>to</strong> the following one:<br />

tar xzvf package-1.3.5.tar.gz cd package-1.3.5 ./configure make make install<br />

8.3. Integrated development environments<br />

An IDE (integrated development environment) is a system that makes software<br />

developer's work easier, by solidly integrating the edition oriented at the lan-<br />

guage, the compilation or interpretation, debugging, performance measures,<br />

incorporation of source code <strong>to</strong> a source control system, etc., normally in a<br />

modular fashion.<br />

Not all free software developers like these <strong>to</strong>ols, although their use has gradu-<br />

ally expanded. In the world of free software, the first one <strong>to</strong> be extensively<br />

used was GNU Emacs (http://www.gnu.org/software/emacs/) [33], star work<br />

of Richard Stallman, written and extendable <strong>to</strong> Emacs Lisp, for which there<br />

are mountains of contributions.<br />

Eclipse (Eclipse - An Open Development Platform) [23] can be considered<br />

<strong>to</strong>day's reference IDE in the world of free software, with the disadvantage<br />

that it works better (around May 2007) on a non-free virtual Java machine<br />

(Sun's which is hoped <strong>to</strong> become free soon anyway). Other popular environ-<br />

ments are Kdevelop (http://www.kdevelop.org) [42] for KDE, Anjuta (http://<br />

www.anjuta.org) [6] for GNOME, Netbeans (http://www.netbeans.org) [51] of<br />

Sun for Java and Code::Blocks (http://www.codeblocks.org) [18] for C++ ap-<br />

plications.<br />

8.4. Basic collaboration mechanisms<br />

<strong>Free</strong> software is a phenomenon made possible by the collaboration of distribu-<br />

ted communities and that, therefore, requires <strong>to</strong>ols <strong>to</strong> make that collaboration<br />

effective. Although for a long time magnetic tapes were physically posted, the<br />

speedy development of free software began once it became possible <strong>to</strong> com-<br />

municate rapidly with many people and <strong>to</strong> distribute program codes <strong>to</strong> them<br />

or reply with comments and patches. For convenience, rather than sending

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!