Gentoo Archives: gentoo-amd64

From: Lie Ryan <lie.1296@×××××.com>
To: gentoo-amd64@l.g.o
Subject: Re: [gentoo-amd64] Re: revdep-rebuild, Firefox, Thunderbird, GCC
Date: Wed, 10 Jun 2009 18:15:19
Message-Id: 4A2FF824.6090001@gmail.com
In Reply to: Re: [gentoo-amd64] Re: revdep-rebuild, Firefox, Thunderbird, GCC by "John P. Burkett"
1 -----BEGIN PGP SIGNED MESSAGE-----
2 Hash: SHA1
3
4 John P. Burkett wrote:
5 > Lie Ryan wrote:
6 >> John P. Burkett wrote:
7 >>>> However, that doesn't seem to be the issue here, which brings us to
8 >>>> reason #2. The ati-drivers include a kernel driver, which must be
9 >>>> compiled against a kernel that has been built so the proper parts of it
10 >>>> are exposed for the drivers to use. The kernel must reside at /usr/src/
11 >>>> linux. If you look at the error above, it found the directory all right,
12 >>>> but it didn't find what it needed in it. Have you built your kernel
13 >>>> using those sources, with your new gcc, yet? Did you leave the working
14 >>>> files exposed for ati-drivers to use if so, or did you cleanup using make
15 >>>> clean, or something?
16 >>> Going to /usr/src and doing "ls -l" elicits the following:
17 >>> lrwxrwxrwx 1 root root 22 Sep 3 2007 linux -> linux-2.6.22-gentoo-r2
18 >>> drwxr-xr-x 19 root root 1088 Jun 8 01:16 linux-2.6.22-gentoo-r2
19 >>> So linux appears to be symbolic link to linux-2.6.22-gentoo-r2
20 >>> Going to /usr/src/linux-2.6.22-gentoo-r2 and doing "ls -l" produces the
21 >>> following:
22 >> The latest gentoo kernel is 2.6.29-gentoo-r5, AFTER this problem is
23 >> solved, probably you can consider upgrading the kernel as well (we don't
24 >> want kernel upgrade problems get compounded with gcc problem, do we?).
25 >> For now, perhaps you can recompile with the same (working -- I assumed)
26 >> .config (we also don't want configuration mistakes compounding compile
27 >> problem for now)
28 >
29 > Thank you, Lie. Learning to upgrade the kernel is on my to-do list. When
30 > you say recompile with the same .config, are you referring to
31 > recompiling the kernel? Several .config files are on my system. My
32 > first guess is that the relevant one is
33 > /usr/src/linux-2.6.22-gentoo-r2/.config
34 > Its first lines are the following:
35 > # Automatically generated make config: don't edit
36 > # Linux kernel version: 2.6.22-gentoo-r2
37 > #
38 > # Tue Sep 4 10:25:14 2007
39 > CONFIG_X86_64=y
40 > CONFIG_64BIT=y
41
42 Yes, as you have found out, there is a file named ".config" inside the
43 kernel sources' directory; you usually edit this with "make menuconfig"
44 or one of the GUI config tools. After configuration is done just do
45 "make all", "make modules_install", and install it on the /boot
46 partition (for full tutorial see the gentoo documentation)
47
48 >>> -rw-r--r-- 1 root root 252456 Sep 4 2007 Module.symvers
49 >>> -rw-r--r-- 1 root root 1418737 Sep 4 2007 System.map
50 >>> drwxr-xr-x 4 root root 96 Jun 8 01:16 arch
51 >>> drwxr-xr-x 2 root root 752 Jun 8 01:16 block
52 >>> drwxr-xr-x 2 root root 6640 Jun 8 01:16 crypto
53 >>> drwxr-xr-x 35 root root 968 Jun 8 01:16 drivers
54 >>> drwxr-xr-x 35 root root 4936 Jun 8 01:16 fs
55 >>> drwxr-xr-x 5 root root 152 Jun 8 01:16 include
56 >>> drwxr-xr-x 2 root root 736 Jun 8 01:16 init
57 >>> drwxr-xr-x 2 root root 680 Jun 8 01:16 ipc
58 >>> drwxr-xr-x 5 root root 3832 Jun 8 01:16 kernel
59 >>> drwxr-xr-x 4 root root 4512 Jun 8 01:16 lib
60 >>> drwxr-xr-x 2 root root 2616 Jun 8 01:16 mm
61 >>> drwxr-xr-x 23 root root 856 Jun 8 01:16 net
62 >>> drwxr-xr-x 6 root root 320 Jun 8 01:16 scripts
63 >>> drwxr-xr-x 2 root root 208 Jun 8 01:16 security
64 >>> drwxr-xr-x 16 root root 904 Jun 8 01:16 sound
65 >>> drwxr-xr-x 2 root root 424 Jun 8 01:16 usr
66 >>> -rwxr-xr-x 1 root root 9388791 Sep 4 2007 vmlinux
67 >>> The June 8 date is a surprise to me because I did not intentionally do
68 >>> anything to this directory then.
69 >> I guess, maybe portage re-emerge'd the source at Jun 8
70 >>
71 >>>> My guess is that you need to build your kernel with the new gcc, and then
72 >>>> ati-drivers will hopefully compile.
73 >>> Is there anyway to tell whether the kernel is built with the new gcc?
74 >> You can do:
75 >> $ cat /proc/version
76 > Doing that produces the following response:
77 > Linux version 2.6.22-gentoo-r2-osmp (root@microway) (gcc version 4.1.2
78 > (Gentoo 4.1.2)) #2 SMP Mon Sep 3 21:52:26 EDT 2007
79 >
80 > Doing "gcc -v" produces output whose final line is
81 > gcc version 4.3.2 (Gentoo 4.3.2-r3 p1.6, pie-10.1.5)
82 >
83 > I take this to mean that the kernel is not built with the new gcc.
84 > Should I now try to rebuild the kernel with the new gcc? Never having
85 > rebuilt a kernel, I'd welcome advice about how to do it.
86
87 Before rebuilding your kernel, make sure to have a spare Live CD and
88 always a spare working kernel in /boot. For first time building, be
89 conservative on changing the .config; the priority would be to identify
90 which options are required to have a kernel that (at least) boots. For a
91 successful boot, the most important options are the ones related to your
92 harddisk and filesystem...
93
94 Configuring the kernel is kind of guesswork at first, although a more
95 intelligent guessess can be made by looking at lsmod, lspci, lshw, and
96 /proc/cpuinfo on a working kernel.
97
98 Tips: change the CONFIG_LOCAL_VERSION (General Setup -> Local Version -
99 append to kernel release) for every recompilation. By having a unique
100 version string for each recompiling, kernel modules from previous
101 recompilation of the same kernel version wouldn't get mixed up with the
102 new recompilation.
103 -----BEGIN PGP SIGNATURE-----
104 Version: GnuPG v2.0.11 (GNU/Linux)
105 Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
106
107 iEUEARECAAYFAkov+CQACgkQqC3FTmXeMUYWIwCY93aLwAX1yxsxi/4Mo171hiMd
108 jgCdHDorDkavLjt+BwxG/EmyAKXqwLU=
109 =wiOF
110 -----END PGP SIGNATURE-----