Friday, January 1, 2010

Put Head On Another Body

Compiling RTLinux kernel

some time lived in the belief that available in the repository package linux-image-rt contains the same kernel that is the basis for RTLinux RTLinux

home. Thus, to compile the kernel with the RTLinux patch I would have put more effort in it.
I started by downloading the patch RTLinux from the homepage, and then the source code kernel with
www.kernel.org
. Only after a while I realized that I can not use the last kernel code, because there is no patch available for it. So I had to download the kernel version 2.6.9. Further procedures were as follows: I copied the file
rtlinux-3.2-wr.tar.bz2 to / usr / src. unpacked with the command tar xjf
rtlinux-3.2-wr.tar.bz2
I went to the directory rtlinux-3.2-wr
copied the file there linux-2.6.9.tar.bz2 and unpacked.
created a symbolic link: ln-fs
linux-2.6.9 linux

went through a link to the directory linux the unpacked sources kernel.
Now, apply the patch, which is located here

. Otherwise we get a compile error in the form: {standard input
}: Assembler messages: {standard input
}: 607: Error: suffix or operands invalid for `mov '{standard input
}: 630: Error: suffix or operands invalid for` mov '{standard input
}: 1144: Error: suffix or operands invalid for `mov' {standard input
}: 1145: Error: suffix or operands invalid for` mov '{standard input make [1]: *** [arch/x86_64/kernel/process.o] Error 1
make: *** [arch/x86_64/kernel] Error 2 solution came from here.
So do: patch-p1
Then apply the patch RTLinuksa: patch-p1
After all belong configure the kernel with one of the commands:
make menuconfig, make xconfig, make gconfig . A menu appears where you can choose whether the option will be compiled into the kernel or as module doinstalowywana or completely removed. now proceed further by this user:
http://blog.0x1fff.com/2009/04/debian-gnulinux-kompilacja-jadra.html I got an error re-defined macros and unfake_stake_itd fake_stake_cośtam. As I have learned on some forum, open the file in which macros are redefined, and simply delete them. Unfortunately, I have already lost the link where I read. In file included from fs / compat_ioctl.c: 69, from arch/x86_64/ia32/ia32_ioctl.c: 14: include/linux/i2c.h: 58: error: array type has incomplete element type include / linux / i2c.h: 205: error: array type has incomplete element type make [2]: *** [Arch/x86_64/ia32/ia32_ioctl.o] Error 1
make [1]: *** [arch/x86_64/ia32] Error 2
make [1]: Leaving directory `/ usr/src/rtlinux-3.2-wr / linux-2.6.9 ' make: *** [debian / stamp / build / kernel] Error 2 i2c_transfer (struct i2c_adapter * adapter, struct i2c_msg msg [], int num); the extern int i2c_transfer (struct i2c_adapter * adapter, struct i2c_msg * msg, int num);
and int (* master_xfer) (struct i2c_adapter * adapter, struct i2c_msg msgs [], int num );
the
int (* master_xfer) (struct i2c_adapter * adapter, struct i2c_msg * msgs, int num ); In file / include / linux / fb.h line 751: extern const struct
fb_videomode vesa_modes [];
the
extern const struct fb_videomode * vesa_modes; It stopped with error:
/ usr / bin / ld : arch/x86_64/ia32/vsyscall-sysenter.so: Not enough room for program headers, try linking with-N
/ usr / bin / ld: final link failed: Bad value collect2: ld returned 1 exit status make [2]: *** [arch/x86_64/ia32/vsyscall-sysenter.so] Error 1
make [1]: *** [arch/x86_64/ia32] Error 2
make [1]: Leaving directory `/ usr/src/rtlinux-3.2-wr/linux-2.6.9 '
make: *** [debian / stamp / build / kernel] Error 2




More

0 comments:

Post a Comment