首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >连接GNU Make中列表的元素

连接GNU Make中列表的元素
EN

Stack Overflow用户
提问于 2009-10-09 04:45:17
回答 2查看 14.1K关注 0票数 28

在我的makefile中,我有一个带有目录列表的变量,如下所示:

代码语言:javascript
复制
DIRS = /usr /usr/share/ /lib

现在,我需要从它创建PATH变量,这基本上是相同的,但使用分号作为分隔符:

代码语言:javascript
复制
PATH = /usr:/usr/share/:/lib

我该怎么做?我的意思是,如何使用分号而不是空格来连接DIRS列表的元素?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-10-09 08:55:11

您可以使用$(subst)命令,结合一个小技巧来获得一个值为单个空格的变量:

代码语言:javascript
复制
p = /usr /usr/share /lib
noop=
space = $(noop) $(noop)

all:
        @echo $(subst $(space),:,$(p))
票数 40
EN

Stack Overflow用户

发布于 2018-07-10 00:38:01

您使用':‘作为分隔符,因此您是在Linux上。考虑使用bash工具链将连续的空格替换为单个冒号

代码语言:javascript
复制
PATH := $(shell echo $(DIRS) | sed "s/ \+/:/g")
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1541844

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档