在C盘根目录建立文件夹DJGPP,C:\DJGPP,将下载的文件全部拷贝到这个文件夹.进入dos窗口,打开文件夹C:\DJGPP,并运行命令:
unzip32 *.zip.
用IE打开README.1ST,按其方法配置djgpp。
步骤如下:
设置环境变量
右击“我的电脑”——“属性”——“高级”——“环境变量”
添加C:\DJGPP\BIN;%PATH%到path变量,注意与前面间隔要加分号’ ; ’
添加D:\nasm;%PATH%到path变量
新建变量DJGPP为C:\DJGPP\DJGPP.ENV
错误信息定向
在djgpp里有个程序叫redir.exe,它可以将编译的信息输入到指定的txt文件中,其用法如下:
redir -o xx.txt -eo 接编译命令
问题是Windows已经有自己的redir.exe,两个程序互相冲突,运行会提示:The VDM redirector is already loaded ,解决办法是把djgpp中的bin\redir.exe改名为djredir.exe,
打开DOS窗口,进入D:\nasm,在命令行中输入:djredir -o 01.txt -eo nasm 1.asm -o 1.com,编译信息会保存在当前目录下的01.txt文件中。
为什么要用djredir.exe,因为编译程序时DOS窗口会闪过,看不清里面的内容,所以定向输出到txt文件里慢慢看结果。
使用批命令
到目前为此,每次编译程序时都要打开DOS窗口,很是麻烦,现在我们看看用批命令怎么来编译程序:
第一个c程序“Hello world”
新建目录:D:\GX\ya\code
在此目录下用Notepad++编写以下代码,存为Helloworld.c 文件:
#include<stdio.h>
#include<stdlib.h>
int main(){
printf("Hello world! ");
system("pause"); //加此句是运行时保留DOS窗口以便看清内容
return 0;
}
新建目录:D:\GX\ya\out 这里用来存放我们编译程序的结果
在D:\GX\ya目录下编写一个djgpp.bat,内容为djredir -o 30.txt -eo gcc code/Helloworld.c -o out/ Helloworld.exe
意思是生成一个可执行文件名为Helloworld.exe存放在out目录下,并且从定向生成一个30.txt文件,里面包含编译过程中出现的错误提示信息。
双击djgpp.bat,在目录out中生成Helloworld.exe
双击Helloworld.exe,显示Hello world!
把开头的first.asm复制到code目录,用相似的办法看看能不能编译。