社区
Linux/Unix社区
帖子详情
$(shell pwd)和$(pwd)有什么区别
heytry4
2011-01-09 11:59:56
俺在一个Makefile中看到这样的语句$(shell pwd)
俺知道$(pwd)是执行pwd这条指令, 但不清楚$(shell pwd)中的shell有什么用,请高手帮忙.
...全文
27449
9
打赏
收藏
$(shell pwd)和$(pwd)有什么区别
俺在一个Makefile中看到这样的语句$(shell pwd) 俺知道$(pwd)是执行pwd这条指令, 但不清楚$(shell pwd)中的shell有什么用,请高手帮忙.
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
chenzhengnan
2012-08-16
打赏
举报
回复
非常感谢
dengqianyi
2012-04-26
打赏
举报
回复
学习了,非常感谢
zcf_tarena
2012-04-17
打赏
举报
回复
非常感谢
azhujudah
2011-08-01
打赏
举报
回复
非常感謝!!
knief不懂就问
2011-06-27
打赏
举报
回复
同感谢
heytry4
2011-01-10
打赏
举报
回复
非常感謝
bluejays
2011-01-10
打赏
举报
回复
1
这个shell应该是make里面的一个函数。
从著名的《跟我一起写 Makefile》里面找到这么一段:
八、shell函数
shell函数也不像其它的函数。顾名思义,它的参数应该就是操作系统Shell的命令。它和反引号“`”是相同的功能。这就是说,shell函数把执行操作系统命令后的输出作为函数返回。于是,我们可以用操作系统命令以及字符串处理命令awk,sed等等命令来生成一个变量,如:
contents := $(shell cat foo)
files := $(shell echo *.c)
注意,这个函数会新生成一个Shell程序来执行命令,所以你要注意其运行性能,如果你的Makefile中有一些比较复杂的规则,并大量使用了这个函数,那么对于你的系统性能是有害的。特别是Makefile的隐晦的规则可能会让你的shell函数执行的次数比你想像的多得多。
bluejays
2011-01-10
打赏
举报
回复
Makefile里面好像必须加shell,直接用$(pwd)好象不行。
我刚才试了一下,把这几行保存成Makefile,然后make可以看到结果
P=$(shell pwd) # 这样可以输出路径
#P=$(pwd) # 这样没有输出
all:
echo $P
Linux 2.6下内核模块的MAKEFILE
Linux 2.6 下内核模块的Makefile # Makefile 2.6 obj-m += hello.o KDIR:=/lib/modules/$(
shell
uname -r)/build #
PWD
=$(
shell
pwd
) all: make -C $(KDIR) M=$(
PWD
) modules clean: make -C $(KDIR) M=$(
PWD
) clean obj-m := hello.o表示编译后生成hello.o模块。 $(KDIR) 指定了内核源码的路径,“M=”表示这是个外部模块,M=$(
PWD
)
驱动模块makefile的编写
首先
pwd
(Printf Work Directory)的意思,在终端输入
pwd
,显示当前目录的绝对路径。 Makefile中”
PWD
=$(
shell
pwd
) “的意思详解: 1:$(
pwd
)是执行
pwd
这条指令 2:Makefile里面好像必须加
shell
,直接用$(
pwd
)好象不行。 我刚才试了一下,把这几行保存成Makefile,然
linux
pwd
命令详解
linux
pwd
命令
基于kernel3.0的内存盘代码实例
本篇基于vmlloc申请中大额内存,来创建一个内存块设备,可以挂载文件系统,可以分区。读写可以用fio测试,不过正常来说fio意义不大,感觉像是块设备本身限制了内存的性能。 本次代码是基于kernel3.0以上,kernel4.0以下的环境,为教学代码。 编译方法如下: obj-m += test_ram.o all: make -C /lib/modules/$(
shell
uname -r)/build M=$(
PWD
) modules clean: make -C /lib/modules/$(
shell
uname -r)/build M=$(
PWD
) clean 使用环境:centos7.9
Linux
Shell
实现简单的Linux
Shell
,使之至少支持cd、
pwd
、logout、ls等命令。 了解Linux
Shell
的基本设计思路
Linux/Unix社区
23,217
社区成员
74,540
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 应用程序开发区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章