`
dxflygao
  • 浏览: 67216 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

linux Command

阅读更多

【gcc 编译 】

  如 demo 目录下 有一个 abc.c 需要编译,则:gcc ./abc.c -o abc

执行: ./abc

说明: ./ 表示当前目录下

【关于 make】

  (1) 一个C程序需要 编译,链接。在编译的时候,将产生 .o 目标文件,链接时将产生 可执行文件。

 (2)  如果一个程序有多个源文件要编译,链接,手工去逐个去做将会麻烦很大。make命令就帮我们完成这项工作。

(3)make 命令的执行时依赖于一个 makefile文件(文件名就是 Makefile或者 makefile,无后缀名)。

(4)如何写makefile文件? 举例如下:有三个文件,一个叫 abc.c ,含有 main的主文件;一个叫add.c文件,它有一个add方法;另外一个叫 add.h头文件,对add.c进行声明的一个文件。

abc.c:

#include "stdio.h"
#include "add.h"

int main()
{
     printf("hello unix c !\n");
     printf("sum is :%d\n" , add(2,3));
     return 0;

}
 

 

add.c:

int add(int a,int b)
{
        return a + b;
}
 

add.h

extern int add(int a, int b);

 现在要对三个文件进行编译,链接,一步完成,这时,就要书写 makefile 文件了

test:abc.o add.o
#pay attention : the tab before gcc Command ,hehehehe 
         gcc  abc.o add.o -o test 
abc.o:abc.c add.h
        gcc -c abc.c -o abc.o
add.o:add.c add.h
        gcc -c add.c -o add.o

 对makefile文件内容,做个简单解释如下:

          第一行: 程序 test 将使用两个 目标文件 abc.o 和 add.o,注意第二行的tab分隔符,一定要!!

          第二行:将两个目标文件 链接生产为 test可执行文件

          第三、四行:解释了 abc.o如何产生

          第五、六行:解释了add.o如何产生

 

(5)执行make :在当前目录下输入“ make” ,ok ,产生 test 可执行文件, 在当前目录下执行 使用 “ ./test”

分享到:
评论

相关推荐

    The Linux Command Line 中文版

    《The Linux Command Line 中文版》这本书是一部关于Linux命令行操作的经典教程,由William E. Shotts Jr.撰写。它既适合初学者入门学习,也能够帮助有经验的Linux用户进一步提升技能。本书内容全面,涵盖了Linux...

    The Linux command line.pdf

    《The Linux Command Line》是一本深入介绍Linux命令行操作的指南,作者为William E. Shotts, Jr.。这本书是***项目的组成部分,旨在帮助用户从传统操作系统过渡到未来的Linux系统中。书中详细介绍了命令行在Linux...

    linux command line.pdf

    根据给定的文件信息,我们可以看出,文件中提到的《Linux Command Line》这本书是由William E. Shotts, Jr.所著,属于***项目的一部分,旨在教育用户如何使用Linux命令行,促进传统操作系统用户向未来迁移。本书有多...

    Linux Command Line

    This book is part of the LinuxCommand.org project, a site for Linux education and advocacy devoted to helping users of legacy operating systems migrate into the future. You may contact the Linux...

    linux command (全)

    linux command (全) 介绍各种linux指令代码,相当的全。

    The Linux Command Line英文版_terminal_linux_

    《The Linux Command Line》是一本深入探讨Linux命令行界面的权威指南,对于想要掌握Linux操作系统核心功能的用户来说,这是一本不可或缺的参考书。在Linux的世界里,终端(Terminal)或控制台(Console)是与系统...

    Apress - Beginning The Linux Command Line, 2009.zip

    《Apress - Beginning The Linux Command Line, 2009》是一本专为初学者设计的Linux命令行指南。这本书全面介绍了Linux操作系统的基础知识,特别是关于命令行界面的使用,帮助用户掌握在没有图形化界面的情况下操作...

    The Linux Command Line中英文合集.zip

    The Linux Command Line电子书中英文版本合集。学习 Linux 命令行会让你受益匪浅,给你极大的回报。如果你认为, 现在你已经是高手了。别急,其实你还不知道什么才是真正的高手。不像其他一些计算机技能, 一段时间...

    The Linux Command Line 中文版 高清

    The Linux Command Line 中文版 高清

    OS + linux command / Linux Command / Linux command / linux Command

    标题中的“OS + Linux Command”指的是操作系统,特别是Linux操作系统下的命令行工具。在Linux系统中,命令行界面是用户与操作系统交互的主要方式之一,通过输入各种命令,用户可以执行各种任务,如文件管理、进程...

    The Linux Command Line

    Designed for the new command line user, this 555-page volume covers the same material as LinuxCommand.org but in much greater detail. In addition to the basics of command line use and shell scripting,...

    The Linux Command Line A Complete Introduction

    《The Linux Command Line: A Complete Introduction》这本书不仅提供了丰富的实践知识,还强调了对命令行工具背后哲学的理解,让读者能够深入领会Linux桌面机如何继承自过去的Unix超级计算机的遗产。通过学习这本...

Global site tag (gtag.js) - Google Analytics