Introduction to Free Software - SELF | Sharing Knowledge about ...
Introduction to Free Software - SELF | Sharing Knowledge about ...
Introduction to Free Software - SELF | Sharing Knowledge about ...
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