首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有没有可能构建lttng-probe-...在lttng-modules树之外的模块?

有没有可能构建lttng-probe-...在lttng-modules树之外的模块?
EN

Stack Overflow用户
提问于 2015-01-15 02:54:58
回答 1查看 194关注 0票数 0

我希望所有的源文件都放在一个地方,所以我的目标是在lttng-modules目录之外构建lttng-probe-xxx模块。我已经创建了简单的Makefile,但在编译过程中,当我尝试加载模块时,收到消息"lttng_probe_register“和"lttng_probe_unregister”未定义(在编译过程中相同)。

Makefile:

代码语言:javascript
复制
INCLUDES = -I. -I$(LTTNGDIR)/probes -I$(ROOTPWD)/include -I$(KERNELDIR)/include
KBUILD_CFLAGS += -g $(INCLUDES)

all: kernel_modules
obj-m   += lttng-probe-hello.o
PWD     := $(shell pwd)

kernel_modules:
    $(MAKE) -C $(KERNELDIR) SUBDIRS=$(PWD) modules`

KERNELDIR是导出变量,其中是Linux内核的src。

LTTNGDIR是导出变量,其中是lttng模块的src。

可以将这两个命令从lttng-prospeces.c链接到我的lttng-probe-hello.ko吗?

代码语言:javascript
复制
EXPORT_SYMBOL_GPL(lttng_probe_register);
EXPORT_SYMBOL_GPL(lttng_probe_unregister);
EN

回答 1

Stack Overflow用户

发布于 2015-01-15 22:21:27

问题是Makefile不能从lttng- Module.symvers中看到模块,只能从Linux内核中看到模块。为了解决这个问题,我使用了KBUILD_EXTRA_SYMBOLS。

代码语言:javascript
复制
KBUILD_EXTRA_SYMBOLS += "$(LTTNGDIR)/Module.symvers"
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27950396

复制
相关文章

相似问题

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