1 |
On Thu, 17 May 2012 22:59:41 +0200 |
2 |
Alex Schuster <wonko@×××××××××.org> wrote: |
3 |
|
4 |
> Michael Scherer writes: |
5 |
> |
6 |
> > 1) make output: |
7 |
> > |
8 |
> > CHK include/linux/version.h |
9 |
> > CHK include/generated/utsrelease.h |
10 |
> > CALL scripts/checksyscalls.sh |
11 |
> > CHK include/generated/compile.h |
12 |
> > LD init/mounts.o |
13 |
> > ls -Al -m elf_x86_64 -r -o init/mounts.o init/do_mounts.o |
14 |
> > init/do_mounts_initrd.o init/mounts.o: No such file or directory |
15 |
> > make[1]: *** [init/mounts.o] Error 1 |
16 |
> > make: *** [init] Error 2 |
17 |
> > |
18 |
> > There is an LD, the ls line is part of the error message. |
19 |
> |
20 |
> But the options look really more like ld options to me. How this could |
21 |
> possibly happen, I don't know. Some overriding of $(LD) perhaps? Does |
22 |
> "env | egrep -i 'ls|ld'" show something weird? Does it also fail as a |
23 |
> non-root user, after you copied the stuff over to somewhere where this |
24 |
> user can write? Just grasping at straws here. |
25 |
> |
26 |
> |
27 |
> > But without doubt you are right that mounts.o is not built, for |
28 |
> > whatever reason. |
29 |
> |
30 |
> Because ld should build it from init/do_mounts.o, but ls is being |
31 |
> called instead? |
32 |
> |
33 |
> > The build command |
34 |
> > |
35 |
> > init/.do_mounts.o.cmd:cmd_init/do_mounts.o := gcc |
36 |
> > -Wp,-MD,init/.do_mounts.o.d -nostdinc |
37 |
> > -isystem /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/include |
38 |
> > -I/usr/src/linux-3.2.12-gentoo/arch/x86/include |
39 |
> > -Iarch/x86/include/generated -Iinclude |
40 |
> > -include /usr/src/linux-3.2.12-gentoo/include/linux/kconfig.h |
41 |
> > -D__KERNEL__ -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs |
42 |
> > -fno-strict-aliasing -fno-common |
43 |
> > -Werror-implicit-function-declaration -Wno-format-security |
44 |
> > -fno-delete-null-pointer-checks -O2 -m64 -march=k8 -mno-red-zone |
45 |
> > -mcmodel=kernel -funit-at-a-time -maccumulate-outgoing-args |
46 |
> > -fstack-protector -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 |
47 |
> > -DCONFIG_AS_CFI_SECTIONS=1 -DCONFIG_AS_FXSAVEQ=1 -pipe |
48 |
> > -Wno-sign-compare -fno-asynchronous-unwind-tables -mno-sse -mno-mmx |
49 |
> > -mno-sse2 -mno-3dnow -Wframe-larger-than=2048 |
50 |
> > -fno-omit-frame-pointer -fno-optimize-sibling-calls |
51 |
> > -fno-inline-functions-called-once -Wdeclaration-after-statement |
52 |
> > -Wno-pointer-sign -fno-strict-overflow -fconserve-stack |
53 |
> > -DCC_HAVE_ASM_GOTO -D"KBUILD_STR(s)=\#s" |
54 |
> > -D"KBUILD_BASENAME=KBUILD_STR(do_mounts)" |
55 |
> > -D"KBUILD_MODNAME=KBUILD_STR(mounts)" -c -o init/do_mounts.o |
56 |
> > init/do_mounts.c |
57 |
> > |
58 |
> > contains a directive to build mounts.o, see second last line, but |
59 |
> > it for some reason this is ignored. |
60 |
> > Maybe there is a flaw in that command, only I can't find it. |
61 |
> |
62 |
> Neither can I. Is this command executed at all? If you maybe replace |
63 |
> the 'gcc' by 'gccXXX', does this give an error? Or put an 'echo' in |
64 |
> front of the gcc'. |
65 |
> You can try 'make -d', this will give you LOTS of debug output, but I |
66 |
> don't think you will see the actual commands then. |
67 |
> |
68 |
> Wonko |
69 |
> |
70 |
|
71 |
Now at last there is some kind of "progress". Last thing I tried was |
72 |
replacing my current .config with that of my previous kernel (3.2.1-r2) |
73 |
and at least the make ran all the way up to the point where it should |
74 |
link everything to build vmlinux, only now it tells me it couldn't |
75 |
find vmlinux.o. |
76 |
|
77 |
The last couple of lines from the make output: |
78 |
|
79 |
CC arch/x86/lib/cache-smp.o |
80 |
CC arch/x86/lib/msr.o |
81 |
AS arch/x86/lib/msr-reg.o |
82 |
CC arch/x86/lib/msr-reg-export.o |
83 |
AS arch/x86/lib/iomap_copy_64.o |
84 |
LD arch/x86/lib/built-in.o |
85 |
ls -Al -m elf_x86_64 -r -o arch/x86/lib/built-in.o |
86 |
arch/x86/lib/msr-smp.o arch/x86/lib/cache-smp.o arch/x86/lib/msr.o |
87 |
arch/x86/lib/msr-reg.o arch/x86/lib/msr-reg-export.o |
88 |
arch/x86/lib/iomap_copy_64.o |
89 |
AS arch/x86/lib/clear_page_64.o |
90 |
AS arch/x86/lib/cmpxchg16b_emu.o |
91 |
AS arch/x86/lib/copy_page_64.o |
92 |
AS arch/x86/lib/copy_user_64.o |
93 |
AS arch/x86/lib/copy_user_nocache_64.o |
94 |
AS arch/x86/lib/csum-copy_64.o |
95 |
CC arch/x86/lib/csum-partial_64.o |
96 |
CC arch/x86/lib/csum-wrappers_64.o |
97 |
CC arch/x86/lib/delay.o |
98 |
AS arch/x86/lib/getuser.o |
99 |
GEN arch/x86/lib/inat-tables.c |
100 |
CC arch/x86/lib/inat.o |
101 |
CC arch/x86/lib/insn.o |
102 |
AS arch/x86/lib/memcpy_64.o |
103 |
AS arch/x86/lib/memmove_64.o |
104 |
AS arch/x86/lib/memset_64.o |
105 |
AS arch/x86/lib/putuser.o |
106 |
AS arch/x86/lib/rwlock.o |
107 |
AS arch/x86/lib/rwsem.o |
108 |
AS arch/x86/lib/thunk_64.o |
109 |
CC arch/x86/lib/usercopy.o |
110 |
CC arch/x86/lib/usercopy_64.o |
111 |
AR arch/x86/lib/lib.a |
112 |
LD vmlinux.o |
113 |
ls -Al -m elf_x86_64 -r -o vmlinux.o arch/x86/kernel/head_64.o |
114 |
arch/x86/kernel/head64.o arch/x86/kernel/head.o |
115 |
arch/x86/kernel/init_task.o init/built-in.o --start-group |
116 |
usr/built-in.o arch/x86/built-in.o kernel/built-in.o mm/built-in.o |
117 |
fs/built-in.o ipc/built-in.o security/built-in.o crypto/built-in.o |
118 |
block/built-in.o lib/lib.a arch/x86/lib/lib.a lib/built-in.o |
119 |
arch/x86/lib/built-in.o drivers/built-in.o sound/built-in.o |
120 |
firmware/built-in.o arch/x86/pci/built-in.o arch/x86/power/built-in.o |
121 |
arch/x86/video/built-in.o net/built-in.o --end-group |
122 |
MODPOST vmlinux.o |
123 |
vmlinux.o: No such file or directory make[1]: *** |
124 |
[vmlinux.o] Error 1 make: *** [vmlinux.o] Error 2 |
125 |
|
126 |
|
127 |
Essentially the same error as previously with mounts.o, and after |
128 |
every LD comes an ls -Al ... line like above, which I never saw |
129 |
before in my make outputs. Don't know where that comes from. |
130 |
|
131 |
I'm now back where the troubles began, the vmlinux.o error was |
132 |
the first I encountered after my last successful build. |
133 |
Maybe a careful search of a diff of the .config files will |
134 |
give me some idea. |
135 |
|
136 |
By now you're probably somewhat tired of devoting your time |
137 |
to this problem, so thank you for all your efforts to help me. |
138 |
If I ever solve this, you'll hear from me (which doesn't mean |
139 |
the thread is closed. If someone is still curious... ;-) ) |
140 |
|
141 |
Kind regards, Michael |