GCC编译文件步骤

利用ultraEdit的编译环境:

比如:建立hello.c文件,

#include <stdio.h>

int main(void)
{
 printf("hello, world!/r/n");
 return 0;
}

 第一步,在shell环境下,touch命令建立一个文件,

         如:touch  hello.c

 第二步:确定一下linux系统的FTP服务是否开启,必须在Root环境下

         命令:su  - root:用来切换的根目录环境下,键入密码

        打开配置文件 cd  etc/init.d

               键入命令 ls:查看当前目录,看到vsftpd,

              vsftpd中可以查询ftp :如,status:查询ftp服务的状态;stop:停止ftp服务;start:开启ftp服务;restart:重启服务

        查询命令:为 ./vsftpd status ;

       开启命令:为 ./vsftpd start;

      第三步:切换用户环境  su - user(用户名);

键入命令  : gcc  -o hello hello.c  或         gcc hello.c -o hello                                                         

                   ./hello

    输入:hello,world

说明:

    列子:

                 将hello.i编译为目标代码,这可以通过使用-c参数来完成:   
                                                                               
                                                                               
                                #  gcc -c hello.i -o hello.o        

       GCC默认将.i文件看成是预处理后的C语言源代码,因此上述命令将自动跳过预处理步骤而开
   始执行编译过程,也可以   

使用-x参数让GCC从指定的步骤开始编译(如上列子所述).最后一步是将生成的目标文件链接成可执行文件  :                                                                              
                                                                               
            #  gcc hello.o -o hello                               

     用GCC能够很好地管理这些编译单元.假设有一个由foo1.c和foo2.c两个源文件组成的程序 
,为了对它们进行编译, 并最终生成可执行程序foo,可以使用下面这条命令:                                    
                                                                               
                #  gcc foo1.c foo2.c -o foo    

如果同时处理的文件不止一个,GCC仍然会按照预处理、编译和链接的过程依次进行.如果深
究起来,上面这条命令大 致相当于依次执行如下 三条命令:                                                  
# gcc -c foo1.c -o foo1.o                                                      
# gcc -c foo2.c -o foo2.o                                                      
# gcc foo1.o foo2.o -o foo                                                     
                                                                               
在编译一个包含许多源文件的工程时,若只用一条GCC命令来完成编译是非常浪费时间的.假
设项目中有100个源文件需要编译,并且每 个源文件中都包含10000行代码,如果像上面那样仅用一条GCC命令来完成编译工作,那么GCC需要将每个源文件都重新编译一遍,然后再全部连接起来. 很显然,这样浪费的时间相当多,尤其是 当用户只是修改了其中某 一个文件的时候,完全没有必要将每个文件都重新编译一遍,因为很多已经生成的目标文 件 是不会改变的.要解决这个问题,关键是要灵活运用GCC,同时还要借助像Make这样的工具.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值