你应该不会期待在 Linux 有 GW/Qbasic 吧?? 在 Un*x 中, 系统内定的语言是 C, 不管你是喜欢还是讨厌它. 当然还有其它的语言可以用 (FORTRAN, Pascal, Lisp, Bacic .. 但没有 Turbo Pascal ^Q^ ).
假设你懂得 C.. 假如你曾经被 Turbo C++ 或是它在 DOS 下的兄弟们宠爱过, 那这里 有两句话恐怕不啻晴天霹雳: Linux 下的 C 编译器叫作 gcc, 但, 它没有 IDE 环境, 没有线上求助系统, 没有整合式除错器,..等等. 只有一个命令列的编译器, 但强大 且有效率. 以下这个命令可以编译你已写好的 hello.c : $ gcc hello.c 这样会产生一个 a.out 的执行档. 假如你想让 gcc 造出其它档名的执行档, 键入 $ gcc -o hola hello.c 要联结一个程式库, 你要在 gcc 後加上一个 -l<arg> 的选项. 比如说要联结 math library $ gcc -o mathprog mathprog.c -lm ( -l<arg> 会迫使 gcc 联结 /usr/lib/lib<arg>.a; 因此, -lm 会联结 /usr/lib/libm.a) 对小程式来说, 这是一个好方法. 但是若程式是由数个 source files 组成, 我们可能 会需要 make 这个程式. 假设我们已经写好一个语法分析程式 parser.c, 它 #include 了两个 .h : parser.h , xy.h. 现在, 有个 calc.c 需要使用到 parser.c 中的功能. 这样该怎麽办?? 我们可以写一个叫作 makefile 的档案, 告诉编译器所有 source 和 object files 间的关系, 在这个例子里, # This is makefile, used to compile calc.c # Press the <TAB> key at appropriate positions! calc: calc.o parser.o <TAB>gcc -o calc calc.o parser.o -lm # calc depends on two object files: calc.o and parser.o calc.o: calc.c parser.h <TAB>gcc -c calc.c # calc.o depends on two source files parser.o: parser.c parser.h xy.h <TAB>gcc -c parser.c # parser.o depends on three source files # end of makefile. 储存, 然後键入 $ make 以便编译程式. 或者, 这个档案被存在 calc.mak 里, 那麽就必需 $ make -f calc.mak 当然, 请参阅 Man pages 以得到更多的资讯. 此外, 某些函数的用法在 man pages 可以找得到, 例如 $ man printf
|