makefile:如何向基本名称添加前缀?

发布于 2024-08-02 22:32:42 字数 262 浏览 4 评论 0原文

我有一个这样的文件路径列表:

FILE_PATH := a1.so a2.so bla/a3.so bla/a3.so bla/blo/a4.so....

我需要在基本名称中添加前缀才能得到:

FILE_PATH_PREFIXED := liba1.so liba2.so bla/liba3.so bla/liba3.so bla/blo/liba4.so....

有什么想法吗?

I have a list of file path like that:

FILE_PATH := a1.so a2.so bla/a3.so bla/a3.so bla/blo/a4.so....

I need to add a prefix to the basename in order to get:

FILE_PATH_PREFIXED := liba1.so liba2.so bla/liba3.so bla/liba3.so bla/blo/liba4.so....

any idea?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

淡墨 2024-08-09 22:32:42

看一下 Make 的 addsuffix 函数。

Here is an example we use with `addsuffix` to place obj files one directory below
the source.


SOURCE += MainThread.cpp
SOURCE += Blah.cpp

OBJ=$(join $(addsuffix ../obj/, $(dir $(SOURCE))), $(notdir $(SOURCE:.cpp=.o)))

来自 make 手册

$(addprefix 前缀,名称...)

参数名称被视为一系列名称,由
空白;前缀用作单位。前缀的值为
前置到每个个人名称的前面以及结果
较大的名称之间用单个空格连接。为了
例如,

$(addprefix src/,foo bar)

产生结果src/foo src/bar

Look at Make's addsuffix function.

Here is an example we use with `addsuffix` to place obj files one directory below
the source.


SOURCE += MainThread.cpp
SOURCE += Blah.cpp

OBJ=$(join $(addsuffix ../obj/, $(dir $(SOURCE))), $(notdir $(SOURCE:.cpp=.o)))

From the make manual:

$(addprefix prefix,names...)

The argument names is regarded as a series of names, separated by
whitespace; prefix is used as a unit. The value of prefix is
prepended to the front of each individual name and the resulting
larger names are concatenated with single spaces between them. For
example,

$(addprefix src/,foo bar)

produces the result src/foo src/bar.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文