* Re: [Xenomai-help] Problems building Xenomai 2.4-rc4 and linux2.6.23
@ 2007-10-25 16:43 Fillod Stephane
2007-10-25 16:53 ` Jan Kiszka
0 siblings, 1 reply; 5+ messages in thread
From: Fillod Stephane @ 2007-10-25 16:43 UTC (permalink / raw)
To: Robert Gubler, xenomai
Robert Gubler wrote:
[...]
> AS arch/i386/boot/compressed/head.o
> CC arch/i386/boot/compressed/misc.o
> In file included from include/linux/ipipe_base.h:29,
> from include/linux/kernel.h:17,
> from include/asm/system.h:4,
> from include/asm/processor.h:18,
> from include/asm/thread_info.h:16,
> from include/linux/thread_info.h:21,
> from include/linux/preempt.h:9,
> from include/linux/spinlock.h:49,
> from include/linux/vmalloc.h:4,
> from arch/i386/boot/compressed/misc.c:14:
> include/asm/ipipe_base.h:26:25: error: irq_vectors.h: No such file or
> directory
> make[2]: *** [arch/i386/boot/compressed/misc.o] Error 1
> make[1]: *** [arch/i386/boot/compressed/vmlinux] Error 2
> make: *** [bzImage] Error 2
I had the same issue with this setup(*). It went away when I switched
the subarch from CONFIG_X86_GENERICARCH (default with FC) to CONFIG_X86_PC.
setup:
linux-2.6.23.1.tar.bz2
xenomai-2.4-rc4.tar.bz2
adeos-ipipe-2.6.23-i386-1.10-10.patch
If you do need GENERICARCH, you can tweak arch/i386/boot/compressed/Makefile
and add -I${yourlinuxabsolutepath}/include/asm-i386/mach-default to CFLAGS.
BTW, I had also to patch include/asm-i386/mach-default/mach_time.h,
adding a missing #include <linux/bcd.h> for BCD macros.
--
Stephane
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Xenomai-help] Problems building Xenomai 2.4-rc4 and linux2.6.23
2007-10-25 16:43 [Xenomai-help] Problems building Xenomai 2.4-rc4 and linux2.6.23 Fillod Stephane
@ 2007-10-25 16:53 ` Jan Kiszka
2007-10-25 17:20 ` Philippe Gerum
0 siblings, 1 reply; 5+ messages in thread
From: Jan Kiszka @ 2007-10-25 16:53 UTC (permalink / raw)
To: Fillod Stephane; +Cc: xenomai
[-- Attachment #1: Type: text/plain, Size: 1902 bytes --]
Fillod Stephane wrote:
> Robert Gubler wrote:
> [...]
>> AS arch/i386/boot/compressed/head.o
>> CC arch/i386/boot/compressed/misc.o
>> In file included from include/linux/ipipe_base.h:29,
>> from include/linux/kernel.h:17,
>> from include/asm/system.h:4,
>> from include/asm/processor.h:18,
>> from include/asm/thread_info.h:16,
>> from include/linux/thread_info.h:21,
>> from include/linux/preempt.h:9,
>> from include/linux/spinlock.h:49,
>> from include/linux/vmalloc.h:4,
>> from arch/i386/boot/compressed/misc.c:14:
>> include/asm/ipipe_base.h:26:25: error: irq_vectors.h: No such file or
>> directory
>> make[2]: *** [arch/i386/boot/compressed/misc.o] Error 1
>> make[1]: *** [arch/i386/boot/compressed/vmlinux] Error 2
>> make: *** [bzImage] Error 2
>
> I had the same issue with this setup(*). It went away when I switched
> the subarch from CONFIG_X86_GENERICARCH (default with FC) to CONFIG_X86_PC.
>
> setup:
> linux-2.6.23.1.tar.bz2
> xenomai-2.4-rc4.tar.bz2
> adeos-ipipe-2.6.23-i386-1.10-10.patch
>
> If you do need GENERICARCH, you can tweak arch/i386/boot/compressed/Makefile
> and add -I${yourlinuxabsolutepath}/include/asm-i386/mach-default to CFLAGS.
The attached patch fixes it (failed to find the time for posting it
earlier, sorry). Philippe, we do need my original version here, mflags-y
is not enough (actually, it is not needed now).
>
> BTW, I had also to patch include/asm-i386/mach-default/mach_time.h,
> adding a missing #include <linux/bcd.h> for BCD macros.
>
That doesn't tell me anything. Also with the default .config and
X86_GENERIC? Otherwise, please provide the involved .config.
Jan
--
Siemens AG, Corporate Technology, CT SE 2
Corporate Competence Center Embedded Linux
[-- Attachment #2: fix-CONFIG_X86_GENERIC.patch --]
[-- Type: text/x-patch, Size: 593 bytes --]
Index: linux-2.6.23/arch/i386/boot/compressed/Makefile
===================================================================
--- linux-2.6.23.orig/arch/i386/boot/compressed/Makefile
+++ linux-2.6.23/arch/i386/boot/compressed/Makefile
@@ -11,7 +11,7 @@ EXTRA_AFLAGS := -traditional
LDFLAGS_vmlinux := -T
hostprogs-y := relocs
-CFLAGS := -m32 -D__KERNEL__ $(LINUXINCLUDE) $(mflags-y) -O2 \
+CFLAGS := -m32 -D__KERNEL__ $(LINUXINCLUDE) -Iinclude/asm-i386/mach-default -O2 \
-fno-strict-aliasing -fPIC \
$(call cc-option,-ffreestanding) \
$(call cc-option,-fno-stack-protector)
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Xenomai-help] Problems building Xenomai 2.4-rc4 and linux2.6.23
2007-10-25 16:53 ` Jan Kiszka
@ 2007-10-25 17:20 ` Philippe Gerum
2007-10-25 17:40 ` Jan Kiszka
0 siblings, 1 reply; 5+ messages in thread
From: Philippe Gerum @ 2007-10-25 17:20 UTC (permalink / raw)
To: Jan Kiszka; +Cc: xenomai
Jan Kiszka wrote:
> Fillod Stephane wrote:
>> Robert Gubler wrote:
>> [...]
>>> AS arch/i386/boot/compressed/head.o
>>> CC arch/i386/boot/compressed/misc.o
>>> In file included from include/linux/ipipe_base.h:29,
>>> from include/linux/kernel.h:17,
>>> from include/asm/system.h:4,
>>> from include/asm/processor.h:18,
>>> from include/asm/thread_info.h:16,
>>> from include/linux/thread_info.h:21,
>>> from include/linux/preempt.h:9,
>>> from include/linux/spinlock.h:49,
>>> from include/linux/vmalloc.h:4,
>>> from arch/i386/boot/compressed/misc.c:14:
>>> include/asm/ipipe_base.h:26:25: error: irq_vectors.h: No such file or
>>> directory
>>> make[2]: *** [arch/i386/boot/compressed/misc.o] Error 1
>>> make[1]: *** [arch/i386/boot/compressed/vmlinux] Error 2
>>> make: *** [bzImage] Error 2
>> I had the same issue with this setup(*). It went away when I switched
>> the subarch from CONFIG_X86_GENERICARCH (default with FC) to CONFIG_X86_PC.
>>
>> setup:
>> linux-2.6.23.1.tar.bz2
>> xenomai-2.4-rc4.tar.bz2
>> adeos-ipipe-2.6.23-i386-1.10-10.patch
>>
>> If you do need GENERICARCH, you can tweak arch/i386/boot/compressed/Makefile
>> and add -I${yourlinuxabsolutepath}/include/asm-i386/mach-default to CFLAGS.
>
> The attached patch fixes it (failed to find the time for posting it
> earlier, sorry). Philippe, we do need my original version here, mflags-y
> is not enough (actually, it is not needed now).
The proper fix is the one below. Forcing mach-default as your patch does
would prevent the per-platform overrides to happen for some headers,
like irq_vectors.h. We do need the contents of mflags-y to be passed to
the leaf Makefile, verbatim. It's only a matter of proper quoting of
theisvariable when running make recursively, actually.
diff --git a/arch/i386/boot/Makefile b/arch/i386/boot/Makefile
index f78f5fe..4e6a230 100644
--- a/arch/i386/boot/Makefile
+++ b/arch/i386/boot/Makefile
@@ -94,7 +94,7 @@ $(obj)/setup.bin: $(obj)/setup.elf FORCE
$(call if_changed,objcopy)
$(obj)/compressed/vmlinux: FORCE
- $(Q)$(MAKE) $(build)=$(obj)/compressed mflags-y=$(mflags-y)
IMAGE_OFFSET=$(IMAGE_OFFSET) $@
+ $(Q)$(MAKE) $(build)=$(obj)/compressed mflags-y="$(mflags-y)"
IMAGE_OFFSET=$(IMAGE_OFFSET) $@
# Set this if you want to pass append arguments to the
zdisk/fdimage/isoimage kernel
FDARGS =
{rpm@xenomai.org} git diff arch/i386
diff --git a/arch/i386/Makefile b/arch/i386/Makefile
index 3b17aed..1fc6175 100644
--- a/arch/i386/Makefile
+++ b/arch/i386/Makefile
@@ -128,7 +128,7 @@ all: bzImage
zImage zlilo zdisk: KBUILD_IMAGE := arch/i386/boot/zImage
zImage bzImage: vmlinux
- $(Q)$(MAKE) $(build)=$(boot) mflags-y=$(mflags-y) $(KBUILD_IMAGE)
+ $(Q)$(MAKE) $(build)=$(boot) mflags-y="$(mflags-y)" $(KBUILD_IMAGE)
compressed: zImage
diff --git a/arch/i386/boot/Makefile b/arch/i386/boot/Makefile
index f78f5fe..4e6a230 100644
--- a/arch/i386/boot/Makefile
+++ b/arch/i386/boot/Makefile
@@ -94,7 +94,7 @@ $(obj)/setup.bin: $(obj)/setup.elf FORCE
$(call if_changed,objcopy)
$(obj)/compressed/vmlinux: FORCE
- $(Q)$(MAKE) $(build)=$(obj)/compressed mflags-y=$(mflags-y)
IMAGE_OFFSET=$(IMAGE_OFFSET) $@
+ $(Q)$(MAKE) $(build)=$(obj)/compressed mflags-y="$(mflags-y)"
IMAGE_OFFSET=$(IMAGE_OFFSET) $@
# Set this if you want to pass append arguments to the
zdisk/fdimage/isoimage kernel
FDARGS =
--
Philippe.
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [Xenomai-help] Problems building Xenomai 2.4-rc4 and linux2.6.23
2007-10-25 17:20 ` Philippe Gerum
@ 2007-10-25 17:40 ` Jan Kiszka
2007-10-25 19:37 ` Robert Gubler
0 siblings, 1 reply; 5+ messages in thread
From: Jan Kiszka @ 2007-10-25 17:40 UTC (permalink / raw)
To: rpm; +Cc: xenomai
Philippe Gerum wrote:
> Jan Kiszka wrote:
>> Fillod Stephane wrote:
>>> Robert Gubler wrote:
>>> [...]
>>>> AS arch/i386/boot/compressed/head.o
>>>> CC arch/i386/boot/compressed/misc.o
>>>> In file included from include/linux/ipipe_base.h:29,
>>>> from include/linux/kernel.h:17,
>>>> from include/asm/system.h:4,
>>>> from include/asm/processor.h:18,
>>>> from include/asm/thread_info.h:16,
>>>> from include/linux/thread_info.h:21,
>>>> from include/linux/preempt.h:9,
>>>> from include/linux/spinlock.h:49,
>>>> from include/linux/vmalloc.h:4,
>>>> from arch/i386/boot/compressed/misc.c:14:
>>>> include/asm/ipipe_base.h:26:25: error: irq_vectors.h: No such file or
>>>> directory
>>>> make[2]: *** [arch/i386/boot/compressed/misc.o] Error 1
>>>> make[1]: *** [arch/i386/boot/compressed/vmlinux] Error 2
>>>> make: *** [bzImage] Error 2
>>> I had the same issue with this setup(*). It went away when I switched
>>> the subarch from CONFIG_X86_GENERICARCH (default with FC) to CONFIG_X86_PC.
>>>
>>> setup:
>>> linux-2.6.23.1.tar.bz2
>>> xenomai-2.4-rc4.tar.bz2
>>> adeos-ipipe-2.6.23-i386-1.10-10.patch
>>>
>>> If you do need GENERICARCH, you can tweak arch/i386/boot/compressed/Makefile
>>> and add -I${yourlinuxabsolutepath}/include/asm-i386/mach-default to CFLAGS.
>> The attached patch fixes it (failed to find the time for posting it
>> earlier, sorry). Philippe, we do need my original version here, mflags-y
>> is not enough (actually, it is not needed now).
>
> The proper fix is the one below. Forcing mach-default as your patch does
> would prevent the per-platform overrides to happen for some headers,
> like irq_vectors.h. We do need the contents of mflags-y to be passed to
> the leaf Makefile, verbatim. It's only a matter of proper quoting of
> theisvariable when running make recursively, actually.
>
> diff --git a/arch/i386/boot/Makefile b/arch/i386/boot/Makefile
> index f78f5fe..4e6a230 100644
> --- a/arch/i386/boot/Makefile
> +++ b/arch/i386/boot/Makefile
> @@ -94,7 +94,7 @@ $(obj)/setup.bin: $(obj)/setup.elf FORCE
> $(call if_changed,objcopy)
>
> $(obj)/compressed/vmlinux: FORCE
> - $(Q)$(MAKE) $(build)=$(obj)/compressed mflags-y=$(mflags-y)
> IMAGE_OFFSET=$(IMAGE_OFFSET) $@
> + $(Q)$(MAKE) $(build)=$(obj)/compressed mflags-y="$(mflags-y)"
> IMAGE_OFFSET=$(IMAGE_OFFSET) $@
>
> # Set this if you want to pass append arguments to the
> zdisk/fdimage/isoimage kernel
> FDARGS =
> {rpm@xenomai.org} git diff arch/i386
> diff --git a/arch/i386/Makefile b/arch/i386/Makefile
> index 3b17aed..1fc6175 100644
> --- a/arch/i386/Makefile
> +++ b/arch/i386/Makefile
> @@ -128,7 +128,7 @@ all: bzImage
> zImage zlilo zdisk: KBUILD_IMAGE := arch/i386/boot/zImage
>
> zImage bzImage: vmlinux
> - $(Q)$(MAKE) $(build)=$(boot) mflags-y=$(mflags-y) $(KBUILD_IMAGE)
> + $(Q)$(MAKE) $(build)=$(boot) mflags-y="$(mflags-y)" $(KBUILD_IMAGE)
>
> compressed: zImage
>
> diff --git a/arch/i386/boot/Makefile b/arch/i386/boot/Makefile
> index f78f5fe..4e6a230 100644
> --- a/arch/i386/boot/Makefile
> +++ b/arch/i386/boot/Makefile
> @@ -94,7 +94,7 @@ $(obj)/setup.bin: $(obj)/setup.elf FORCE
> $(call if_changed,objcopy)
>
> $(obj)/compressed/vmlinux: FORCE
> - $(Q)$(MAKE) $(build)=$(obj)/compressed mflags-y=$(mflags-y)
> IMAGE_OFFSET=$(IMAGE_OFFSET) $@
> + $(Q)$(MAKE) $(build)=$(obj)/compressed mflags-y="$(mflags-y)"
> IMAGE_OFFSET=$(IMAGE_OFFSET) $@
>
> # Set this if you want to pass append arguments to the
> zdisk/fdimage/isoimage kernel
> FDARGS =
>
Ack, it's cleaner. Still, the actual problem is the for boot/compressed/
unneeded, but probably unavoidable indirect inclusion of ipipe_base.h.
Jan
--
Siemens AG, Corporate Technology, CT SE 2
Corporate Competence Center Embedded Linux
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Xenomai-help] Problems building Xenomai 2.4-rc4 and linux2.6.23
2007-10-25 17:40 ` Jan Kiszka
@ 2007-10-25 19:37 ` Robert Gubler
0 siblings, 0 replies; 5+ messages in thread
From: Robert Gubler @ 2007-10-25 19:37 UTC (permalink / raw)
To: xenomai
[-- Attachment #1: Type: text/plain, Size: 4251 bytes --]
I got it working. Thanks for the help everyone.
-Rob
On 10/25/07, Jan Kiszka <jan.kiszka@domain.hid> wrote:
>
> Philippe Gerum wrote:
> > Jan Kiszka wrote:
> >> Fillod Stephane wrote:
> >>> Robert Gubler wrote:
> >>> [...]
> >>>> AS arch/i386/boot/compressed/head.o
> >>>> CC arch/i386/boot/compressed/misc.o
> >>>> In file included from include/linux/ipipe_base.h:29,
> >>>> from include/linux/kernel.h:17,
> >>>> from include/asm/system.h:4,
> >>>> from include/asm/processor.h:18,
> >>>> from include/asm/thread_info.h:16,
> >>>> from include/linux/thread_info.h:21,
> >>>> from include/linux/preempt.h:9,
> >>>> from include/linux/spinlock.h:49,
> >>>> from include/linux/vmalloc.h:4,
> >>>> from arch/i386/boot/compressed/misc.c:14:
> >>>> include/asm/ipipe_base.h:26:25: error: irq_vectors.h: No such file or
>
> >>>> directory
> >>>> make[2]: *** [arch/i386/boot/compressed/misc.o] Error 1
> >>>> make[1]: *** [arch/i386/boot/compressed/vmlinux] Error 2
> >>>> make: *** [bzImage] Error 2
> >>> I had the same issue with this setup(*). It went away when I switched
> >>> the subarch from CONFIG_X86_GENERICARCH (default with FC) to
> CONFIG_X86_PC.
> >>>
> >>> setup:
> >>> linux-2.6.23.1.tar.bz2
> >>> xenomai-2.4-rc4.tar.bz2
> >>> adeos-ipipe-2.6.23-i386-1.10-10.patch
> >>>
> >>> If you do need GENERICARCH, you can tweak
> arch/i386/boot/compressed/Makefile
> >>> and add -I${yourlinuxabsolutepath}/include/asm-i386/mach-default to
> CFLAGS.
> >> The attached patch fixes it (failed to find the time for posting it
> >> earlier, sorry). Philippe, we do need my original version here,
> mflags-y
> >> is not enough (actually, it is not needed now).
> >
> > The proper fix is the one below. Forcing mach-default as your patch does
> > would prevent the per-platform overrides to happen for some headers,
> > like irq_vectors.h. We do need the contents of mflags-y to be passed to
> > the leaf Makefile, verbatim. It's only a matter of proper quoting of
> > theisvariable when running make recursively, actually.
> >
> > diff --git a/arch/i386/boot/Makefile b/arch/i386/boot/Makefile
> > index f78f5fe..4e6a230 100644
> > --- a/arch/i386/boot/Makefile
> > +++ b/arch/i386/boot/Makefile
> > @@ -94,7 +94,7 @@ $(obj)/setup.bin: $(obj)/setup.elf FORCE
> > $(call if_changed,objcopy)
> >
> > $(obj)/compressed/vmlinux: FORCE
> > - $(Q)$(MAKE) $(build)=$(obj)/compressed mflags-y=$(mflags-y)
> > IMAGE_OFFSET=$(IMAGE_OFFSET) $@
> > + $(Q)$(MAKE) $(build)=$(obj)/compressed mflags-y="$(mflags-y)"
> > IMAGE_OFFSET=$(IMAGE_OFFSET) $@
> >
> > # Set this if you want to pass append arguments to the
> > zdisk/fdimage/isoimage kernel
> > FDARGS =
> > {rpm@xenomai.org} git diff arch/i386
> > diff --git a/arch/i386/Makefile b/arch/i386/Makefile
> > index 3b17aed..1fc6175 100644
> > --- a/arch/i386/Makefile
> > +++ b/arch/i386/Makefile
> > @@ -128,7 +128,7 @@ all: bzImage
> > zImage zlilo zdisk: KBUILD_IMAGE := arch/i386/boot/zImage
> >
> > zImage bzImage: vmlinux
> > - $(Q)$(MAKE) $(build)=$(boot) mflags-y=$(mflags-y) $(KBUILD_IMAGE)
> > + $(Q)$(MAKE) $(build)=$(boot) mflags-y="$(mflags-y)"
> $(KBUILD_IMAGE)
> >
> > compressed: zImage
> >
> > diff --git a/arch/i386/boot/Makefile b/arch/i386/boot/Makefile
> > index f78f5fe..4e6a230 100644
> > --- a/arch/i386/boot/Makefile
> > +++ b/arch/i386/boot/Makefile
> > @@ -94,7 +94,7 @@ $(obj)/setup.bin: $(obj)/setup.elf FORCE
> > $(call if_changed,objcopy)
> >
> > $(obj)/compressed/vmlinux: FORCE
> > - $(Q)$(MAKE) $(build)=$(obj)/compressed mflags-y=$(mflags-y)
> > IMAGE_OFFSET=$(IMAGE_OFFSET) $@
> > + $(Q)$(MAKE) $(build)=$(obj)/compressed mflags-y="$(mflags-y)"
> > IMAGE_OFFSET=$(IMAGE_OFFSET) $@
> >
> > # Set this if you want to pass append arguments to the
> > zdisk/fdimage/isoimage kernel
> > FDARGS =
> >
>
> Ack, it's cleaner. Still, the actual problem is the for boot/compressed/
> unneeded, but probably unavoidable indirect inclusion of ipipe_base.h.
>
> Jan
>
> --
> Siemens AG, Corporate Technology, CT SE 2
> Corporate Competence Center Embedded Linux
>
[-- Attachment #2: Type: text/html, Size: 6439 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2007-10-25 19:37 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-10-25 16:43 [Xenomai-help] Problems building Xenomai 2.4-rc4 and linux2.6.23 Fillod Stephane
2007-10-25 16:53 ` Jan Kiszka
2007-10-25 17:20 ` Philippe Gerum
2007-10-25 17:40 ` Jan Kiszka
2007-10-25 19:37 ` Robert Gubler
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.