linux c编程

没有IDE

编写

  vi、emacs、vs code软件

  /c_program目录

  设置Vi

    tab键4个空格

    设置行号

  

编译

  gcc

  gcc -v 自带的,编译的是x86目标

  参数

    -c     编译不链接

    -o     文件名

    -g     调试

    -v      编译过程

    -O     优化编译

    -O2   更大的优化

  检测语法bug

    err

    warning

make及Makefile文件

  c文件较多,管理工具,自动化

  如果修改了某几个源文件,则只编辑这几个源文件

  如果某个头文件被修改了,则重新编译所有包含头文件的源文件

  3个源文件2个头文件例子

    gcc main.c  calcu.c  input.c  -o  main     生成一个main可执行文件

    看看之前的编译时间,再一次执行,看看编译的时间,发现时间变了,又编译了一次,显然是不合理的

    最好的办法是哪个文件被修改了,只编译这个被修改的文件即可;其它没有修改的文件就不需要再次重新编译了;gcc -c main.c      gcc -c input.c     gcc -c  calcu.c     gcc main.o  input.o  calcu.o  -o  main ;这样重复性的工作,需要一个软件来替我们做

    makefile语法      

 1 main: main.o  input.o calcu.o
 2     gcc -o main main.o input.o calcu.o
 3 main.o:main.c
 4     gcc  -c  main.c
 5 input.o:input.c
 6     gcc -c   input.c
 7 calcu.o:calcu.c
 8     gcc -c  calcu.c
 9 clean:
10     rm *.o
11     rm main

    执行make,生成main

    执行make clean,删除.o、main

    修改一个源文件,执行make,发现只编译修改的源文件,并链接

Makefile基本语法

  待整理    

    

 

posted @ 2021-05-15 15:16  我爱茜茜公主  阅读(73)  评论(0)    收藏  举报