Programiranje

Linux je izuzetno gostoljubiva platforma za programiranje u gotovo svim jezicima. Sam kernel i osnovne biblioteke (libc) urađene su u C jeziku tako da se C kompajler može smatrati najdorađenijim, ali ne treba zanemariti ni implementacije C++ i kompajlera i interpretera za ostale jezike (Java, Perl, Python, Lisp, Ruby, Eiffel ...).

U osnovi Linux programiranja stoji gcc (GNU Compiler Collection). Sam 'gcc' program je u stvari detektor jezika koji onda poziva odgovarajući kompajler za dato izvorni kod. Trenutačno može da kompajlira programe pisane u sljedećim programskim jezicima: C, C++, Objective-C, Fortran, Java, i Ada. Također podržava proširivanje da bi radio sa drugim jezicima.

Za kompajliranje Pascal koda, može se koristiti proširenje gcc kompajlera GPC (GNU Pascal Compiler), koji je danas prevaziđen od strane Free Pascal kompajlera. Free Pascal nudi kompletnu razvojnu okolinu zajedno sa vrlo naprednim Pascal kompajlerom. Njegova velika prednost je i veliki stepen kompatibilnosti sa Object Pascal jezikom (kojeg koristi Borland Delphi).

Nezaobilazni dio programerske zajednice su editori, a neki od starijih i popularnijih editora su:

Oba editora imaju osvjetljavanje sintakse, automatsko indentiranje koda i slične standardne funkcije. Također postoje i verzije za grafičko okruženje (Xemacs i gvim).

Od IDE okruženja (IDE - Integrated Development Environment; integrirana razvojna okolina) izdvajaju se:

S dodatkom da KDevelop, pored C/C++,podržava i veliki broj drugih jezika.

Pored ovakvog izbora osnovnih alata, Linux nudi i sustave za praćenje izmjena u izvornom kodu sa ciljom da se bilo koja datoteka može vratiti u bilo koje prijašnje stanje. Trenutno je najrasprostranjeniji CVS (Concurrent Versions System), mada se često za jednog korisnika, početnika, preporučuje RCS (Revision Control System). Jedna od alternativa CVS-u je i Subversion koji sebe reklamirao kao "bolji CVS" (gotovo sve komande su kompatibilne sa cvs-om).

 


Najnoviju verziju dokumentacije potrazite na sajtu start.linux.org.ba