zoukankan      html  css  js  c++  java
  • Makefile

    详情请参见《跟我一起写Makefile》

    Makefile:

    使用make编译软件源码包一般步骤是:
    #./configure    (生成Makefile文件)
    #make clean      (进行清理工作)
    #make          (编译源文件)
    #make install      (安装可执行文件)

    我们要写一个Makefile文件来告诉make命令如何编译和链接我们的文件。
    Makefile 书写规则
      目标:依赖文件列表
      <Tab>命令列表

    vi Makefile 或 vi makefile  最好用M,新建一个Makefile文件,在其中编写
    如: main: main.c file1.o file2.o
                gcc –o main main.c file1.o file2.o
         file1.o: file1.c
                gcc –c –o file1.o file1.c
         file2.o: file2.c
                gcc –c –o file2.o file2.c
    当一行写不下时,可以用\ 来换到下一行写
    1. 命令一定以tab开头
    2. 默认make第一个目标
    3. 不用写.h文件,C程序编译过程
    4. 不要一个目标依赖多个.c文件

    变量:就像C中的宏定义  声明:变量名=变量值
    变量在声明时应赋初值,在使用时,在变量名前加上$号,最好用小括号()把变量括起来:如:$(OBJECT)
    Makefile的自动推导规则,只要make看到 .o文件,就自动把 .c文件加在依赖关系中,不用每个 .o后面都写编译命令。

    伪目标:不是一个真正的文件明,执行它后面所规定的命令
    如:  clean:
               rm *.o main
    执行 make clean 就会把所有目标文件和 main这个可执行文件删除
          install:
               cp main /bin
    执行 make install 就会把可执行文件加到环境变量中,然后直接输入main就能执行该程序
    也可以在前面加上 .PHONY: clean  说明clean 是一个伪目标
    在每条命令前面加上 @ 就不会显示该指令,只执行。如:@rm *.o main 执行时不会显示该语句。  echo 回显示字符,如果想显示该命令 就这样写:@echo Install!


    RPM包的安装方法:
    rpm(redhat package manager)是RedHat公司开发的软件包安装和管理程序,它以数据库的形式来记录安装软件的信息.
    rpm软件包通常具有类似foo-1.0-1.i386.rpm的文件名,其中包括软件包的名称(foo)、版本号(1.0)、发行次数(1)、硬件平台(i386)、rpm(扩展名)
    安装: rmp -ivf  文件全名
    卸载: rmp –e 文件名
    查询软件包 rmp –qi 文件名


    ...

  • 相关阅读:
    类的有参方法
    WPF 中的设备无关单位
    Skelta BPM.NET 2006 初探
    Reporting Services Handscript
    C语言I博客作业03
    C语言I博客作业02
    C++类的运算符重载和转换函数结合的问题
    C++ 函数返回类成员的问题
    kaggle 利用linear regression 进行房价预测
    android Could not open: c:\。。。。\.android/avd/XXXX.ini 问题和解决方法
  • 原文地址:https://www.cnblogs.com/qinkai/p/2429705.html
Copyright © 2011-2022 走看看