linux驱动编译错误,无法使用$(shell pwd)/xxx作为包含路径

发布于 2024-11-27 12:37:24 字数 539 浏览 1 评论 0原文

当我编译我的linux驱动器时,我发现一个问题:

我有一些方法可以通过$(shell pwd)定义包含路径

A相对路径,但它不起作用:

MOD_INC=$(shell pwd)/include
EXTRA_CFLAGS+=-I$(MOD_INC)

我发现:$(shell pwd)==/home /myname/prj_svn

B abosulte 路径,它有效:

MOD_INC=/home/myname/prj_svn/include
EXTRA_CFLAGS+=-I$(MOD_INC)

C 定义一个路径,它有效:

PRJ_PATH=/home/myname/prj_svn
MOD_INC=$(PRJ_PATH)/include
EXTRA_CFLAGS+=-I$(MOD_INC)

我不知道为什么?

我在一个应用程序项目中尝试了它们,它们都可以工作。

感谢您的帮助!

When I compile my linux drive, I find a problem:

I have some ways to define the include path

A relative path by $(shell pwd), but it doesn't work:

MOD_INC=$(shell pwd)/include
EXTRA_CFLAGS+=-I$(MOD_INC)

I found: $(shell pwd) == /home/myname/prj_svn

B abosulte path, it works:

MOD_INC=/home/myname/prj_svn/include
EXTRA_CFLAGS+=-I$(MOD_INC)

C define a path, it works:

PRJ_PATH=/home/myname/prj_svn
MOD_INC=$(PRJ_PATH)/include
EXTRA_CFLAGS+=-I$(MOD_INC)

I don't know why?

I try them in an application project, all of them can work.

thanks for your help!

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

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

发布评论

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

评论(1

无悔心 2024-12-04 12:37:24

Make 在构建时进行了大量的目录更改;我不想在任何特定时间点依赖 pwd 的值。

如何定义一个名为 MODULE_HOME 的环境变量,设置为 /home/myname/prj_svn,并编写与之相关的所有路径?

Make does quite a lot of directory changing as it builds; i wouldn't want to rely on the value of pwd at any particular point in time.

How about defining an environment variable called something like MODULE_HOME, set to /home/myname/prj_svn, and writing all your paths relative to that?

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