zoukankan      html  css  js  c++  java
  • Makefile里调用Shell注意点

    http://www.linuxidc.com/Linux/2012-04/59093.htm

    大家经常编写和使用Makefile, Makefile里面也经常用到shell, 但对其中一些需要注意的地方未必
    会去留意, 这里列出几个来, 不知是否对大家有用。
    1. 注意Makefile的变量和shell变量, 看如下示例:
     
      DIRS = src bin lib
       all:
        @for i in $(DIRS); /
         do /
             echo " " $$i; /
         done
       大家看出来了吗? DIRS是makefile变量,i是shell变量, 使用的时候:
       $(DIRS), $$i区别还是蛮大的。
     
    2. 每一行的shell都是在独立的进程中运行的,如果你在上一行为一个变量赋值, 不要指望它在下一行有效, 比如:
      @CROSS_COMPILE=mipsel-linux-
       @echo $(CROSS_COMPILE)
     
       打印的结果不会是mipsel-linux-,如果你想得到所要的结果, 就并为一条shell吧:
       @CROSS_COMPILE=mipsel-linux- ; echo @echo $(CROSS_COMPILE)
        或者:
       @CROSS_COMPILE=mipsel-linux- ; /
        echo @echo$(CROSS_COMPILE)
      
    3. shell一定要写在target里, 否则你写了也白费劲, 是会被make忽略掉的.
       @echo "Building all..."
       all:
        @echo "Begin"
       只会打印Begin.linux

  • 相关阅读:
    U盘分区 将一个u盘分为3个区
    InnoDB索引最通俗的解释
    Centos7 安全加固
    final/static
    Java继承,方法重写
    UnrealEngine4血溅效果
    UnrealEngine4第一人称射击游戏之触碰掉血与掉盔甲功能实现
    UnrealEngine4第一人称射击游戏UI
    String字符串
    构造方法
  • 原文地址:https://www.cnblogs.com/LiuYanYGZ/p/5438673.html
Copyright © 2011-2022 走看看