Messages in this thread | | | Date | Tue, 28 Aug 2007 21:34:16 +0200 | From | Sam Ravnborg <> | Subject | Re: [PATCH 2.6.21.3] kbuild: fix build for cygwin |
| |
On Fri, Jun 08, 2007 at 11:32:29AM -0700, Tom wrote: > From: Tom Enderes <enderes@gmail.com> > > The kernel build failed on cygwin hosts, because cygwin has slightly > different typedefs compared to linux: > scripts/mod/file2alias.c:518: error: dereferencing pointer to incomplete > type > Two files, scripts/mod/file2alias.c and scripts/mod/modpost.h, were > modified as follows: > Whever __CYGWIN__ is defined, __uint32 is defined as __uint32_t (instead > of uint_32_t) and the missing ElfxxSection definitions are added. > These changes have been tested both on cygwin 1.5.24, hostcc=gcc 3.4.4 > and on FC5, hostcc=gcc 4.1.1-1. Any tests on cygwin, with and without > this change, were executed with the following set for make: > HOST_LOADLIBES="-lcurses -lintl".
Hi Tom.
I have revisited this and have made a successfull kernel build on a windows/cygwin box now.
I had to change two things only: 1) The -lintl workaround was fixed by introducing a little script. If gcc cannot link a program that sues gettext then NLS is disabled.
2) Elf32_Section and Elf64_Section was replaced by Elfnn_Half
The build succeeds with a number of warnings that I just ignored. fixdep and friends always get rebuild because kbuild does not know about the .exe suffix so it does not see that the binaries exists. This is annoying and I hope to fix it before the merge.
These change will hit mainline during next merge window so it will take a while before you can benefit.
For now they are in the kbuild.git tree at git.kernel.org and will soon be part of -mm.
Sam - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |