Question (about building 2.6.8.1)
Dan Kegel
dank@kegel.com
Sun Sep 19 17:57:00 GMT 2004
Kyle Unice wrote:
> Here are the patches the most kind Alex sent [see below]:
It looks like some of those are already in crosstool:
http://kegel.com/crosstool/crosstool-0.28-rc36/patches/linux-2.6.8/linux-2.6.8-noshared-kconfig.patch
http://kegel.com/crosstool/crosstool-0.28-rc36/patches/linux-2.6.8/linux-2.6.8-build_on_case_insensitive_fs-1.patch
I think one of Martin's patches for osx was too intrusive and os/x
specific, so I didn't grab both of them.
I thought I had updated crosstool-howto.html with the libelf tip for cygwin,
but I guess I didn't, I'll do that.
> I have previously posted my issues with 2.6.8.1.
Yes, and because I cc'd crossgcc, it's available on the web:
http://sources.redhat.com/ml/crossgcc/2004-09/msg00042.html
Did you try an older binutils as I suggested?
> Just FYI I have started building ptxdist on cygwin and
> run into a "file name too long" issue when building the root file system. I
> wonder if people use cygwin as much as I do :| .
Almost certainly not. Any reason you don't want to use Linux for this
development?
- Dan
> Kyle
>
> Hello Kyle,
>
>
>
> I do not remember which specific patch takes care of that problem I so I
> gonna give you solutions for all of them:
>
>
>
> 1) per http://sources.redhat.com/ml/crossgcc/2004-06/msg00282.html
>
>
>
> Install patch from bertrand marquis <bertrand_marquis at yahoo dot fr>
> listed there
>
>
>
> --- linux-x86-2.6.7/scripts/kconfig/Makefile 2004-06-16 07:20:26.000000000
> +0200
> +++ linux-x86-2.6.7.cyg/linux-x86-2.6.7/scripts/kconfig/Makefile 2004-06-24
> 10:39:18.824400000 +0200
> @@ -68,8 +68,8 @@
> libkconfig-objs := zconf.tab.o
>
> host-progs := conf mconf qconf gconf
> -conf-objs := conf.o libkconfig.so
> -mconf-objs := mconf.o libkconfig.so
> +conf-objs := conf.o libkconfig.o
> +mconf-objs := mconf.o zconf.tab.o
>
>
> ifeq ($(MAKECMDGOALS),xconfig)
> qconf-target := 1
> @@ -89,11 +89,12 @@
> endif
>
>
> clean-files := libkconfig.so lkc_defs.h qconf.moc .tmp_qtcheck \
> - .tmp_gtkcheck zconf.tab.c zconf.tab.h lex.zconf.c
> + .tmp_gtkcheck zconf.tab.c zconf.tab.h lex.zconf.c libkconfig.o
>
>
> # generated files seem to need this to find local include files
> HOSTCFLAGS_lex.zconf.o := -I$(src)
> HOSTCFLAGS_zconf.tab.o := -I$(src)
> +HOSTCFLAGS_libkconfig.o := -I$(src)
>
> HOSTLOADLIBES_qconf = -L$(QTLIBPATH) -Wl,-rpath,$(QTLIBPATH) -l$(QTLIB) -ldl
> HOSTCXXFLAGS_qconf.o = -I$(QTDIR)/include
> @@ -101,6 +102,9 @@
> HOSTLOADLIBES_gconf = `pkg-config gtk+-2.0 gmodule-2.0 libglade-2.0 --libs`
> HOSTCFLAGS_gconf.o = `pkg-config gtk+-2.0 gmodule-2.0 libglade-2.0 --cflags`
>
> +$(obj)/libkconfig.c: $(obj)/zconf.tab.c $(obj)/lex.zconf.c
> + cp $< $@
> +
> $(obj)/conf.o $(obj)/mconf.o $(obj)/qconf.o $(obj)/gconf.o:
> $(obj)/zconf.tab.h
>
> $(obj)/qconf.o: $(obj)/.tmp_qtcheck
>
> 2)download and install libelf package from:
>
> http://www.gnu.org/directory/libs/misc/libelf.html
>
> which provide <gelf.h>;
>
> in /cygdrive/c/cygwin/usr/include you can then make an elf.h that just
> contains
>
> #include <gelf.h>
>
> 3) apply 2 patches from Martin Schaffner
>
>
>
> http://mirror.vtx.ch/lfs/patches/downloads/linux/linux-2.6.7-build_on_case_i
> nsensitive_fs-1.patch
>
> http://mirror.vtx.ch/lfs/patches/downloads/linux/linux-2.6.7-build_on_osx-1.
> patch
>
> Hope this helps,
>
> Regards,
>
> Alex
>
> -----Original Message-----
> From: Kyle Unice [mailto:kyle@midnighttech.com]
> Sent: Friday, September 10, 2004 10:40 PM
> To: Alexander.Povolotsky@marconi.com
> Subject: cygwin cross-compile of Linux
>
>
> Alexander,
>
>
>
> I am also trying to compile linux-2.6.8.1 on cygwin. I get a lot of these
> errors. I saw your post and was wondering if you had a fix?
>
>
>
> Thanks.
>
> LD .tmp_vmlinux1
>
> arm-softfloat-linux-gnu-ld: section __ksymtab [000c2d0c -> 000c66eb]
> overlaps se
>
> ction .text [00000000 -> 00165eab]
>
> arm-softfloat-linux-gnu-ld: section __ksymtab_strings [000c66f0 -> 000cf6a7]
> ove
>
> rlaps section .text [00000000 -> 00165eab]
>
> arm-softfloat-linux-gnu-ld: section .rodata [00001e18 -> 000043c7] overlaps
> sect
>
> ion .text [00000000 -> 00165eab]
>
> arm-softfloat-linux-gnu-ld: section .rodata.str1.8 [000043c8 -> 000204bc]
> overla
>
> ps section .text [00000000 -> 00165eab]
>
> arm-softfloat-linux-gnu-ld: section .init.ramfs [000204bd -> 00020542]
> overlaps
>
> section .text [00000000 -> 00165eab]
>
> arm-softfloat-linux-gnu-ld: section __ex_table [00020548 -> 00020f37]
> overlaps s
>
> ection .text [00000000 -> 00165eab]
>
> arm-softfloat-linux-gnu-ld: section .arch.info [00020f38 -> 00020f6f]
> overlaps s
>
> ection .text [00000000 -> 00165eab]
>
> arm-softfloat-linux-gnu-ld: section __ksymtab_gpl [00020f70 -> 00021077]
> overlap
>
> s section .text [00000000 -> 00165eab]
>
> arm-softfloat-linux-gnu-ld: section __param [00021078 -> 000212cf] overlaps
> sect
>
> ion .text [00000000 -> 00165eab]
>
> arch/arm/kernel/head.o(.init.text+0x3c): In function `stext':
>
> : undefined reference to `__bss_start'
>
> arch/arm/kernel/head.o(.init.text+0x40): In function `stext':
>
> : undefined reference to `_end'
>
> arch/arm/kernel/head.o(.init.text+0x1a4): In function
> `__lookup_processor_type':
>
>
>
> : undefined reference to `__proc_info_end'
>
> arch/arm/kernel/head.o(.init.text+0x1a8): In function
> `__lookup_processor_type':
>
>
>
> : undefined reference to `__proc_info_begin'
>
> arch/arm/kernel/head.o(.init.text+0x1b0): In function
> `__lookup_processor_type':
>
>
>
> : undefined reference to `__arch_info_begin'
>
> arch/arm/kernel/head.o(.init.text+0x1b4): In function
> `__lookup_processor_type':
>
>
>
> : undefined reference to `__arch_info_end'
>
> init/built-in.o(.text+0x118): In function `unknown_bootoption':
>
> init/main.c:167: undefined reference to `jiffies'
>
> init/built-in.o(.text+0x2f0): In function `init':
>
> init/main.c:414: undefined reference to `__initcall_start'
>
> init/built-in.o(.text+0x2f4):init/main.c:414: undefined reference to
> `__initcall
>
> _end'
>
> init/built-in.o(.init.text+0x23c):init/main.c:583: undefined reference to
> `__set
>
> up_start'
>
> init/built-in.o(.init.text+0x240):init/main.c:583: undefined reference to
> `__set
>
> up_end'
>
> init/built-in.o(.init.text+0x314):init/main.c:421: undefined reference to
> `__set
>
> up_start'
>
> init/built-in.o(.init.text+0x318):init/main.c:421: undefined reference to
> `__set
>
> up_end'
>
> init/built-in.o(.init.text+0x2414): In function `populate_rootfs':
>
> init/initramfs.c:473: undefined reference to `__initramfs_start'
>
> init/built-in.o(.init.text+0x2418):init/initramfs.c:473: undefined reference
> to
>
> `__initramfs_end'
>
> arch/arm/kernel/built-in.o(.text+0xe58): In function `check_irq_lock':
>
> arch/arm/kernel/irq.c:230: undefined reference to `jiffies'
>
> arch/arm/kernel/built-in.o(.text+0x19a0): In function `probe_irq_on':
>
> arch/arm/kernel/irq.c:788: undefined reference to `jiffies'
>
> arch/arm/kernel/built-in.o(.text+0x48f4): In function `sched_clock':
>
> arch/arm/kernel/time.c:80: undefined reference to `jiffies'
>
> arch/arm/kernel/built-in.o(.text+0x4b64): In function `do_gettimeofday':
>
> arch/arm/kernel/time.c:278: undefined reference to `jiffies'
>
> arch/arm/kernel/built-in.o(.text+0x4d20): In function `do_settimeofday':
>
> arch/arm/kernel/time.c:314: undefined reference to `jiffies'
>
> arch/arm/kernel/built-in.o(.text+0x4e94): In function `timer_tick':
>
> arch/arm/kernel/time.c:323: undefined reference to `_stext'
>
> arch/arm/kernel/built-in.o(.init.text+0xf94): In function `setup_arch':
>
> arch/arm/kernel/setup.c:738: undefined reference to `__proc_info_begin'
>
> arch/arm/kernel/built-in.o(.init.text+0xf98):arch/arm/kernel/setup.c:738:
> undefi
>
> ned reference to `__proc_info_end'
>
> arch/arm/kernel/built-in.o(.init.text+0xfe4):arch/arm/kernel/setup.c:738:
> undefi
>
> ned reference to `__arch_info_begin'
>
> arch/arm/kernel/built-in.o(.init.text+0xfe8):arch/arm/kernel/setup.c:738:
> undefi
>
> ned reference to `__arch_info_end'
>
> arch/arm/kernel/built-in.o(.init.text+0x1004):arch/arm/kernel/setup.c:738:
> undef
>
> ined reference to `__tagtable_begin'
>
> arch/arm/kernel/built-in.o(.init.text+0x1008):arch/arm/kernel/setup.c:738:
> undef
>
> ined reference to `__tagtable_end'
>
> arch/arm/kernel/built-in.o(.init.text+0x1014):arch/arm/kernel/setup.c:738:
> undef
>
> ined reference to `_text'
>
> arch/arm/kernel/built-in.o(.init.text+0x101c):arch/arm/kernel/setup.c:738:
> undef
>
> ined reference to `_etext'
>
> arch/arm/kernel/built-in.o(.init.text+0x1020):arch/arm/kernel/setup.c:738:
> undef
>
> ined reference to `_edata'
>
> arch/arm/kernel/built-in.o(.init.text+0x1028):arch/arm/kernel/setup.c:738:
> undef
>
> ined reference to `_end'
>
> arch/arm/kernel/built-in.o(.init.text+0x1030):arch/arm/kernel/setup.c:738:
> undef
>
> ined reference to `__early_begin'
>
> arch/arm/kernel/built-in.o(.init.text+0x1034):arch/arm/kernel/setup.c:738:
> undef
>
> ined reference to `__early_end'
>
> arch/arm/mm/built-in.o(.text+0x1250): In function `free_initmem':
>
> arch/arm/mm/init.c:528: undefined reference to `__init_begin'
>
> arch/arm/mm/built-in.o(.text+0x1254):arch/arm/mm/init.c:528: undefined
> reference
>
> to `__init_end'
>
> arch/arm/mm/built-in.o(.init.text+0x59c): In function `bootmem_init':
>
> arch/arm/mm/init.c:418: undefined reference to `_end'
>
> arch/arm/mm/built-in.o(.init.text+0x5ac):arch/arm/mm/init.c:418: undefined
> refer
>
> ence to `_stext'
>
> arch/arm/mm/built-in.o(.init.text+0x91c): In function `mem_init':
>
> arch/arm/mm/init.c:586: undefined reference to `_etext'
>
> arch/arm/mm/built-in.o(.init.text+0x928):arch/arm/mm/init.c:586: undefined
> refer
>
> ence to `_end'
>
> arch/arm/mm/built-in.o(.init.text+0x92c):arch/arm/mm/init.c:586: undefined
> refer
>
> ence to `_text'
>
> arch/arm/mm/built-in.o(.init.text+0x958):arch/arm/mm/init.c:586: undefined
> refer
>
> ence to `__init_begin'
>
> arch/arm/mm/built-in.o(.init.text+0x95c):arch/arm/mm/init.c:586: undefined
> refer
>
> ence to `__init_end'
>
> kernel/built-in.o(.text+0xca4): In function `scheduler_tick':
>
> kernel/sched.c:2087: undefined reference to `jiffies'
>
> kernel/built-in.o(.text+0x1a54): In function `in_sched_functions':
>
> kernel/sched.c:3908: undefined reference to `__sched_text_start'
>
> kernel/built-in.o(.text+0x1a58):kernel/sched.c:3908: undefined reference to
> `__s
>
> ched_text_end'
>
> kernel/built-in.o(.text+0x43e8): In function `printk':
>
> kernel/printk.c:576: undefined reference to `jiffies'
>
> kernel/built-in.o(.text+0x4918): In function `__printk_ratelimit':
>
> kernel/printk.c:883: undefined reference to `jiffies'
>
> kernel/built-in.o(.text+0x69c4): In function `do_getitimer':
>
> kernel/itimer.c:49: undefined reference to `jiffies'
>
> kernel/built-in.o(.text+0x6a98): In function `it_real_fn':
>
> include/linux/timer.h:87: undefined reference to `jiffies'
>
> kernel/built-in.o(.text+0x6c40): In function `do_setitimer':
>
> kernel/itimer.c:119: undefined reference to `jiffies'
>
> kernel/built-in.o(.text+0xb298):kernel/timer.c:913: more undefined
> references to
>
> `jiffies' follow
>
> kernel/built-in.o(.text+0x132e8): In function `core_kernel_text':
>
> kernel/extable.c:53: undefined reference to `_stext'
>
> kernel/built-in.o(.text+0x132ec):kernel/extable.c:53: undefined reference to
> `_e
>
> text'
>
> kernel/built-in.o(.text+0x132f0):kernel/extable.c:53: undefined reference to
> `_s
>
> inittext'
>
> kernel/built-in.o(.text+0x132f4):kernel/extable.c:53: undefined reference to
> `_e
>
> inittext'
>
> kernel/built-in.o(.text+0x13fb8): In function `schedule_next_timer':
>
> kernel/posix-timers.c:344: undefined reference to `jiffies'
>
> kernel/built-in.o(.text+0x14854): In function `do_timer_gettime':
>
> kernel/posix-timers.c:792: undefined reference to `jiffies'
>
> kernel/built-in.o(.text+0x15834): In function `do_clock_nanosleep':
>
> kernel/posix-timers.c:1535: undefined reference to `jiffies'
>
> kernel/built-in.o(.text+0x198d0): In function `kallsyms_lookup':
>
> kernel/kallsyms.c:112: undefined reference to `_stext'
>
> kernel/built-in.o(.text+0x198d4):kernel/kallsyms.c:112: undefined reference
> to `
>
> _etext'
>
> kernel/built-in.o(.text+0x198d8):kernel/kallsyms.c:112: undefined reference
> to `
>
> _sinittext'
>
> kernel/built-in.o(.text+0x198dc):kernel/kallsyms.c:112: undefined reference
> to `
>
> _einittext'
>
> kernel/built-in.o(.text+0x19a94): In function `get_ksymbol_core':
>
> kernel/kallsyms.c:189: undefined reference to `_stext'
>
> kernel/built-in.o(.text+0x19a98):kernel/kallsyms.c:189: undefined reference
> to `
>
> _etext'
>
> kernel/built-in.o(.text+0x19a9c):kernel/kallsyms.c:189: undefined reference
> to `
>
> _sinittext'
>
> kernel/built-in.o(.text+0x19aa0):kernel/kallsyms.c:189: undefined reference
> to `
>
> _einittext'
>
> kernel/built-in.o(.sched.text+0x9bc): In function `usermodehelper_init':
>
> kernel/kmod.c:278: undefined reference to `jiffies'
>
> kernel/built-in.o(.sched.text+0xa9c): In function `pidhash_init':
>
> kernel/pid.c:284: undefined reference to `jiffies'
>
> kernel/built-in.o(.init.text+0x698): In function `profile_init':
>
> kernel/profile.c:42: undefined reference to `_etext'
>
> kernel/built-in.o(.init.text+0x69c):kernel/profile.c:42: undefined reference
> to
>
> `_stext'
>
> kernel/built-in.o(__ksymtab+0x1e8): In function `proc_caches_init':
>
> kernel/fork.c:1275: undefined reference to `jiffies'
>
> mm/built-in.o(.text+0x3d58): In function `out_of_memory':
>
> /usr/src/linux-2.6.8.1/mm/oom_kill.c:293: undefined reference to `jiffies'
>
> mm/built-in.o(.text+0x5ec4): In function `wb_kupdate':
>
> /usr/src/linux-2.6.8.1/mm/page-writeback.c:396: undefined reference to
> `jiffies'
>
>
>
> mm/built-in.o(.text+0x5f3c): In function
> `dirty_writeback_centisecs_handler':
>
> /usr/src/linux-2.6.8.1/mm/page-writeback.c:412: undefined reference to
> `jiffies'
>
>
>
> mm/built-in.o(.text+0x5f84): In function `wb_timer_fn':
>
> /usr/src/linux-2.6.8.1/mm/page-writeback.c:417: undefined reference to
> `jiffies'
>
>
>
> mm/built-in.o(.text+0x5fec):/usr/src/linux-2.6.8.1/mm/page-writeback.c:437:
> more
>
> undefined references to `jiffies' follow
>
> drivers/built-in.o(.init.text+0x23c): In function `read_kmem':
>
> drivers/char/mem.c:230: undefined reference to `__con_initcall_start'
>
> drivers/built-in.o(.init.text+0x240):drivers/char/mem.c:230: undefined
> reference
>
> to `__con_initcall_end'
>
> drivers/built-in.o(.init.text+0xcec): In function `create_entropy_store':
>
> drivers/char/random.c:543: undefined reference to `jiffies'
>
> net/built-in.o(.text+0x7f90): In function `flow_cache_new_hashrnd':
>
> include/linux/timer.h:87: undefined reference to `jiffies'
>
> net/built-in.o(.text+0xa10c): In function `process_backlog':
>
> net/core/dev.c:1911: undefined reference to `jiffies'
>
> net/built-in.o(.text+0xa278): In function `net_rx_action':
>
> net/core/dev.c:1953: undefined reference to `jiffies'
>
> net/built-in.o(.text+0xb910): In function `netdev_run_todo':
>
> include/asm/semaphore.h:129: undefined reference to `jiffies'
>
> net/built-in.o(.text+0xd550):net/core/dst.c:165: more undefined references
> to `j
>
> iffies' follow
>
> make: *** [.tmp_vmlinux1] Error 1
> -----Original Message-----
> From: Dan Kegel [mailto:dank@kegel.com]
> Sent: Sunday, September 19, 2004 8:34 AM
> To: Kyle Unice; crossgcc
> Subject: Re: Question (about building 2.6.8.1)
>
> Kyle Unice wrote:
>
>>I use the rc36 tool and the demo-arm-softfloat.sh works fine. I then
>>compiled the linux-2.6.6 and that built well under cygwin (with some
>>patches from Alex Povolotsky). I then downloaded the linux-2.6.8.1 and
>>tried building it in the same manner. I get unresolved externals which
>>leads me to wonder.. Does the crosstool building require the same linux
>>version headers in order to cross compile linux or can one build the
>>crosstool with an earlier version of linux and then crosscompile a later
>>version?
>
>
> The kernel headers used when you built the toolchain don't matter
> too much when building a kernel with that toolchain, if that's
> what you're worried about. So your 2.6.8.1 problem is probably
> a kernel problem, not a toolchain problem. You might post the
> error message and see if anyone else is running into it.
>
> Where did you get Alex's patches? I imagine those were for the
> ipt_ecn.c vs. ipt_ECN.c conflict. I'd like to have a copy.
> - Dan
>
>
--
My technical stuff: http://kegel.com
My politics: see http://www.misleader.org for examples of why I'm for regime change
------
Want more information? See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com
More information about the crossgcc
mailing list