LinuxForum.Fans
Тема

Сборка модуля

Автор: SterhTG 6 сообщений 2344 просмотров
#56453

Доброе время суток. Откопал статью по программированию модулей в Линукс. Пытаюсь скомпилить тестовый модуль. А не едит. Пример взял с гайда.
Исходники лежат тут /usr/src/linux-2.6.34. ОС Debian Lenny 5.04
Мой Makefile.

text

KERNEL_SRC_DIR = /usr/src/linux-2.6.34
obj-m := hello.o
PWD := (shell pwd)

all: make -C $(KERNEL_SRC_DIR) SUBDIRS=$(PWD) modules obj-m += hello.o

при выполнении make получаю что "make: Цель `all' не требует выполнения команд."
как побороть?

#57011

при попытке скомпилить используя gcc. делаю так gcc -c -Wall -nostdinc -I /usr/src/linux-2.6.34/include/ hello.c.
Полчуаю"/usr/src/linux-2.6.34/include/linux/types.h:4:23: error: asm/types.h: Нет такого файла или каталога"
в исходниках действительно нет такого файла он есть в директории asm-general.
но в каталоге /usr/include есть линк на asm, пакет linux-libc-dev (debian) установлен.
Кто знает как побороть сию бяку?

#57099

Попробуй -I/usr/include. Хотя оно вроде по умолчанию должно, или нет?

#57121

Отыскал ответ на свой вопрос :)
Количество табов имеет значение. Их надобно два. После вставки таба все собирается нормально!

#57179
SterhTG написал:
Количество табов имеет значение. Их надобно два. После вставки таба все собирается нормально!

В Makefile что-ли?

#66876

Да именно в MakeFile не хватало таба. :D

Войдите или зарегистрируйтесь, чтобы ответить.