Chinaunix首页 | 论坛 | 博客
  • 博客访问: 121373
  • 博文数量: 30
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 280
  • 用 户 组: 普通用户
  • 注册时间: 2015-12-14 10:05
个人简介

坚持学习,每天进步一点点……

文章分类

全部博文(30)

文章存档

2017年(13)

2016年(17)

分类: LINUX

2016-01-27 13:49:01

subst详解

    看着教材上的一个subst示例原样make一下,各种错误,找了好多的可能,终于解决了,坑死人了,记录下来。
    subst是makefile文件中的字符串替换函数,用于将字符串的字符或子串替换成指定的内容,函数的返回值是替换后的字符串。使用的格式如下:
    $(subst $(from),$(to),$(text))
    该函数将$(text)中的$(from)字符或者是串替换成$(to)。在makefile中还需要注意不能在规则中对变量进行赋值,即不能写成如下形式:
    ret:= 
    subst:
        $(ret)=$(subst $(FROM),$(TO),$(STR))  
        @echo -n "the result is: " 
        @echo $(ret)
    此时subst规则中包含赋值,会报错/bin/sh =$(ret) not found。应将赋值写于规则之外,如下:
    ret:=$(subst $(FROM),$(TO),$(STR))

    subst:  
        @echo -n "the result is: " 
        @echo $(ret)


    
阅读(1918) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~