LINUX.ORG.RU

Сборка внешего модуля ядра из нескольких фалов - ошибка линковки


0

0

Добрый день! Есть некий модуль ядра. Состоит из нескольких файлов buffer.c hboot.c crc32.c И есть каталог с ядром, для которого эти файлы собираются в модуль hboot.ko (xboot.ko просто параллельно собирается - не обращайте на него внимание)

Все вроде бы сделано правильно, но при сборке командой

make -C $HOME/build/kernel M=`pwd` modules
вот такой вот Makefile:
EXTRA_CFLAGS += -D__PLAT_TI_OMAP3430__ -Wall -march=armv7-a -mtune=cortex-a8 -mfpu=neon

obj-m:= hboot.o xboot.o
hboot-objs: hboot.o buffers.o crc32.o xboot.o

он выдает ошибки линковки

hboot.ko: undefined symbol "some_function"
...
Все ненайденные линковщиком символы - это символы из файла buffers.c, который по идее он тоже должен включать в модуль, но не делает этого.

В чем проблема? Как заставить его собирать и линковать правильно?

★★★★★
Ответ на: комментарий от arsi

Это сделает новый модуль buffers.ko и новый модуль crc32.ko

Проверено

А надо hboot.o, buffers.o и crc32.o собрать в модуль hboot.ko

XVilka ★★★★★
() автор топика
Ответ на: комментарий от arsi

Спасибо! Не заметил очевидного ))) Все работает просто с равно

XVilka ★★★★★
() автор топика
$ cat kernels/linux-2.6.10/fs/ext3/Makefile 
#
# Makefile for the linux ext3-filesystem routines.
#

obj-$(CONFIG_EXT3_FS) += ext3.o

ext3-y	:= balloc.o bitmap.o dir.o file.o fsync.o ialloc.o inode.o \
	   ioctl.o namei.o super.o symlink.o hash.o resize.o

ext3-$(CONFIG_EXT3_FS_XATTR)	 += xattr.o xattr_user.o xattr_trusted.o
ext3-$(CONFIG_EXT3_FS_POSIX_ACL) += acl.o
ext3-$(CONFIG_EXT3_FS_SECURITY)	 += xattr_security.o
xydo ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.