Ошибка сборки ядра Linux Preempt на Raspberry Pi RT

Ошибка сборки ядра Linux Preempt на Raspberry Pi RT

Я пытаюсь собрать и установить Raspberry Pi RT Preempt Linux Kernel.

Вот шаги, которые я предпринял:

  1. Я установил предварительно скомпилированное ядро ​​kernel-4.4.9-rt17.tgz

  2. Я загрузил исходники ядра Raspberry Pi и применил Real Time patch-4.4.9-rt17.patch.gz. (Я следовалэта ссылкадля установки)

  3. Я настроил свое ядро ​​для Raspberry Pi3, Model B, используя:

    export KERNEL=kernel7
    
    make bcm2709_defconfig
    
  4. Я настроил ядро ​​для поддержки полностью вытесняемого ядра (RT) с помощью

    make -j$(nproc) menuconfig
    
  5. Я собираю ядро ​​с помощью

    make -j$(nproc) zImage 
    

    но я получил ошибку:

    In file included from arch/arm/kernel/asm-offsets.c:14:0:
    ./include/linux/sched.h:2040:32: error: expected identifier or ‘(’ before ‘&’ token
    define tsk_cpus_allowed(tsk) (&(tsk)->cpus_allowed) ^     ./include/linux/sched.h:3679:37: note: in expansion of macro ‘tsk_cpus_allowed’
    static inline const struct cpumask *tsk_cpus_allowed(struct task_struct *p) ^ In file included from arch/arm/kernel/asm-offsets.c:14:0:
    ./include/linux/sched.h:3687:19: error: redefinition of ‘tsk_nr_cpus_allowed’     static inline int tsk_nr_cpus_allowed(struct task_struct *p) ^ In file included from arch/arm/kernel/asm-offsets.c:14:0:  ./include/linux/sched.h:2042:19: note: previous definition of ‘tsk_nr_cpus_allowed’ was here
    

Вот вывод сборки ядра

Есть ли у вас какие-либо идеи, как решить эту проблему? Я не знаю, что я делаю не так. Я был бы очень признателен за любую помощь.

Связанный контент