From: H. N. <hen...@ar...> - 2010-09-10 18:55:55
|
Sergei Zhirikov wrote: > I have just tried to build kernel 2.6.26.8 with coLinux 0.7.7.1 and it > fails: > > CC drivers/input/mouse/comouse.o > drivers/input/mouse/comouse.c: In function 'comouse_init': > drivers/input/mouse/comouse.c:107: error: implicit declaration of function > 'LONG' > drivers/input/mouse/comouse.c:108: warning: left shift count >= width of > type > drivers/input/mouse/comouse.c:109: warning: left shift count >= width of > type > drivers/input/mouse/comouse.c:109: warning: left shift count >= width of > type > drivers/input/mouse/comouse.c:109: warning: left shift count >= width of > type > make[3]: *** [drivers/input/mouse/comouse.o] Error 1 > make[2]: *** [drivers/input/mouse] Error 2 > make[1]: *** [drivers/input] Error 2 > make: *** [drivers] Error 2 > > Previuosly I built kernel 2.6.22.18 with colinux 0.7.6 without any > problems. > > I did some investigation and found the following. > In kernel 2.6.22.18 the macro LONG is defined in include/linux/input.h, line > 925. > But in kernel 2.6.26.8 that header file is significantly different. The LONG > macro is not defined any more. > As far as I can tell, it is not defined anywhere in the Linux source (or > coLinux for that matter). > > I'm wondering, how could anyone possibly have succeeded building the > 2.6.26.8/0.7.7.1 combination? > Are there any patches missing from the coLinux release tarball? I hope not. The tar was created from SVN tree, so missing files are not doable. The devel version 0.7.8 can build with kernel 2.6.26.8 without errors. I have just tested. I can currently not test the stable 0.7.7.1 from here. As long I remember, the mouse was disabled in kernel config. Maybe this is the condition, that I don't have the problem? The line "CC ... comouse" does not exist in my build log! My devel config has "# CONFIG_MOUSE_COOPERATIVE is not set". So it is disabled. Mouse is always disabled in stable, see line 747: http://colinux.svn.sourceforge.net/viewvc/colinux/branches/stable/conf/linux-2.6.26.8-config?revision=1407&view=markup Please test with default config from coLinux, or disable the mouse driver in your config. To compare patch files and config from 0.7.8 tree with yours, you will find all files on SVN http://colinux.svn.sourceforge.net/viewvc/colinux/branches/devel/ or as tar under nightly builds on http://www.henrynestler.com/colinux/autobuild/ -- Gruss Henry --------------------------------------------------------- ... Es folgt Arcor Werbung | Ads follows by Arcor ... Heute erleben, was morgen Trend wird - das kann man auf der IFA in Berlin. Oder auf arcor.de: Wir stellen Ihnen die wichtigsten News, Trends und Gadgets der IFA vor. Natürlich mit dabei: das brandneue IPTV-Angebot von Vodafone! Alles rund um die Internationale Funkausstellung in Berlin finden Sie hier: http://www.arcor.de/rd/footer.ifa2010 |
From: Sergei Z. <sf...@ya...> - 2010-09-12 19:59:35
|
On 2010-09-10 20:55, H. Nestler wrote: > Sergei Zhirikov wrote: >> I have just tried to build kernel 2.6.26.8 with coLinux 0.7.7.1 and it >> fails: >> >> CC drivers/input/mouse/comouse.o >> drivers/input/mouse/comouse.c: In function 'comouse_init': >> drivers/input/mouse/comouse.c:107: error: implicit declaration of function >> 'LONG' >> drivers/input/mouse/comouse.c:108: warning: left shift count>= width of >> type >> drivers/input/mouse/comouse.c:109: warning: left shift count>= width of >> type >> drivers/input/mouse/comouse.c:109: warning: left shift count>= width of >> type >> drivers/input/mouse/comouse.c:109: warning: left shift count>= width of >> type >> make[3]: *** [drivers/input/mouse/comouse.o] Error 1 >> make[2]: *** [drivers/input/mouse] Error 2 >> make[1]: *** [drivers/input] Error 2 >> make: *** [drivers] Error 2 >> >> Previuosly I built kernel 2.6.22.18 with colinux 0.7.6 without any >> problems. >> >> I did some investigation and found the following. >> In kernel 2.6.22.18 the macro LONG is defined in include/linux/input.h, line >> 925. >> But in kernel 2.6.26.8 that header file is significantly different. The LONG >> macro is not defined any more. >> As far as I can tell, it is not defined anywhere in the Linux source (or >> coLinux for that matter). >> >> I'm wondering, how could anyone possibly have succeeded building the >> 2.6.26.8/0.7.7.1 combination? >> Are there any patches missing from the coLinux release tarball? > > I hope not. The tar was created from SVN tree, so missing files are not doable. > > The devel version 0.7.8 can build with kernel 2.6.26.8 without errors. I have just tested. > I can currently not test the stable 0.7.7.1 from here. > > As long I remember, the mouse was disabled in kernel config. Maybe this is the condition, that I don't have the problem? > The line "CC ... comouse" does not exist in my build log! My devel config has "# CONFIG_MOUSE_COOPERATIVE is not set". So it is disabled. > > Mouse is always disabled in stable, see line 747: > http://colinux.svn.sourceforge.net/viewvc/colinux/branches/stable/conf/linux-2.6.26.8-config?revision=1407&view=markup > > Please test with default config from coLinux, or disable the mouse driver in your config. > > To compare patch files and config from 0.7.8 tree with yours, you will find all files on SVN http://colinux.svn.sourceforge.net/viewvc/colinux/branches/devel/ or as tar under nightly builds on http://www.henrynestler.com/colinux/autobuild/ > Thanks. Disabling mouse does solve the problem. However, now I'm facing another one: make[1]: *** No rule to make target `arch/x86/pci/copci.o', needed by `arch/x86/pci/built-in.o'. Stop. make: *** [arch/x86/pci] Error 2 This fails with the default configuration too. Am I doing something wrong? I don't suppose I can disable PCI, because it is needed for the virtual network adapter(s), right? -- Sergei. |
From: Henry N. <hen...@ar...> - 2010-09-13 23:36:02
|
On 12.09.2010 21:59, Sergei Zhirikov wrote: > On 2010-09-10 20:55, H. Nestler wrote: >> Sergei Zhirikov wrote: >>> I have just tried to build kernel 2.6.26.8 with coLinux 0.7.7.1 and it >>> fails: >>> >>> CC drivers/input/mouse/comouse.o >>> drivers/input/mouse/comouse.c: In function 'comouse_init': >>> drivers/input/mouse/comouse.c:107: error: implicit declaration of function >>> 'LONG' >>> drivers/input/mouse/comouse.c:108: warning: left shift count>= width of >>> type >>> drivers/input/mouse/comouse.c:109: warning: left shift count>= width of >>> type >>> drivers/input/mouse/comouse.c:109: warning: left shift count>= width of >>> type >>> drivers/input/mouse/comouse.c:109: warning: left shift count>= width of >>> type >>> make[3]: *** [drivers/input/mouse/comouse.o] Error 1 >>> make[2]: *** [drivers/input/mouse] Error 2 >>> make[1]: *** [drivers/input] Error 2 >>> make: *** [drivers] Error 2 >>> >>> Previuosly I built kernel 2.6.22.18 with colinux 0.7.6 without any >>> problems. >>> >>> I did some investigation and found the following. >>> In kernel 2.6.22.18 the macro LONG is defined in include/linux/input.h, line >>> 925. >>> But in kernel 2.6.26.8 that header file is significantly different. The LONG >>> macro is not defined any more. >>> As far as I can tell, it is not defined anywhere in the Linux source (or >>> coLinux for that matter). >>> >>> I'm wondering, how could anyone possibly have succeeded building the >>> 2.6.26.8/0.7.7.1 combination? >>> Are there any patches missing from the coLinux release tarball? >> I hope not. The tar was created from SVN tree, so missing files are not doable. >> >> The devel version 0.7.8 can build with kernel 2.6.26.8 without errors. I have just tested. >> I can currently not test the stable 0.7.7.1 from here. >> >> As long I remember, the mouse was disabled in kernel config. Maybe this is the condition, that I don't have the problem? >> The line "CC ... comouse" does not exist in my build log! My devel config has "# CONFIG_MOUSE_COOPERATIVE is not set". So it is disabled. >> >> Mouse is always disabled in stable, see line 747: >> http://colinux.svn.sourceforge.net/viewvc/colinux/branches/stable/conf/linux-2.6.26.8-config?revision=1407&view=markup >> >> Please test with default config from coLinux, or disable the mouse driver in your config. >> >> To compare patch files and config from 0.7.8 tree with yours, you will find all files on SVN http://colinux.svn.sourceforge.net/viewvc/colinux/branches/devel/ or as tar under nightly builds on http://www.henrynestler.com/colinux/autobuild/ >> > Thanks. Disabling mouse does solve the problem. The mouse was fixed in devel by Yin Sun. I will copy his code next. > However, now I'm facing another one: > > make[1]: *** No rule to make target `arch/x86/pci/copci.o', needed by `arch/x86/pci/built-in.o'. Stop. > make: *** [arch/x86/pci] Error 2 I don't know why you have this error. I can only say, that the patches and config in source of coLinux version 0.7.7.1 can clean build kernel 2.6.26.8, used gcc 4.4.1 Please try to remove or rename the both directories linux-2.6.26.8-source and linux-2.6.26.8-build. Than start a fresh build with default config. > This fails with the default configuration too. Am I doing something wrong? > I don't suppose I can disable PCI, because it is needed for the virtual network adapter(s), right? Yes, PCI is essential for networking. -- Henry N. |
From: Sergei Z. <sf...@ya...> - 2010-09-14 18:20:02
|
On 2010-09-14 01:35, Henry Nestler wrote: > On 12.09.2010 21:59, Sergei Zhirikov wrote: >> make[1]: *** No rule to make target `arch/x86/pci/copci.o', needed by `arch/x86/pci/built-in.o'. Stop. >> make: *** [arch/x86/pci] Error 2 > > I don't know why you have this error. I can only say, that the patches > and config in source of coLinux version 0.7.7.1 can clean build kernel > 2.6.26.8, used gcc 4.4.1 > Please try to remove or rename the both directories > linux-2.6.26.8-source and linux-2.6.26.8-build. Than start a fresh build > with default config. > I'm using gcc 4.4.3. I suppose I should have mentioned this in the beginning. I'm not using the coLinux configure/make. I'm applying the kernel patches by hand and running make in the kernel directory. This worked just fine for older coLinux/kernel. What else does coLinux make do besides applying the patches and default config? Unfortunately, I can't use the coLinux build system, because I don't have Python installed (and, to be honest, I'm not looking forward to installing it just to run a single script, as it would mean building it from source). |
From: Sergei Z. <sf...@ya...> - 2010-09-14 20:05:28
|
On 2010-09-14 20:19, Sergei Zhirikov wrote: > On 2010-09-14 01:35, Henry Nestler wrote: >> On 12.09.2010 21:59, Sergei Zhirikov wrote: >>> make[1]: *** No rule to make target `arch/x86/pci/copci.o', needed by `arch/x86/pci/built-in.o'. Stop. >>> make: *** [arch/x86/pci] Error 2 >> >> I don't know why you have this error. I can only say, that the patches >> and config in source of coLinux version 0.7.7.1 can clean build kernel >> 2.6.26.8, used gcc 4.4.1 >> Please try to remove or rename the both directories >> linux-2.6.26.8-source and linux-2.6.26.8-build. Than start a fresh build >> with default config. >> > I'm using gcc 4.4.3. I suppose I should have mentioned this in the beginning. I'm not using the coLinux configure/make. I'm applying the kernel patches by hand and running make in the kernel directory. This worked just fine for older coLinux/kernel. What else does coLinux make do besides applying the patches and default config? > > Unfortunately, I can't use the coLinux build system, because I don't have Python installed (and, to be honest, I'm not looking forward to installing it just to run a single script, as it would mean building it from source). > I've managed to use coLinux build system without Python. It was actually quite easy, as Python is not really necessary. Shame that 'configure' treats it as a strict requirement. Anyway, the build succeeded, so now I'm busy trying to figure out what made the difference. |
From: Henry N. <hen...@ar...> - 2010-09-14 20:20:19
|
On 14.09.2010 22:05, Sergei Zhirikov wrote: > On 2010-09-14 20:19, Sergei Zhirikov wrote: >> On 2010-09-14 01:35, Henry Nestler wrote: >>> On 12.09.2010 21:59, Sergei Zhirikov wrote: >>>> make[1]: *** No rule to make target `arch/x86/pci/copci.o', needed by `arch/x86/pci/built-in.o'. Stop. >>>> make: *** [arch/x86/pci] Error 2 >>> I don't know why you have this error. I can only say, that the patches >>> and config in source of coLinux version 0.7.7.1 can clean build kernel >>> 2.6.26.8, used gcc 4.4.1 >>> Please try to remove or rename the both directories >>> linux-2.6.26.8-source and linux-2.6.26.8-build. Than start a fresh build >>> with default config. >>> >> I'm using gcc 4.4.3. I suppose I should have mentioned this in the beginning. I'm not using the coLinux configure/make. I'm applying the kernel patches by hand and running make in the kernel directory. This worked just fine for older coLinux/kernel. What else does coLinux make do besides applying the patches and default config? >> >> Unfortunately, I can't use the coLinux build system, because I don't have Python installed (and, to be honest, I'm not looking forward to installing it just to run a single script, as it would mean building it from source). >> > I've managed to use coLinux build system without Python. It was actually quite easy, as Python is not really necessary. Shame that 'configure' treats it as a strict requirement. Yes, kernel can build without Python. I hope you found doc/building, and the bin/build-kernel.sh for simple kernel build. CoLinux demons and Windows driver can't build without Python. But, this typcal user does not need to rebuild. -- Henry N. |
From: Sergei Z. <sf...@ya...> - 2010-09-15 17:16:36
|
On 2010-09-14 22:20, Henry Nestler wrote: > On 14.09.2010 22:05, Sergei Zhirikov wrote: >> On 2010-09-14 20:19, Sergei Zhirikov wrote: >>> On 2010-09-14 01:35, Henry Nestler wrote: >>>> On 12.09.2010 21:59, Sergei Zhirikov wrote: >>>>> make[1]: *** No rule to make target `arch/x86/pci/copci.o', needed by `arch/x86/pci/built-in.o'. Stop. >>>>> make: *** [arch/x86/pci] Error 2 >>>> I don't know why you have this error. I can only say, that the patches >>>> and config in source of coLinux version 0.7.7.1 can clean build kernel >>>> 2.6.26.8, used gcc 4.4.1 >>>> Please try to remove or rename the both directories >>>> linux-2.6.26.8-source and linux-2.6.26.8-build. Than start a fresh build >>>> with default config. >>>> >>> I'm using gcc 4.4.3. I suppose I should have mentioned this in the beginning. I'm not using the coLinux configure/make. I'm applying the kernel patches by hand and running make in the kernel directory. This worked just fine for older coLinux/kernel. What else does coLinux make do besides applying the patches and default config? >>> >>> Unfortunately, I can't use the coLinux build system, because I don't have Python installed (and, to be honest, I'm not looking forward to installing it just to run a single script, as it would mean building it from source). >>> >> I've managed to use coLinux build system without Python. It was actually quite easy, as Python is not really necessary. Shame that 'configure' treats it as a strict requirement. > > Yes, kernel can build without Python. I hope you found doc/building, and > the bin/build-kernel.sh for simple kernel build. > > CoLinux demons and Windows driver can't build without Python. But, this > typcal user does not need to rebuild. > Thanks for trying to help. I've figured out what the problem was. All I had to do is manually create a symbolic link 'arch/i386 -> x86' in the kernel source directory *before* applying the coLinux patches. Apparently, some time between 2.6.22 and 2.6.26 the Linux code that used to be in arch/i386 moved to arch/x86. However coLinux patches continue using arch/i386, so if the symlink does not exist at the time of applying the patches a directory arch/i386 is created with only coLinux files in it. That causes subsequent build to fail. |
From: Henry N. <hen...@ar...> - 2010-09-15 19:50:46
|
On 15.09.2010 19:16, Sergei Zhirikov wrote: > On 2010-09-14 22:20, Henry Nestler wrote: >> On 14.09.2010 22:05, Sergei Zhirikov wrote: >>> On 2010-09-14 20:19, Sergei Zhirikov wrote: >>>> On 2010-09-14 01:35, Henry Nestler wrote: >>>>> On 12.09.2010 21:59, Sergei Zhirikov wrote: >>>>>> make[1]: *** No rule to make target `arch/x86/pci/copci.o', needed by `arch/x86/pci/built-in.o'. Stop. >>>>>> make: *** [arch/x86/pci] Error 2 >>>>> [...] >>>> >>> I've managed to use coLinux build system without Python. It was actually quite easy, as Python is not really necessary. Shame that 'configure' treats it as a strict requirement. >> Yes, kernel can build without Python. I hope you found doc/building, and >> the bin/build-kernel.sh for simple kernel build. >> >> [...] > Thanks for trying to help. I've figured out what the problem was. All I had to do is manually create a symbolic link 'arch/i386 -> x86' in the kernel source directory *before* applying the coLinux patches. > > Apparently, some time between 2.6.22 and 2.6.26 the Linux code that used to be in arch/i386 moved to arch/x86. However coLinux patches continue using arch/i386, so if the symlink does not exist at the time of applying the patches a directory arch/i386 is created with only coLinux files in it. That causes subsequent build to fail. Ah, yes. That is true. Sorry for trouble with that. As long kernel 2.6.22 exist with more recent kernels, we had to merge both patches via softlink. Since kernel 2.6.22 was removed inside coLinux 0.7.8, this softlink was removed from bin/build-kernel.sh, and no longer need. By the while: The comouse.c was fixed in source of coLinux 0.7.8 now. -- Henry N. |