Tuesday, March 20, 2007

Linux Kernel on Gumstix and i386

Had a few problems getting the Gumstix kernel to compile on an i386 based machine. I imported the entire Gumstix kernel tree into a subversion repository first then checked it out on my laptop. Then I removed the .config file from the subversion repository as this would obviously be set up for an ARM architecture, and replaced it with another .config from a Linux 2.6.20 kernel I had previously compiled on that machine. I thought this would be enough to compile the gumstix kernel on i386 as it changed the processor types etc, but alas it didn't work.

I got a load of errors when running make on the new kernel config such as :

include/asm/system.h:189:5: warning: "__LINUS_ARM_ARCH__" is not defined
include/asm/glue.h:110:2: error: #error Unknown data abort handler type


Obviously a problem with it trying to compile some of the arm asm stuff when I was trying to compile for i386. After a bit of digging I found that include/asm was a symlink to asm-arm so I have deleted this symlink from the svn repository and replaced it locally with a symlink to arm-i386. The kernel is currently compiling so hopefully this has done the trick, time will tel.....

1 Comments:

Anonymous La don said...

Well written article.

5:47 AM  

Post a Comment

<< Home