реклама на сайте
подробности

 
 
> компиляция драйвера под Arm
user113
сообщение Apr 14 2008, 06:47
Сообщение #1





Группа: Новичок
Сообщений: 12
Регистрация: 11-04-08
Пользователь №: 36 679



такая проблема - при попытке скомпилить драйвер под Arm выводятся ошибки типа

/root/arm/buildroot/project_build_arm/M7-EK/linux-2.6.22.10/include/asm/arch/hardware.h:30:2: error: #error "Unsupported AT91 processor"

/root/arm/buildroot/project_build_arm/M7-EK/linux-2.6.22.10/include/asm/arch/io.h:36: error: AT91_BASE_SYS undeclared (first use in this function)

ссылки в asm и arch - правельные

сам драйвер:
Код
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/init.h>

#define DEVICE_NAME "u2dev" // Device name as it appears in /proc/devices
#define MAJOR_NUM 253

int init_module(void);
void cleanup_module(void);


int init_module(void)
{
    printk("This is PKV/U3 driver.\n");

    return 0;
}

// ----------------------------------------------------------------------

void cleanup_module(void)
{
}

как видите - простейший вариант

make-файл:

Код
TARGET ?=
TARGET = arm-linux

PREFIX ?=
PREFIX = /root/arm/buildroot/build_arm/staging_dir/usr

ARCH ?=
ARCH=arm

etcdir =        ${PREFIX}/etc
sbindir =       ${PREFIX}/sbin
usrbindir =     ${PREFIX}/usr/bin
usrsbindir =    ${PREFIX}/usr/sbin

CROSS_COMPILE ?=
CROSS_COMPILE = ${TARGET}-

CC = $(CROSS_COMPILE)gcc
LD = $(CROSS_COMPILE)gcc
AR = $(CROSS_COMPILE)ar

RANLIB = $(CROSS_COMPILE)ranlib

INCLUDE     = -I/root/arm/buildroot/project_build_arm/M7-EK/linux-2.6.22.10/include -isystem /root/arm/buildroot/project_build_arm/M7-EK/linux-2.6.22.10/include
CFLAGS          += -Wall -D_FILE_OFFSET_BITS=64 -DMODULE -D__KERNEL__
WARNINGS        = -Wstrict-prototypes -Wsign-compare -Wshadow \
                  -Wchar-subscripts -Wmissing-declarations -Wnested-externs \
            -Wpointer-arith -Wcast-align -Wsign-compare -Wmissing-prototypes
CFLAGS          += $(WARNINGS)                    
CFLAGS        += $(INCLUDE)
LDFLAGS += -Wl,-warn-common,--as-needed                    
OPTFLAGS = -O
CFLAGS += $(OPTFLAGS)
                    
u2dev.o: u2dev.c
    $(CC) $(CFLAGS) -c u2dev.c
        
clean:
    rm -f *.o

и

.sh файл
Код
export TARGET=arm-linux
export PREFIX=/root/arm/buildroot/build_arm/staging_dir/usr
export ARCH=arm
export CROSS_COMPILE=${TARGET}-
export PATH=$PATH:${PREFIX}/bin

если кто сталкивался или знает как это точно сделать - жду помощи
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th June 2025 - 09:55
Рейтинг@Mail.ru


Страница сгенерированна за 0.01364 секунд с 7
ELECTRONIX ©2004-2016