zoukankan      html  css  js  c++  java
  • Makefile中的$(@:_config=)什么意思?【转】

    本文转载自:https://blog.csdn.net/a8082649/article/details/24252093

    已经编译出bin文件了,现在研究一下makefile,把遇到的问题记录下来:

    1.  $(@:_config=)什么意思?

    网上查到如下解释

    这里使用了Makefile中的替换引用规则,类似常看到的例子 obj=$(srcfiles:%.c=%.o): 由.c得到对应的.o文件.

    这里是一样的道理:
     $(@:_config=) 
     
     @代表的是target smdk2410_config, 那么$(@:_config=)就是将smdk2410_config中的_config替换为空!得到smdk2410; 你可以用echo自己打印出来看看就明白了! 

    smdk2410_config : unconfig
      @echo $(@:_config=) # 打印出来看看吧
      @$(MKCONFIG) $(@:_config=) arm arm920t smdk2410 NULL s3c24x0 

    但有一点不明白@代表目标吗?印象里好像是$@ 才代表目标,做了个测试 “

    all:

       @echo $@   输出是all

       @echo @    输出是@

       @echo $(@) 输出是all

    所以我认为符号@在$()中和$@是一样的

    2. 目标 :依赖

            命令

      命令是否可以直接是一个文件名?

    做了个测试证明可以:

    在外面建立一个makecfg  里面输入 echo i am here !

    在makefile 里

    all:

        @(路径/makecfg)

    输入命令make all

    就会输出 i am here !

    个人分类: Linux
  • 相关阅读:
    discuz $_G变量
    php & 引用
    discuz模板引擎
    nginx正则表达式
    linux系统安装 dig和nslookup命令
    linux中的各种$号 位置参数变量
    memcache图形管理工具
    mysql 注入问题
    pycharm 连接mysql失败
    Bootstrap 常用网站
  • 原文地址:https://www.cnblogs.com/zzb-Dream-90Time/p/9009680.html
Copyright © 2011-2022 走看看