Problems compiling kernel 2.4.18 patched with the latest patch
The kernel is 2.4.18 taken from kernel.org
Patch applied is linux-2.4.18-ia64-020722.diff taken from
http://www.kernel.org/pub/linux/kernel/ports/ia64/v2.4/
I get the following error
/tmp/newhd/usr/src/linux-2.4.18-ia64/include/asm/machvec.h:82:12: pasting "machvec_hpsim" and "." does not give a valid preprocessing token
The detailed compilation log can be found at the end of this mail. I have made a cross compiler tool-chain on a IA32 system, running RedHat-8.0. I searched in the archives. Looks like people have faced this problem, but it was fixed. Is it fixed for 2.4.18 or do I need a later kernel.
Thanx
tomar
Full compiler log:
----------------
. scripts/mkversion > .tmpversion/usr/local/ia64-linux/bin/gcc -D__KERNEL__ -I/tmp/newhd/usr/src/linux-2.4.18-ia64/include -Wall -Wstrict-prototypes -Wno-trigraphs -g -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -ffixed-r13 -mfixed-rangeñ0-f15,f32-f127 -falign-functions2 -frename-registers --param max-inline-insnsP00 -mconstant-gp -DUTS_MACHINE='"ia64"' -DKBUILD_BASENAME=version -c -o init/version.o init/version.c make CFLAGS="-D__KERNEL__ -I/tmp/newhd/usr/src/linux-2.4.18-ia64/include -Wall -Wstrict-prototypes -Wno-trigraphs -g -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -ffixed-r13 -mfixed-rangeñ0-f15,f32-f127 -falign-functions2 -frename-registers --param max-inline-insnsP00 -mconstant-gp" -C arch/ia64/tools
make[1]: Entering directory `/tmp/newhd/usr/src/linux-2.4.18-ia64/arch/ia64/tools'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/tmp/newhd/usr/src/linux-2.4.18-ia64/arch/ia64/tools'
make CFLAGS="-D__KERNEL__ -I/tmp/newhd/usr/src/linux-2.4.18-ia64/include -Wall -Wstrict-prototypes -Wno-trigraphs -g -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -ffixed-r13 -mfixed-rangeñ0-f15,f32-f127 -falign-functions2 -frename-registers --param max-inline-insnsP00 -mconstant-gp" -C arch/ia64/kernel
make[1]: Entering directory `/tmp/newhd/usr/src/linux-2.4.18-ia64/arch/ia64/kernel'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/tmp/newhd/usr/src/linux-2.4.18-ia64/arch/ia64/kernel'
make CFLAGS="-D__KERNEL__ -I/tmp/newhd/usr/src/linux-2.4.18-ia64/include -Wall -Wstrict-prototypes -Wno-trigraphs -g -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -ffixed-r13 -mfixed-rangeñ0-f15,f32-f127 -falign-functions2 -frename-registers --param max-inline-insnsP00 -mconstant-gp" -C arch/ia64/mm
make[1]: Entering directory `/tmp/newhd/usr/src/linux-2.4.18-ia64/arch/ia64/mm'
make all_targets
make[2]: Entering directory `/tmp/newhd/usr/src/linux-2.4.18-ia64/arch/ia64/mm'
make[2]: Nothing to be done for `all_targets'.
make[2]: Leaving directory `/tmp/newhd/usr/src/linux-2.4.18-ia64/arch/ia64/mm'
make[1]: Leaving directory `/tmp/newhd/usr/src/linux-2.4.18-ia64/arch/ia64/mm'
make CFLAGS="-D__KERNEL__ -I/tmp/newhd/usr/src/linux-2.4.18-ia64/include -Wall -Wstrict-prototypes -Wno-trigraphs -g -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -ffixed-r13 -mfixed-rangeñ0-f15,f32-f127 -falign-functions2 -frename-registers --param max-inline-insnsP00 -mconstant-gp" -C arch/ia64/lib
make[1]: Entering directory `/tmp/newhd/usr/src/linux-2.4.18-ia64/arch/ia64/lib'
make[1]: `lib.a' is up to date.
make[1]: Leaving directory `/tmp/newhd/usr/src/linux-2.4.18-ia64/arch/ia64/lib'
make CFLAGS="-D__KERNEL__ -I/tmp/newhd/usr/src/linux-2.4.18-ia64/include -Wall -Wstrict-prototypes -Wno-trigraphs -g -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -ffixed-r13 -mfixed-rangeñ0-f15,f32-f127 -falign-functions2 -frename-registers --param max-inline-insnsP00 -mconstant-gp" -C arch/ia64/hp
make[1]: Entering directory `/tmp/newhd/usr/src/linux-2.4.18-ia64/arch/ia64/hp'
make -C common
make[2]: Entering directory `/tmp/newhd/usr/src/linux-2.4.18-ia64/arch/ia64/hp/common'
make all_targets
make[3]: Entering directory `/tmp/newhd/usr/src/linux-2.4.18-ia64/arch/ia64/hp/common'
make[3]: Nothing to be done for `all_targets'.
make[3]: Leaving directory `/tmp/newhd/usr/src/linux-2.4.18-ia64/arch/ia64/hp/common'
make[2]: Leaving directory `/tmp/newhd/usr/src/linux-2.4.18-ia64/arch/ia64/hp/common'
make -C sim
make[2]: Entering directory `/tmp/newhd/usr/src/linux-2.4.18-ia64/arch/ia64/hp/sim'
make all_targets
make[3]: Entering directory `/tmp/newhd/usr/src/linux-2.4.18-ia64/arch/ia64/hp/sim'/usr/local/ia64-linux/bin/gcc -D__KERNEL__ -I/tmp/newhd/usr/src/linux-2.4.18-ia64/include -Wall -Wstrict-prototypes -Wno-trigraphs -g -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -ffixed-r13 -mfixed-rangeñ0-f15,f32-f127 -falign-functions2 -frename-registers --param max-inline-insnsP00 -mconstant-gp -DKBUILD_BASENAME=hpsim_machvec -c -o hpsim_machvec.o hpsim_machvec.c In file included from /tmp/newhd/usr/src/linux-2.4.18-ia64/include/asm/machvec_init.h:5,
from hpsim_machvec.c:2:/tmp/newhd/usr/src/linux-2.4.18-ia64/include/asm/machvec.h:82:12: pasting "machvec_hpsim" and "." does not give a valid preprocessing token
make[3]: *** [hpsim_machvec.o] Error 1
make[3]: Leaving directory `/tmp/newhd/usr/src/linux-2.4.18-ia64/arch/ia64/hp/sim'
make[2]: *** [first_rule] Error 2
make[2]: Leaving directory `/tmp/newhd/usr/src/linux-2.4.18-ia64/arch/ia64/hp/sim'
make[1]: *** [_subdir_sim] Error 2
make[1]: Leaving directory `/tmp/newhd/usr/src/linux-2.4.18-ia64/arch/ia64/hp'
make: *** [_dir_arch/ia64/hp] Error 2
Quoted 5 lines · Nagendra Singh Tomar
The kernel is 2.4.18 taken from kernel.org
Patch applied is linux-2.4.18-ia64-020722.diff taken from
http://www.kernel.org/pub/linux/kernel/ports/ia64/v2.4/
I get the following error
Quoted 7 lines
/tmp/newhd/usr/src/linux-2.4.18-ia64/include/asm/machvec.h:82:12: pasting "machvec_hpsim" and "." does not give a valid preprocessing tokenThe detailed compilation log can be found at the end of this mail. I have made a cross compiler tool-chain on a IA32 system, running RedHat-8.0. I searched in the archives. Looks like people have faced this problem, but it was fixed. Is it fixed for 2.4.18 or do I need a later kernel.
I assume you found this message in the archives:
http://www.gelato.unsw.edu.au/linux-ia64/0206/3530.html
I don't think the 2.4.18 patch was ever updated, so you probably can't build a 2.4.18 generic kernel unless you want to apply the machvec and sba_iommu patches.
That's a pretty old kernel, and the generic target was just starting to come together then. But I assume you have a good reason for wanting to use such an old kernel.
Bjorn
Re: Problems compiling kernel 2.4.18 patched with the latest patc
In reply to Nagendra Singh TomarBjorn,
Thanx for ur reply. I had difficulties applying the patch. I tried
it on the already patched 2.4.18 (with latest ia64 port patch as I mentioned). I will download the 2.4.21 kernel and try patching and compiling it. Hope that passes thru. I don't want to run a 2.6 kernel because I have a massive kernel module that works on 2.4.18 kernel on an IA32. To start with I would just like to see if it works on IA64 also. i don't want to get down to porting that module to 2.6. Later, when I am done with amking it work on 2.4.21/IA64, I will put the effort of porting it to 2.6 series.
Is 2.4.21 also not a good choice for IA64 ?
Thanx,
tomar
Quoted 30 lines · Bjorn Helgaas
Quoted 6 lines · Nagendra Singh Tomar
The kernel is 2.4.18 taken from kernel.org
Patch applied is linux-2.4.18-ia64-020722.diff taken from
http://www.kernel.org/pub/linux/kernel/ports/ia64/v2.4/
I get the following error
/tmp/newhd/usr/src/linux-2.4.18-ia64/include/asm/machvec.h:82:12:pasting
Quoted 3 lines
"
machvec_hpsim" and "." does not give a valid preprocessing tokenThe detailed compilation log can be found at the end of this mail. I
have
Quoted 2 lines
made a cross compiler tool-chain on a IA32 system, running RedHat-8.0. I searched in the archives. Looks like people have faced this problem,
but
Quoted 1 line
it was fixed. Is it fixed for 2.4.18 or do I need a later kernel.
I assume you found this message in the archives:
http://www.gelato.unsw.edu.au/linux-ia64/0206/3530.htmlI don't think the 2.4.18 patch was ever updated, so you probably can't build a 2.4.18 generic kernel unless you want to apply the machvec and
sba_iommupatches.That's a pretty old kernel, and the generic target was just starting to come together then. But I assume you have a good reason for wanting to use such an old kernel.
Bjorn
Re: Problems compiling kernel 2.4.18 patched with the latest patc h
In reply to Nagendra Singh TomarQuoted 11 lines · Nagendra Singh Tomar
Bjorn,
Thanx for ur reply. I had difficulties applying the patch. I tried
it on the already patched 2.4.18 (with latest ia64 port patch as I mentioned). I will download the 2.4.21 kernel and try patching and compiling it. Hope that passes thru. I don't want to run a 2.6 kernel because I have a massive kernel module that works on 2.4.18 kernel on an IA32. To start with I would just like to see if it works on IA64 also. i don't want to get down to porting that module to 2.6. Later, when I am done with amking it work on 2.4.21/IA64, I will put the effort of porting it to 2.6 series.
Is 2.4.21 also not a good choice for IA64 ?
2.4.21 is a good choice for IA64.