View previous topic :: View next topic |
Author |
Message |
cheater1034 Veteran
Joined: 09 Sep 2004 Posts: 1558
|
Posted: Fri Oct 20, 2006 9:35 pm Post subject: |~| CONRAD |~| Stage 1 on 72 "Eins/Uno/One" |
|
|
JOIN #Conrad on irc.freenode.org!
CONRAD
Stage 1 on 72 "Eins/Uno/One"
For your convenience, nothing more
NOT Supported or endorsed by the Gentoo Foundation, inc. in any way. Do not ask them for support or report bugs to them, PLEASE
#gentoo is a great place, great people, great help. So is #conrad.
=~~-~~=
This guide is in no way as unstable as previous versions, and only suggests the stable CFLAGS for use. And this is a 100% DIY/gentoo based installation. This is just documenting what gentoo does not. They do not document it because they do not support it, please do not present problems to gentoo developers because this installation document still makes use of the ~x86 branch of packages, instead of the completely stable branch x86.[/b]
If you've ever seen my previous versions, you'll see what i mean, they weren't just over the top, they were about 2.531 miles over the top and broke many systems.
Also in this version it doesn't have to be word for word, you can use your own knowledge and make the system your own, unlikes previous versions if you didn't make it a conrad system then you would of been a FAIL, and even if you made it a conrad system you still probably would of been a FAIL. With this if done right, you will not fail unless you try to.
Most people don't know or forgot how to do a stage1 nowadays, follow this and you'll be golden.
=~~-~~=
Please also note that this installation will work for both x86 and x86_64, but they have their differences and the steps are tested with x86, but NOT with x86_64
=~~-~~=
By: cheater-conrad (aka Brandon)
Named for: Puppy Conrad
=~~-~~=
THE #CONRAD CREW
----These are the originals from years ago, you could be on this list but first you need to join #conrad! *slap* ----
- Thoffmeyer (operator/founder)
- p4r0l3 (operator)
- Seren (Not an operator, but he should be)
- bigbob73 (operator)
- Vanquisher
- drbombay
- Xerion
- Cheater-Conrad/Myself
=~~-~~=
READ - ME - FIRST
Ok, first of all here I am stating what this is, why not to use it, and why you should never ask for help about your problems related to this installation document to anyone except for myself, people in the unsupported forum, or on #conrad on irc/freenode.
First of all, this is an installation method from stage1, the goal is a ~x86 gentoo system, first doing a basic bootstrap to get to stage2, then we will build the gcc 4.3.1/glibc 2.8x toolkit, then we can proceed to stage3 on a rebuild of the system. Below is a quick run down of the steps in this installation document:
- We use the 2008.0_beta2 stage1 tarball to start off, beginning like you would on any normal gentoo installations
- Then we set our chost/cflags using THIS, If you use ANYTHING beyond what is stated in that wiki you are not following this guide properly!
- We then make sure to define ACCEPT_KEYWORDS="x86" in our make.conf, along with misc. options such as MAKEOPTS and PORTAGE_NICENESS.
- Then we begin the bootstrap, which will progress us to stage2, but for this particular method we are not ready to proceed to stage3 yet.
- After the first bootstrap, we must go into make.conf, and change ACCEPT_KEYWORDS="x86" into "~x86"
- Now, we build the gcc 4.3.1/glibc 2.8 toolkit, essentially a second "mini" bootstrap because the first bootstrap will fail if we try to do it in one shot.
- Now we remove the old gcc, and set the profile for 4.3.1, as we proceed to stage3
- Now we describe the rest of the steps to configure the kernel and boot the gentoo system!
Q: Stage1!?!?!?! That's stupid isn't it? you can just rebuild a stage3 with emerge -e system and get the same thing!
A: Yes you can, but emerge -e system is not enough. To achieve the gcc 4.3.1 toolkit and ~x86 on a stage3, first you would have to change the CHOST/CFLAGS, then rebuild/update the entire system for ~x86. after this, you would be required to set the gcc 4.3.1 as the default profile. Then you would be required to rebuild the toolkit AGAIN with gcc 4.3.1. After this, you would be required to emerge -e system for the SECOND time! in order to rebuild everything with the new toolkit, alternatively to the original gcc 4.1 and glibc 2.6.
Uhh, a little different than just emerge -e system, as you can see it will take almost TWICE as long to begin with a stage3, than it will to begin with a stage1. And it is much quicker/easier/smarter to begin with a stage1 for this type of system
=~~-~~=
GLIBC 2.8* NOTE!! IMPORTANT!!!
There are a few packages that will not build with glibc 2.8 and are yet to be patched:
MAKE SURE to SEE section 8.10 of this guide in order to fix build fixes i've encountered.
=~~-~~=
STAGE 1 -----> STAGE 2
=~~-~~=
Notes: You can safely assume that 'x' in 'hdx' is a drive letter throughout this guide. Example: 'hdx = hda or hdb'
[-1-] - Choosing a LiveCD
There are ONE/UNO/EINS (1) choices, don't get confused. This is for X86 AND X86_64 Users, one cd fits all!.
[color=indigo]1.1 - System Rescue CD
NOTE: This LiveCD is for ALL users (x86 and x86_64).
NOTE2: My particular install was using the 1.0.3 version of the sysrescuecd, which is kernel 2.6.25
Download:
Quote: | http://www.sysresccd.org/Download |
1.2 - Burn the CD and Boot it up
If you are incapable of performing this task, it is strongly advisable that you do not attempt this installation
[-2-] - Preparing Your Network
2.1 - Check For Internet Connection
Quick test:
Code: | # ping http://google.com |
If no ping,
Code: | # net-setup eth0/1/2/3 |
[-3-] - (Optional, Not for SATA users) Using HDPARM
NOTE: sata users can use sdparm, but i've never used it and the commands are probably different.
3.1 - View Hard Disk Configuration
This is important so we know exacty what options to set, if you get confused please do skip this step.
We must know the configuration to know what options to set.
Code: | # hdparm -i /dev/hdx |
3.2 - Some of our options
These are some of our options I'm going to personally set, these will change on your configuration (hdparm -i)
I don't expect you to enable every single one, you don't have to, but you can if you would like, btw
DO NOT THINK YOU HAVE TO ENABLE EVERY ONE OF THESE SETTINGS! Most people will not/should not!
* After we set this up, make sure you add these options to /etc/conf.d/hdparm (Explained later in the guide)
* -a1024 = sets read_ahead buffer to 1024 bytes
* -a256 = default read_ahead_buffer
* -c1 = sets io support to 32bit (most commonly supported)
* -c3 = sets io support to 32bit with sync, if -c1 gives you problems, this is an alternitive, but will be slightly slower.
* -c0/2 = set io support to 16bit, if your hdd does not support 32bit
* -d1 = turn on dma
* -m16 = sets multile buffers count to 16 (my hd max. find it using hdparm -i)
* -A1 = enables read-lookahead
non-laptops:
* -M254 = change the acoustic management, 254 is the maximum for speed, 128 is the quiet, you can choose anything in between <-- will increase power usage
laptops?:
* -B1 = enable full power management, 255 turns it completely off, you can choose any number between 1-255
3.3 - Test Hard Disk Speed
Code: | hdparm -tT /dev/hdx |
3.4 - Enhance Hard Disk Performance - Optional
NOTE: THESE ARE ALL OPTIONAL OPTIONS! If you can not understand hdparm -i, do not mis set any options.
First option: enabling DMA
We'll do things one at a time, and we'll start by turning on DMA
Code: | hdparm -d1 /dev/hdx |
second option: Setting multi sectors
This varies, hdparm -i should read MaxMultiSect, which will specify what you can use. For me, it is 16
Code: | hdparm -m16 /dev/hdx |
Third option: Acoustic Management
I'm going to set it to the maximum, 254
Code: | hdparm -M254 /dev/hdx |
Fourth option: Power Management
I'm going to turn it down because I don't need to worry about conserving power in my particular case. I'll leave it default
Fifth option: read lookahead
Lets enable it for our purposes
Code: | hdparm -A1 /dev/hda |
Sixth option: readahead
You can adjust the amount of readahead buffer with -a
I want it a little bigger than my drive's default (256) so I'll set it up to 1024
don't set this yourself, unless you're sure you know what you're doing!
Code: | hdparm -a1024 /dev/hdx |
Seventh option: IO support
Most drives can support 32-bit, if yours doesn't use 16-bit, if yours gives you problem with -c1, try with sync, -c3 (slower), otherwise use 16-bit (default -c0, -c2)
Code: | hdparm -c1 /dev/hdx |
Recap: All options we have chosen
Code: | # hdparm -d1 -c1 -m16 -M254 -A1 -a1024 /dev/hdx |
[-4-] - Partitioning
This guide will go about using the following setup:
/dev/hdx1 - boot
/dev/hdx2 - swap
/dev/hdx3 - root
/dev/hdx4 - windows
4.1 Using Fdisk
Remember that once you have the partition layout, you need to set the type to 82 (Linux Swap) for the swap partition and 83 (Linux) for the root and boot partition. Once you have it setup correctly, hit *w* to write and exit.
Explanations
Swap (suggestions): The swap space should be double the amount of ram you have *** up to 768mb.
e.g. (256mb ram * 512mb swap, 512mb ram * 1gb swap, 768mb ram * 1.5 gb swap)
If you have 1gb of ram, optimal swap is 1gb.
If you have 2gb of ram, optimal swap is 512mb
If you have over 2gb of ram, no swap is reccomended.
Code: | # fdisk /dev/hdx
Command (m for help): p
Disk /dev/hdx: xxx heads, xx sectors, xxxx cylinders
Units = cylinders of xxxxx * 512 bytes
Device Boot Start End Blocks Id System
/dev/hdx1 1 14 158760 83 Linux # boot * about 100 MB
/dev/hdx2 15 49 264600 82 Linux swap # swap * about 512 MB if 2gb ram+, less use 2x the ram size
/dev/hdx3 50 70 2564563 83 Linux # root * remainder of space, unless you dual boot windows
/dev/hdx7 70 90 remainder 07 Windows # windows * remainder of space unless you don't have windows
|
4.2 - Creating Partitons
Use the file systems of your choice, please note for me personally i have used reiser4 on / and ext2 on /boot, i do not have a separate partition for my /home drive.
The cd does support reiser4, i'm not sure if it supports ext4 but i STRONGLY advise against the use of ext4 at this time
Code: | # mkfs.reiser4 /dev/hdx3
# mkfs.ext2 /dev/hdx1
# mkswap /dev/hdx2
# swapon /dev/hdx2
|
4.3 - Mounting your hard drives
Code: | # mount /dev/hdx3 /mnt/gentoo
# mkdir -p /mnt/gentoo/proc /mnt/gentoo/boot
# mount /dev/hdx1 /mnt/gentoo/boot |
[-5-] - Preparing Chroot
IMPORTANT NOTE: STAGE1 is NOT REQUIRED
- Please note that you can choose to begin from a stage1 OR a stage2 tarball, i myself have done a stage 1.
However, if you begin with a stage2, you may SKIP STEP 8.1!
5.1 - Downloading and Extracting the stage1 OR stage2
x86
Code: | # cd /mnt/gentoo
(NOTE: Don't download both, read above and download whichever you choose)
# wget http://gentoo.osuosl.org/releases/x86/2008.0_beta2/stages/stage1-x86-2008.0_beta2.tar.bz2
(NOTE: If you start with a stage2, you can either do i486/x86 or i686, i'm going to assume)
# wget http://gentoo.osuosl.org/releases/x86/2008.0_beta2/stages/stage2-i686-2008.0_beta2.tar.bz2
-------obviously extract the one you chose-------
# tar -jxvpf stage1-x86-2008.0_beta2.tar.bz2 |
x64
Code: | # cd /mnt/gentoo
(NOTE: Don't download both, read above and download whichever you choose)
# wget http://gentoo.osuosl.org/releases/amd64/2008.0_beta2/stages/stage1-amd64-2008.0_beta2.tar.bz2
OR
# wget http://gentoo.osuosl.org/releases/amd64/2008.0_beta2/stages/stage2-amd64-2008.0_beta2.tar.bz2
-------obviously extract the one you chose-------
# tar -jxvpf stage1-amd64-2008.0_beta2.tar.bz2 |
5.2 - Downloading and Extracting a Portage Snapshot
Code: | # wget http://gentoo.osuosl.org/snapshots/portage-latest.tar.lzma
# tar --lzma -xvf portage-latest.tar.lzma -C /mnt/gentoo/usr/ |
5.3 - Copying resolv.conf
Code: | # cp -L /etc/resolv.conf /mnt/gentoo/etc/ |
[-6-] - Preparing New Environment
6.1 - Making various directories for portage.
Code: | # For Overlays
mkdir /mnt/gentoo/usr/local/portage
# For portage config files
mkdir /mnt/gentoo/etc/portage
|
6.2 - Mounting /proc
Code: | # mount -t proc none /mnt/gentoo/proc |
6.3 - Chrooting
Code: | # chroot /mnt/gentoo /bin/bash
# env-update; source /etc/profile |
6.4 - Check for correct date
Code: | # date
061316332008
(If incorrect, enter the following in correct format, and please use military time)
# date MMDDhhmmYYYY |
[-7-] - Preparing For Installation
7.1 - Configuring make.conf
Configuring CFLAGS should be done using the following website:
http://gentoo-wiki.com/Safe_Cflags
Anything beyond this is not reccomended because most individuals do not know what these flags do but they will enable them anyway!
Code: | # nano /etc/make.conf |
Here's an example make.conf, it's my make.conf for my intel core 2 duo e6400 at this stage in the process
Code: | CFLAGS="-march=prescott -O2 -fomit-frame-pointer -pipe"
CXXFLAGS="${CFLAGS}"
CHOST="i686-pc-linux-gnu"
# Dual core
MAKEOPTS="-j3"
|
7.2 - Additional and Optional parameters for make.conf
The following parameter is in case you add any overlays/ebuilds to portage, you need to define the directory:
Code: | PORTDIR_OVERLAY="/usr/local/portage" |
The following are just optional, but i like to use the myself.
Code: | PORTAGE_NICENESS="15" |
[-8-] - Bootstrapping (progressing into stage2, mind you we are still at stage1)
8.1 - Running the BOOTSTRAP Script! - YEAh bABY!
Code: | cd /usr/portage/scripts
./bootstrap.sh |
Go enjoy some java joe's because this may take a little bit (usually about 2 hours, for me probably 1.5 hours)
8.2 - Setting Locales - OPTIONAL
This is optional. Set this according to your area. It saves build time on glibc.
Code: | # nano -w /etc/locale.gen |
Example file:
Code: | # This file names the list of locales to be built when glibc is installed.
# The format is <locale>/<charmap>, where <locale> is a locale from the
# /usr/share/i18n/locales directory, and <charmap> is name of one of the files
# in /usr/share/i18n/charmaps/. All blank lines and lines starting with # are
# ignored. Here is an example:
# en_US/ISO-8859-1
en_US/ISO-8859-1
en_US.UTF-8/UTF-8
|
Congratulations, you now have a fully disfunctional gentoo stage2 installation, but this is only the beginning!!!! muahahahahaha
=~~-~~=
STAGE 2 -----> STAGE 2?????
=~~-~~=
8.3 - Setting for ~x86 in make.conf
If you already did this, then you did not read the "READ-ME-FIRST" part up top, which means you FAIL, and i have this to say to you "You are the weakest link, Goodbye"
Code: | # nano /etc/make.conf
Add the following line:
ACCEPT_KEYWORDS="~x86" |
8.4 - Building the gcc 4.3.1 toolkit
Now that we have crossed over to the dark side, it is time to build the gcc 4.3.1/glibc 2.8 toolkit, please note that this is 1/2 builds of the toolkit, this build will create us a gcc 4.3.1 toolkit built my gcc 4.1, the second build will create a gcc 4.3.1 toolkit built by gcc 4.3.1, makes sense, right?
Code: | # emerge gcc glibc binutils |
8.5 - Setting gcc 4.3.1 as the default profile/compiler
Code: | # gcc-config -l
(Lists installed compilers, you should see [1] 4.1.2 * and [2] 4.3.1)
obviously we want #2, so enter this:
# gcc-config 2
# env-update; source /etc/profile
Then we remove the old version of gcc for good
# emerge -P gcc |
8.6 - Building the gcc 4.3.1 toolkit....with the gcc 4.3.1 toolkit!
We already have the gcc 4.3.1/glibc 2.8 toolkit, this is old news. But that toolkit was built with gcc 4.1, the correct method on updating a toolkit would be to rebuild the toolkit with itself.
WE ARE NOT, and i repeat WE ARE NOT going to rebuild gcc a second time, it will waste your time and money...... when you emerge gcc, it builds itself 3 times, first with the old compiler, then with the new compiler, and then again with the new compiler, and the third compiler is the final product
As pointed out by DBautell on #gentoo (thanks for bringing it to my attention) ^^
Code: | # emerge glibc binutils |
Feels like another chunk of your life wasted, right, but keep your eyes on the prize!
=~~-~~=
STAGE 2 -----> STAGE 3!!!!!
=~~-~~=
Now, this is essentially our final step before getting ready to boot up, this will bring us to the stage3 you download from the servers, except unlike the stage3's on the servers yours is ~x86, custom built for your machine with your flags, and it's all built with the latest version of gcc, 4.3.1
Remember young lad, this is the whole point of this installation, you only have 1 simple command to go!
Dear loyal stage1/3 doers, this is the final step for me, and i regret to inform you that you don't even have the gcc 4.3.1 toolkit. Heck, you could quit now and do a stage1 like this and still finish before you'd finish that disgusting stage1/3
On to the last command!
8.7 - Setting your USE flags
THIS WILL add more things to your emerge -e system, but don't fret child, you will have everything built the way you want it, for me i have my use flags below, and it turned 95 packages into 116, including some x libraries
This is another ADVANTAGE OVER STAGE3, the stage3 is built with the stock use flags, this stage3 is built with YOUR use flags, saving you from having to rebuild packages in the future because alsa, or gpm, or X was not set as a use flag when the package was originally built
For more information on setting use flags, please visit: http://gentoo-wiki.com/FAQ_USE_Flags
http://gentoo-wiki.com/FAQ_USE_Flags
My use flags:
Code: | USE="alsa acpi X kde aim arts nvidia fbcon ffmpeg firefox firebird gif gpm mplayer mpeg mp3 ncurses opengl pdf php qt3 qt4 kdm |
I suggest doing this before rebuilding the system for reasons described above ^, if you do it after then you will not have a system built with your use flags.
8.8 - Rebuilding the SYSTEM
This is the LONGEST step in the whole guide, because you are building the entire system/files. This is what makes a stage2 a stage3. You have so far bootstrapped and built the gcc 4.3.1 toolkit the CORRECT way (lets hope you didn't skip any steps to save time, if you did, you FAIL)
However, the following command will rebuild everything, including the toolkit, so we're probably looking at 2-3x longer than building the toolkit by itself. Just start this up, have dinner or watch a movie and you're in pretty good shape.
Precautionary Problem Emerge!
On my emerge -e system, kbd failed saying mktemp: command not found.
However, discovering the latest coreutils has mktemp, i had to update coreutils, however we also need to emerge coreutils dependencies (these will all be rebuilt again, when you emerge -e system):
Code: | #emerge --nodeps lzma-utils automake attr acl coreutils |
Thanks to blaise on #gentoo for solving this problem for me
Now, build the system.
Code: | # emerge -e system
Note: Just a little side note, my emerge stopped after python for no apparent reason, if this happens to you just do emerge --resume, i did that and everything compiled fine so i don't understand why it stopped. But the good news is, python is just about at the end :D |
(Wow, a lot of drama for one little command)[/b]
8.9 - Setting the timezone
There's a reason for doing this after emerge -e system, because when you start with a stage1 there is no /usr/share/zoneinfo!
Code: | # rm -rf /etc/localtime
(for me, i'm going to set the US/Eastern timezone)
# ln -s /usr/share/zoneinfo/US/Eastern /etc/localtime |
8.10 - Fixing glibc fooey
The following two packages will fail as a result of glibc 2.8. However, these are both easy to fix as described below. They are dependencies of X11 so don't look at them and say "whatever i don't use them" actually follow the following steps!
netkit-rsh
- Apparently a dependency of xorg-x11 when i emerge it
- Due to glibc 2.8
Code: | # mkdir -p /usr/local/portage/net-misc/netkit-rsh
# cd /usr/local/portage/net-misc/netkit-rsh
# wget http://bugs.gentoo.org/attachment.cgi?id=156649
# mv attachment.cgi?id=156649 netkit-rsh-0.17-r9.ebuild
# wget http://bugs.gentoo.org/attachment.cgi?id=156651
# mv attachment.cgi?id=156651 netkit-rsh-0.17-arg_max.patch
# mkdir files/
# cp /usr/portage/net-misc/netkit-rsh/files/* files/
# mv netkit-rsh-0.17-arg_max.patch files/
# ebuild netkit-rsh-0.17-r9.ebuild digest
*Fixed* |
ACPI
- ACPI fails to build as a result of glibc 2.8, probably just a cleanup.
Code: | # mkdir -p /usr/local/portage/sys-power/acpid
# cd /usr/local/portage/sys-power/acpid
# mkdir files/
# cp /usr/portage/sys-power/acpid/files/* files/
# wget http://bugs.gentoo.org/attachment.cgi?id=156025
# mv attachment.cgi?id=156025 acpid-1.0.6-r2.ebuild
# ebuild acpid-1.0.6-r2.ebuild digest
*fixed* |
QT 4.3.4 failure to compile
- It fails to compile for some reason
- I played with the use flags, and apparently my firebird use flag broke it.
Code: | # echo "x11-libs/qt -firebird" >> /etc/portage/package.use |
[-9-] - Setting up Zen-Sources (My personal reccomendation/supports reiser4)
9.1 - Setting up the sources
Note: Please note at the time of this guide, the latest version of zen is -rc6-zen1. Meaning i emerged vanilla, -rc6. You have to have the same vanilla that the patch applies to!
Code: | # emerge vanilla-sources
# cd /usr/src/linux
# wget http://zen-sources.org/files/2.6.26-rc6-zen1.patch.bz2
# bunzip2 2.6.26-rc6-zen1.patch.bz2
# patch -p1 -i 2.6.26-rc6-zen1.patch |
9.2 - Configuring and Compiling Kernel
-----
All I can do is tell you how to get started, and what is required.
Code: | # cd /usr/src/linux
# make menuconfig
|
Please not none of this menuconfig has changed since the conrad guide of quite awhile ago, so the below information is somewhat outdated, this was just to give you an idea anyways, i don't feel i can tell peopl what to compile in their kernel
Although i do reccomend 864HZ, and i'm trying the bfq i/o scheduler because i never heard of it. Zen has a bunch of fun stuff to play with
Code: | Required Options...
Code maturity level options --->
[*] Prompt for development and/or incomplete code/drivers
General setup --->
[*] Support for hot-pluggable devices
Loadable Module Support --->
[*] Module unloading support
Processor type and features --->
[*] Standard x86 support (Used for amd64/em64t cpus)
(Change accordingly)
(Your Processor Family) Processor family
[*] Symmetric multi-processing support
# If you have exactly 1GB of memory use the following else just leave it at default.
Memory Split (3G/1G user/kernel split (for full 1GB Low memory)) ---->
File systems --->
Pseudo Filesystems --->
[*] /proc file system support
[*] Virtual memory file system support (former shm fs)
<*> Second Extended FS Support
<*> Ext2 extended attributes
<*> Ext3 journalling file system support
[*] Ext3 Extended Attributes
<*> Reiser4 Support (EXPERIMENTAL)
Device Drivers --->
ATA/ATAPI/MFM/RLL support --->
[*] Generic PCI bus-master DMA support
[*] Use PCI DMA by default when available
[ ] SCSI Emulation Support
Device Drivers --->
Networking support --->
<*> PPP (point-to-point protocol) support
<*> PPP support for async serial ports
<*> PPP support for sync tty ports
100 MBIT/1000 MBIT --->
(make sure you compile in your proper network driver
Sound --->
[M] Sound card support
Alsa --->
PCI Cards --->
[M] Your Driver, mine is intel8x0, a common one is emu10k1 for soundblaster cards
USB Support --->
<*> USB Human Interface Device (full HID) support
Device Drivers > Graphics support:
[*] Support for frame buffer devices
<*> VESA VGA graphics support
VESA driver type (vesafb-tng) --->
(HRESxVRES@FREQ) VESA default mode # Pick your resolution - eg. 1024x768@84
Device Drivers > Graphics support > Console display driver support:
[*] Video mode selection support
<*> Framebuffer Console support
Device Drivers > Graphics support:
[*] Support for the framebuffer splash
Device Drivers > Block devices:
<*> RAM disk support
(4096) Default RAM disk size (kbytes) (NEW)
[*] Initial RAM disk (initrd) support |
9.3 - Choosing an IO Scheduler
We're going to configure another important aspect in our kernel. Here is a run down of each IO Scheduler.
CFQ: Best all-around for desktop performance, including reiser4. If you want to use the others go for it, but CG now reccomends CFQ
Code: | KERNEL CONFIGURATION
Block Devices > IO Schedulers
[*] Anticipatory
[*] Deadline
[*] CFQ
[*] BFQ
(Default = CFQ) |
NOTE: To test different IO Schedulers, you can use 'elevator=' boot parameter in Grub (Example: elevator=deadline) I Reccomend CFQ for ALL ext* file systems.
9.4 - Emerging Grub
Code: | (make sure the /boot partition is mounted)
# emerge grub | [/b]
9.5 - Compiling the Kernel
Code: | # make ; make modules_install ; make install |
[-10-] - Emerging Additional System Files
10.1 - Emerging Services and Tools
NOTE: you do not need all of these, but they are certainly reccomened and most people need dhcpcd, and if you need the tools for your file system (reiser4progs if you used reiser4), and gentoolkit has a lot of neat stuff, etc.
Code: |
# emerge syslog-ng reiserfsprogs reiser4progs sysfsutils dhcpcd gentoolkit slocate vixie-cron |
NOTE: There are more things you may need, for example i needed mdadm for my software raid
10.2 - Adding the programs to the default runlevel
Code: | (first off, for net.eth0)
# ln -s /etc/init.d/net.lo /etc/init.d/net.eth0
# rc-update add syslog-ng default
# rc-update add net.eth0 default
# rc-update add acpid default
# rc-update add gpm default
# rc-update add vixie-cron default
# rc-update add numlock default |
NOTE: If you emerged additional things you need, such as mdadm like myself, you may also need to add them into the runlevel
[-11-] - Setting up Gensplash
Please note this section is no longer explained by yours truly, if you are interested in a gensplash, please visit:
http://gentoo-wiki.com/HOWTO_gensplash
[-12-] - Configuring and Installing Grub
12.1 - Modifying '/boot/grub/grub.conf'
In grub, hdx1 is (hd0,0), and hdx2 is (hd0,1) and so forth.
Code: | nano -w /boot/grub/grub.conf
# If idle for 15 seconds, boot the default operating system
timeout 30
# Means default is the conrad gentoo installation, set to 1 for windows
default 0
# splash image is nice
splashimage=(hd0,0)/grub/splash.xpm.gz
# Please note that this is not needed, otherwise it will run the default i/o as configured in your kernel
# elevator=deadline/cfq/anticipatory/bfq
title=~Conrad~ Stage 1 on 72
root (hd0,0) # boot partition, hda1
kernel /vmlinuz-2.6.26-rc6-zen1 root=/dev/hda3 video=vesafb:1024x768-32@80,mtrr,ywrap CONSOLE=/dev/tty1
title=Winbloze
rootnoverify (hd0,3) # in our demonstrative partitions, windows was on hda4
makeactive
chainloader +1 |
12.2 - Running grub for installation to MBR
Code: | # grub
<grub:> root (hd0,0) # boot partition
# (hd0) is the MBR of the drive.
<grub:> setup (hd0)
<grub:> quit |
[-13-] - Configuring Your System
13.1 - Editing Configuration Files
Replace 'hdx' with the correct drive letter.
Code: | # nano -w /etc/conf.d/hdparm
# lets add all our options as seen previously above. refer back to it if you need to |
13.2 - Set Your Hostname and Domainname
Code: | # nano /etc/conf.d/hostname
HOSTNAME="conrad-v4" |
Code: | # nano -w /etc/hosts
127.0.0.1 conrad-v4 localhost |
If you don't understand these 2 files, leave them alone.
Code: | # nano -w /etc/conf.d/domainname
# DNSDOMAIN=""
# NISDOMAIN="" |
13.3 - Editing the /etc/conf.d/net
Code: | # nano -w /etc/conf.d/net |
Code: | # DHCP Default Setting
config_eth0=( "dhcp" ) |
For additional info, refer to '/etc/conf.d/net.example'
13.4 - Configuring FSTAB
NOTE: Reiser4 users must use noatime in the options. If you aren't using reiser4 just ignore this note.
Code: | # nano /etc/fstab
...Change lines 20-23... |
Example
Code: | /dev/hdx1 /boot ext2 noauto,noatime 1 2
/dev/hdx3 / reiser4 noatime,nodiratime 0 1
/dev/hdx2 none swap sw 0 0
/dev/hdx4 none ntfs ro 0 0
/dev/sda1 /mnt/cdrom iso9660 noauto,ro 0 0 |
13.5 - Setting up Users
Note: I don't use users, i always log in as root but i don't reccomend it, shoot me if you wish for disobeying the laws of security.
First set the root password
Code: | # passwd
<enter new password>
<confirm new password> |
Then set up a user
Code: | # useradd -m -G users,wheel,audio,video conrad
# passwd conrad
<set conrad password>
<confirm conrad password> |
[-14-] - Rebooting System
14.1 - Unmounting and Rebooting
Code: | # exit
# umount /mnt/gentoo/boot /mnt/gentoo/proc /mnt/gentoo /mnt/gentoo/dev
# reboot |
14.2 - Booting New System
Hopefully you'll have a grub menu, and be able boot into your new system.
If you get a kernel panic then check to make sure you configured everything correctly by booting back into the SysrescueCD and checking back your fstab, grub.conf, and if neither of those contains errors the problem probably lies in your kernel configuration.
[-15-] - USE flags and additional configuration
15.1 - Looking at the possible use variables
Code: | # nano -w /usr/portage/profiles/use.desc |
Uhh, if you did this way back in step 8.7 then you don't need to do this , and your system has already been built with your use flags
15.2 - Setting additionalUSE Flags
Code: | # nano -w /etc/make.conf
USE="add1 add2 add3.....xv" |
For more In-Depth configuration information, consult the Gentoo Handbook
[-16-] - Installing Modular X and a graphical environment
16.1 - Emerging Xorg
Code: | # nano /etc/make.conf
...Set INPUT_DEVICES and VIDEO_CARDS
EX:
INPUT_DEVICES="keyboard mouse"
VIDEO_CARDS="nv nvidia vesa"
# emerge -Dvat xorg-x11
# emerge -DuNav xev xdpyinfo xvinfo xset xdriinfo xprop
# emerge -DuNav font-adobe-100dpi font-adobe-75dpi font-adobe-utopia-100dpi font-adobe-utopia-75dpi font-bh-100dpi font-bh-75dpi font-bh-type1 font-bh-lucidatypewriter-100dpi font-bh-lucidatypewriter-75dpi font-bitstream-100dpi font-bitstream-75dpi ttf-bitstream-vera corefonts freefonts font-ibm-type1
|
16.2 - Getting an xorg.conf setup
You should be able to do this on your own.
or
16.3 - Installing a DE/WM
You can choose to install any DE or WM, by typing "emerge gnome gnome-light kde openbox fluxbox blackbox etc"
Obviously, i reccomend KDE4
HOW-TO: KDE4: http://www.gentoo.org/proj/en/desktop/kde/kde4.xml
16.4 - Graphics Drivers
If you have 3D acceleration on your card, you should install the nvidia or ati drivers.
If you want to stick to the crapy nv or vesa drivers than don't do this, but why would you :X
Gentoo-Wiki NVIDIA Guide: http://gentoo-wiki.com/HOWTO_nVidia_Drivers
Gentoo-Wiki ATI Guide: http://gentoo-wiki.com/HOWTO_ATI_Drivers
16.5 - Configuring Login Manger (GDM/KDM)
If you did gnome-light or kde you may want to to emerge gdm/kdm
Code: | # emerge gdm .or. emerge kdm
# nano /etc/rc.conf
DISPLAYMANAGER="gdm" .or. "kdm"
# rc-update add xdm default |
[-17-] - Configuring ALSA
For more information you may want to visit the Gentoo Linux Alsa Guide.
Gentoo Alsa Guide: http://www.gentoo.org/doc/en/alsa-guide.xml
17.1 - Emerging alsa packages
(Assuming you have the sound card and alsa items as modules in-kernel)
Code: | # emerge alsa-lib alsa-headers alsa-utils |
17.2 - Running alsaconf
17.3 - Editing Additional Files
Code: | # nano -w /etc/modules.d/alsa
<Find near the botton snd-***, and sound-***>
change *** to your sound card name, for example...
(if it is already there, just ignore it)
snd-intel8x0 sound-intel8x0
snd-emu10k1 sound-emu10k1 |
17.4 - Running ALSAMIXER
You should run alsamixer to adjust the levels of your card, and make sure it is all unmuted, you can press 'M' to unmute/mute the card, by default, alsaconf should unmute all or most, depending on setup, of the things required.
17.5 - Adding Alsasound to Default Runlevel
Code: | # rc-update add alsasound default |
[-18-] - Keeping an Up-To-Date System
18.1 - Performing routine housekeeping for your gentoo installation.
Ok, ok. You now have only the coolest gentoo installation in the world and will make all your friends jealous.
But if you have outdated packages then you will be a FAIL
*cracks whip* You will now learn maintaining a gentoo system 101
18.2 - Keeping portage updated
First of all always keep the sync up-to-date, I strongly reccomend an emerge sync once a day, even if you don't compile anything that day. I also reccomend it before any major emerge, because you never know when a new version is released, and on the ~x86 branch updates are extremely frequent as opposed to a stable x86 installation.
18.3 - Updating the World
First of all, if you do not know what the world file is, it is a file that keeps track of every package (including the system packages) that you have emerged.
If you delete this file, you may have some catastrophic failure, so for starters, DO NOT DELETE THE WORLD FILE! I'm not even going to tell you where it's located, don't nano it, don't play with it. Just leave it alone.
Luckily gentoo has done this for you and me, how it works is that it keeps track of every package you've emerged and the version of the package. This means that if portage has a newer version, you've guessed it, emerge world.
Think of the simplicity, and convenience of it. Emerge world, a single command is much easier than emerge NAMEOFEVERYPACKAGEYOUEVERINSTALLED.
Well, i STRONGLY ADVISE you to update the world atleast once a week, just do it before you go to bed, it's no big deal. If you go much longer than a week without updating it, you can get so far behind and you'd have to leave it compile for hours.
Code: | (what do you do before a major emerge? i just told you....., that's right! emerge sync)
# emerge --sync
# emerge -pvuD world |
=~~-~~=
My (Cheater-Conrad)'s Results!
=~~-~~=
Ok, now please take a serious note on this. I, have started this installation at 4PM EST 6/13/2008, i have FINISHED this installation and booted into the system at 11:52PM EST 6/13/2008.
This installation guide was written on 6/13/2008, and completed at 11:47PM EST 6/13/2008.
I am going to share my results, considering i wrote this guide as i went along installing my OWN gentoo . I have 2 computers here, my core 2 duo (6400), and my duron (runs windows, but used to write the guide).
Anyways, this installation is the most stable, and most guaranteed install i have ever written. Looking at the previous version, i almost s*** myself in disbelief i would even consider running half of that stuff, let alone advising other people to run it.
Ok, i wrote this document while installing my own, with the exact same steps. As i installed, i ran back and forth from my computer to this one to write down new things and basically just write the whole thing. I have received help from people on #gentoo, as you see the names blaise and DBautell above in section 8 giving them credit.
Anyways, on my first bootup. It zoomed by a bunch of green stars and presented me with a login prompt (Not even ONE yellow or red star!). This was the cleanest first boot i can remember doing also. I logged in as root, and then proceeded to install X when i found the errors of acpi and netkit-rsh, i discovered that these have already been discussed on bugs.gentoo.org, and are attributed to glibc 2.8 and have been fixed (so i added step 8.10)
Anyways, follow this and enjoy your new gentoo installation It definitely has some nice toys but it's not over the top
=~~-~~=
CREDITS!
=~~-~~=
rmh3093 - Zen-Sources
bigbob73 - My install partner, chatting on IRC he's the first person to use the guide
- Also tested emerge --nodeps step before emerge -e system.
blaise - from #gentoo on freenode, helped me out with the coreutils/automake problem
DBautell - Pointed out my stupidity and eliminated an unnecessary step - helped me with my stupid forgetful questions
My 96' Probe GT - For being beautiful, time to get some modding done
Mountain Dew - Self Explanatory
My sudden spark of motivation to install gentoo - haven't had that in awhile
thoffmeyer - for doing nothing, but he did motivate me to do a stage1
p4r0l3 - for telling me some day when he needs to re-install gentoo, he'll do it my way _________________ IRC!: #zen-sources on irc.rizon.net
zen-kernel.org
--
Lost in android development land.
Last edited by cheater1034 on Sun Jun 15, 2008 4:26 am; edited 46 times in total |
|
Back to top |
|
|
cheater1034 Veteran
Joined: 09 Sep 2004 Posts: 1558
|
Posted: Fri Oct 20, 2006 10:08 pm Post subject: |
|
|
*Edit*
enhanced the upgrade guide from 3.0 a little bit. _________________ IRC!: #zen-sources on irc.rizon.net
zen-kernel.org
--
Lost in android development land. |
|
Back to top |
|
|
Conan Guru
Joined: 02 Nov 2004 Posts: 360
|
Posted: Fri Oct 20, 2006 10:29 pm Post subject: |
|
|
I see that you took one of my "useless comments" to heart and snuck the changes in anyways
Nice try. |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54578 Location: 56N 3W
|
Posted: Fri Oct 20, 2006 11:13 pm Post subject: |
|
|
cheater1034,
Quote: | Fourth option: unmask irq
Turn it on if you like it :)
Code:
hdparm -u1 /dev/hdx | is a really bad move and will be a slowdown. It was a horrible dirty hack in the days when serial ports didn't have FIFOs, to get the serial port data rate over 9600 characters/sec. Its purpose is to allow lower priority IRQs to interrupt HDD IRQs. The HDD IRQ could take so long to service that serial ports dropped characters.
With DMA in effect on the HDD, these unmasked IRQs (if you have any anyway) can cause DMA timeouts, you will see an error in dmesg if that happens and the kernel will fall back to PIO mode, which kills performance (Its 20x to 30x slower).
When/if this fallback happens depends on system loads and what devices are allocated what IRQs, so its often not repeatable. Unmasking IRQs is just a VeryBadThing (tm).
Using the -X option to hdparm can trash your filesystem(s) too. Far better to set up the kernel properly for your IDE controller and not use hdparm at all, unless you need to turn off irqunmasking.
-c1, setting 32 bit I/O makes a big difference to PIO modes as it reduces the number of reads/writes the CPU has to do th fetch the data from the IDE controller (its 16 bit on the the IDE cable anyway). However, as there is little CPU involement in DMA modes, 32 or 16 bit modes make very little difference to disk performace. (The bus is much faster than the drive).
In summary, some of these hdparm options are dangerous to your data, some are counter productive, others are ineffective. The kernel will do it all automatically if its configured correctly, with the possible exception of irqunmasking.
SATA or SCSI drive users can ignore all of this. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
cheater1034 Veteran
Joined: 09 Sep 2004 Posts: 1558
|
Posted: Sat Oct 21, 2006 12:22 am Post subject: |
|
|
NeddySeagoon wrote: | cheater1034,
Quote: | Fourth option: unmask irq
Turn it on if you like it
Code:
hdparm -u1 /dev/hdx | is a really bad move and will be a slowdown. It was a horrible dirty hack in the days when serial ports didn't have FIFOs, to get the serial port data rate over 9600 characters/sec. Its purpose is to allow lower priority IRQs to interrupt HDD IRQs. The HDD IRQ could take so long to service that serial ports dropped characters.
With DMA in effect on the HDD, these unmasked IRQs (if you have any anyway) can cause DMA timeouts, you will see an error in dmesg if that happens and the kernel will fall back to PIO mode, which kills performance (Its 20x to 30x slower).
When/if this fallback happens depends on system loads and what devices are allocated what IRQs, so its often not repeatable. Unmasking IRQs is just a VeryBadThing (tm).
Using the -X option to hdparm can trash your filesystem(s) too. Far better to set up the kernel properly for your IDE controller and not use hdparm at all, unless you need to turn off irqunmasking.
-c1, setting 32 bit I/O makes a big difference to PIO modes as it reduces the number of reads/writes the CPU has to do th fetch the data from the IDE controller (its 16 bit on the the IDE cable anyway). However, as there is little CPU involement in DMA modes, 32 or 16 bit modes make very little difference to disk performace. (The bus is much faster than the drive).
In summary, some of these hdparm options are dangerous to your data, some are counter productive, others are ineffective. The kernel will do it all automatically if its configured correctly, with the possible exception of irqunmasking.
SATA or SCSI drive users can ignore all of this. |
Thanks a lot for the advice, I personally am a SATA user, so I do ignore all the hdparming, and I put it in as suggested by one of the users some time ago.
I appreciate the advice, and I'll see about removing HDPARM steps all together. _________________ IRC!: #zen-sources on irc.rizon.net
zen-kernel.org
--
Lost in android development land. |
|
Back to top |
|
|
Seventjah n00b
Joined: 01 May 2005 Posts: 22
|
Posted: Sat Oct 21, 2006 12:03 pm Post subject: |
|
|
I've got a small question, I'm installing conrad atm, but the make.conf I downloaded has in the USE settings nptl instead of nptlonly, what's the right one? |
|
Back to top |
|
|
bigbob73 Guru
Joined: 31 Dec 2004 Posts: 332 Location: Under the Lone Star
|
Posted: Sat Oct 21, 2006 12:26 pm Post subject: |
|
|
Seventjah wrote: | I've got a small question, I'm installing conrad atm, but the make.conf I downloaded has in the USE settings nptl instead of nptlonly, what's the right one? |
put them both in. _________________ A computers attention span is only as long as it's electrical cord (Murphy) |
|
Back to top |
|
|
_BLooDy_ n00b
Joined: 21 Oct 2006 Posts: 13 Location: Germany
|
Posted: Sat Oct 21, 2006 3:45 pm Post subject: |
|
|
Hi.
First of all: Cheater, thank u for your Conrad-Gentoo. First Gentoo-Installation which was feeling fast on my machine!
I am trying to upgrade from guide-3.0.2 to this one (guide-3.1.0), but still have problems with glibc-2.5.
Even following your steps, you posted me in IRC didn't help.
Don't know how I can fix this, though I tried to emerge glibc-2.5 / glibc-2.5-r3 about 5 times now with different make.conf. Even SANE CFLAGS don't work.
I also updated my profile to 2006.1, which didn't help, too.
Evertyime its the same error.
So I decided to mask glibc-2.5 / glibc-2.5-r3 and went on upgrading to guide-3.1.0 with glibc-2.4-r4.
But for instance, here is my error when emerging glibc-2.5-r3.
And this is my emerge --info.
Regards _________________ System:
~x86 Conrad-Gentoo - 2.6.19-beyond4 - reiser4 - xorg-7.2 - gcc-4.1.2 - glibc-2.5
Machine:
Intel Pentium 4 @ 2,4GHz - 1GB DDR - ATI Radeon Mobility M6 LY (r100) |
|
Back to top |
|
|
cheater1034 Veteran
Joined: 09 Sep 2004 Posts: 1558
|
Posted: Sat Oct 21, 2006 3:57 pm Post subject: |
|
|
_BLooDy_ wrote: | Hi.
First of all: Cheater, thank u for your Conrad-Gentoo. First Gentoo-Installation which was feeling fast on my machine!
I am trying to upgrade from guide-3.0.2 to this one (guide-3.1.0), but still have problems with glibc-2.5.
Even following your steps, you posted me in IRC didn't help.
Don't know how I can fix this, though I tried to emerge glibc-2.5 / glibc-2.5-r3 about 5 times now with different make.conf. Even SANE CFLAGS don't work.
I also updated my profile to 2006.1, which didn't help, too.
Evertyime its the same error.
So I decided to mask glibc-2.5 / glibc-2.5-r3 and went on upgrading to guide-3.1.0 with glibc-2.4-r4.
But for instance, here is my error when emerging glibc-2.5-r3.
And this is my emerge --info.
Regards |
It's certainly a "linking" error with the patch version of hashstyle from the old guide, and the new version of hashstyle (upstream) in the new guide.
try updating binutils FIRST.
*EDIT*
or the reverse may have been the proper way, glibc before binutils, if binutils is already upgraded, try downgrading it to the patch version again, and then try glibc. _________________ IRC!: #zen-sources on irc.rizon.net
zen-kernel.org
--
Lost in android development land. |
|
Back to top |
|
|
_BLooDy_ n00b
Joined: 21 Oct 2006 Posts: 13 Location: Germany
|
Posted: Sat Oct 21, 2006 4:13 pm Post subject: |
|
|
my first attempt was "emerge binutils glibc" but this failed then on glibc.
binutils is 2.17-r4, which was updating first, without any problems!
coreutils-6.3 compiled fine, too
To which version should i downgrade binutils?
*EDIT*
Ok, followed cheater's advice to change my binutils from 2.17-r4 to 2.17.50.0.5, then unmasked glibc-2.5-r3 and do now an "emerge -1 coreutils binutils glibc gcc libstdc++-v3"
*EDIT 2*
This didn't work!
Even w/o hashstyle & prelinking _________________ System:
~x86 Conrad-Gentoo - 2.6.19-beyond4 - reiser4 - xorg-7.2 - gcc-4.1.2 - glibc-2.5
Machine:
Intel Pentium 4 @ 2,4GHz - 1GB DDR - ATI Radeon Mobility M6 LY (r100)
Last edited by _BLooDy_ on Sun Oct 22, 2006 3:20 pm; edited 2 times in total |
|
Back to top |
|
|
cheater1034 Veteran
Joined: 09 Sep 2004 Posts: 1558
|
Posted: Sat Oct 21, 2006 5:04 pm Post subject: |
|
|
Problem believed to be this missing step from upgrade guide:
Code: | # binutils-config 2
# emerge -P binutils |
Will confirm this momentarily. _________________ IRC!: #zen-sources on irc.rizon.net
zen-kernel.org
--
Lost in android development land. |
|
Back to top |
|
|
tel Tux's lil' helper
Joined: 15 Aug 2006 Posts: 112
|
Posted: Sun Oct 22, 2006 2:38 am Post subject: |
|
|
Sorry, cheater.
Upgrade from 3.02 to 3.1 still doesn't work. Fails in glibc:
Quote: | make[2]: *** make[2]: *** [/var/tmp/portage/sys-libs/glibc-2.5-r3/work/build-default-i686-pc-linux-gnu-nptl/sunrpc/rpcsvc/bootparam_prot.stmp] Segmentation fault
make[2]: Leaving directory `/var/tmp/portage/sys-libs/glibc-2.5-r3/work/glibc-2.5/sunrpc'
make[1]: *** [sunrpc/others] Error 2
make[1]: Leaving directory `/var/tmp/portage/sys-libs/glibc-2.5-r3/work/glibc-2.5'
make: *** [all] Error 2
!!! ERROR: sys-libs/glibc-2.5-r3 failed.
Call stack:
ebuild.sh, line 1564: Called dyn_compile
ebuild.sh, line 937: Called src_compile
glibc-2.5-r3.ebuild, line 1162: Called toolchain-glibc_src_compile
glibc-2.5-r3.ebuild, line 261: Called die
![/var/tmp/portage/sys-libs/glibc-2.5-r3/work/build-default-i686-pc-linux-gnu-nptl/sunrpc/rpcsvc/bootparam_prot.stmp] Segmentation fault
make[2]: Leaving directory `/var/tmp/portage/sys-libs/glibc-2.5-r3/work/glibc-2.5/sunrpc'
make[1]: *** [sunrpc/others] Error 2
make[1]: Leaving directory `/var/tmp/portage/sys-libs/glibc-2.5-r3/work/glibc-2.5'
make: *** [all] Error 2
!!! ERROR: sys-libs/glibc-2.5-r3 failed.
Call stack:
ebuild.sh, line 1564: Called dyn_compile
ebuild.sh, line 937: Called src_compile
glibc-2.5-r3.ebuild, line 1162: Called toolchain-glibc_src_compile
glibc-2.5-r3.ebuild, line 261: Called die
! |
Thoughts? |
|
Back to top |
|
|
cheater1034 Veteran
Joined: 09 Sep 2004 Posts: 1558
|
Posted: Sun Oct 22, 2006 3:20 am Post subject: |
|
|
tel wrote: | Sorry, cheater.
Upgrade from 3.02 to 3.1 still doesn't work. Fails in glibc:
Quote: | make[2]: *** make[2]: *** [/var/tmp/portage/sys-libs/glibc-2.5-r3/work/build-default-i686-pc-linux-gnu-nptl/sunrpc/rpcsvc/bootparam_prot.stmp] Segmentation fault
make[2]: Leaving directory `/var/tmp/portage/sys-libs/glibc-2.5-r3/work/glibc-2.5/sunrpc'
make[1]: *** [sunrpc/others] Error 2
make[1]: Leaving directory `/var/tmp/portage/sys-libs/glibc-2.5-r3/work/glibc-2.5'
make: *** [all] Error 2
!!! ERROR: sys-libs/glibc-2.5-r3 failed.
Call stack:
ebuild.sh, line 1564: Called dyn_compile
ebuild.sh, line 937: Called src_compile
glibc-2.5-r3.ebuild, line 1162: Called toolchain-glibc_src_compile
glibc-2.5-r3.ebuild, line 261: Called die
![/var/tmp/portage/sys-libs/glibc-2.5-r3/work/build-default-i686-pc-linux-gnu-nptl/sunrpc/rpcsvc/bootparam_prot.stmp] Segmentation fault
make[2]: Leaving directory `/var/tmp/portage/sys-libs/glibc-2.5-r3/work/glibc-2.5/sunrpc'
make[1]: *** [sunrpc/others] Error 2
make[1]: Leaving directory `/var/tmp/portage/sys-libs/glibc-2.5-r3/work/glibc-2.5'
make: *** [all] Error 2
!!! ERROR: sys-libs/glibc-2.5-r3 failed.
Call stack:
ebuild.sh, line 1564: Called dyn_compile
ebuild.sh, line 937: Called src_compile
glibc-2.5-r3.ebuild, line 1162: Called toolchain-glibc_src_compile
glibc-2.5-r3.ebuild, line 261: Called die
! |
Thoughts? |
I've tried pretty much everything through someone else, the upgrade just seems like a bust. We've even tried un-prelinking, re-compiling without the hash-style, then compiling glibc, but it still doesn't seem to work.
It's a very weird error, especially since it works on a fresh install for some reason :\ _________________ IRC!: #zen-sources on irc.rizon.net
zen-kernel.org
--
Lost in android development land. |
|
Back to top |
|
|
tel Tux's lil' helper
Joined: 15 Aug 2006 Posts: 112
|
Posted: Sun Oct 22, 2006 4:08 am Post subject: |
|
|
Actually, no problem. I have always liked your installs. I'm very happy to install from scratch to get this working. I've got all the configurations backed up anyway. |
|
Back to top |
|
|
Krampi n00b
Joined: 22 Oct 2006 Posts: 3
|
Posted: Sun Oct 22, 2006 12:28 pm Post subject: |
|
|
After trying endless combinations of binutils and glibc from portage and overlays, different CFLAGS and LDFLAGS, I found a way to get it to work.
Don't know which steps really are needed, but this is what I've done:
First I lowered the CFLAGS to
Code: | CFLAGS="-O2 -march=pentium4m -pipe" |
and disabled LDFLAGS completely.
Then I reemerged the toolchain with the versions from portage (binutils-2.17, glibc-2.4-r3, gcc-4.1.1).
Code: | # emerge binutils glibc
# binutils-config # (# of binutils-2.17)
# source /etc/profile
# emerge glibc binutils gcc libstdc++-v3 libtool portage
# gcc-config # (# of gcc-4.1.1)
# env-update; source /etc/profile
# emerge binutils glibc gcc libstdc++-v3 libtool portage |
After these steps, glibc-2.5 still couldn't be compiled (tried the one from portage and from some overlays).
So I did an
and I could finally emerge any glibc-2.5 with all the CFLAGS and LDFLAGS enabled.
Next I did the same steps again, but with binutils, glibc and gcc from overlays, then I had to
because nothing seemed to work anymore, couldn't even log into a shell. So don't close any windows while following these steps... |
|
Back to top |
|
|
_BLooDy_ n00b
Joined: 21 Oct 2006 Posts: 13 Location: Germany
|
Posted: Sun Oct 22, 2006 2:52 pm Post subject: |
|
|
Krampi, is it working now fine or do u still have problems?!
Was it worth to upgrade to glibc-2.5 or not? _________________ System:
~x86 Conrad-Gentoo - 2.6.19-beyond4 - reiser4 - xorg-7.2 - gcc-4.1.2 - glibc-2.5
Machine:
Intel Pentium 4 @ 2,4GHz - 1GB DDR - ATI Radeon Mobility M6 LY (r100) |
|
Back to top |
|
|
Krampi n00b
Joined: 22 Oct 2006 Posts: 3
|
Posted: Sun Oct 22, 2006 4:07 pm Post subject: |
|
|
_BLooDy_ wrote: | Krampi, is it working now fine or do u still have problems?! |
Everything runs fine.
Did the update to 2.5 a week ago and had no problems so far.
Had to skip python, vnc and gimp during emerge -e world, because they stopped with an error message.
But python and gimp compiled cleanly after some other packages had been reemerged.
Vnc is the only package that doesn't emerge at the moment, but I don't think that glibc causes this.
_BLooDy_ wrote: | Was it worth to upgrade to glibc-2.5 or not? |
I didn't notice any difference between 2.4 and 2.5, so I guess the update won't change anything for the normal user.
Your system won't run faster or anything like that.
It's just an update.
Edit: "ln -s autom4te-2.60 autom4te-2.13" solved my problem with vnc. |
|
Back to top |
|
|
_BLooDy_ n00b
Joined: 21 Oct 2006 Posts: 13 Location: Germany
|
Posted: Sun Oct 22, 2006 4:20 pm Post subject: |
|
|
Good to know that it works for you now.
I will try it on an similiar way. If it works here too, I think we'll have fixed the upgrade from 3.0.2 to 3.1.0
If it doesn't work for me, hell yeah I'm gonna kick glibc-2.5 out and forget about it! _________________ System:
~x86 Conrad-Gentoo - 2.6.19-beyond4 - reiser4 - xorg-7.2 - gcc-4.1.2 - glibc-2.5
Machine:
Intel Pentium 4 @ 2,4GHz - 1GB DDR - ATI Radeon Mobility M6 LY (r100) |
|
Back to top |
|
|
EclipseX n00b
Joined: 19 Dec 2003 Posts: 15
|
Posted: Mon Oct 23, 2006 9:44 am Post subject: |
|
|
I just started your new guide I followed step by step, during emerge -e world it fails on module-init-tools
this is from a new install.
Code: | ELF_MACHINE_H='"elf_i386.h"' -DARCH_i386 -c -o xmalloc.o xmalloc.c
cc1: error: too many filenames given. Type cc1 --help for usage
make[1]: *** [.depend] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory `/var/tmp/portage/sys-apps/module-init-tools-3.2.2-r1/work/modutils-2.4.27/util'
make: *** [all] Error 2
!!! ERROR: sys-apps/module-init-tools-3.2.2-r1 failed.
Call stack:
ebuild.sh, line 1568: Called dyn_compile
ebuild.sh, line 937: Called src_compile
module-init-tools-3.2.2-r1.ebuild, line 83: Called die
!!! emake modutils failed
!!! If you need support, post the topmost build error, and the call stack if relevant. |
Ty for the quick reply nesl247, that helped out. I haven't used linux enough to know everything (of-course you'll never stop learning it )
Last edited by EclipseX on Mon Oct 23, 2006 11:31 am; edited 1 time in total |
|
Back to top |
|
|
nesl247 Veteran
Joined: 15 Jun 2004 Posts: 1614 Location: Florida
|
Posted: Mon Oct 23, 2006 10:45 am Post subject: |
|
|
EclipseX wrote: | I just started your new guide I followed step by step, during emerge -e world it fails on module-init-tools
this is from a new install.
Code: | ELF_MACHINE_H='"elf_i386.h"' -DARCH_i386 -c -o xmalloc.o xmalloc.c
cc1: error: too many filenames given. Type cc1 --help for usage
make[1]: *** [.depend] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory `/var/tmp/portage/sys-apps/module-init-tools-3.2.2-r1/work/modutils-2.4.27/util'
make: *** [all] Error 2
!!! ERROR: sys-apps/module-init-tools-3.2.2-r1 failed.
Call stack:
ebuild.sh, line 1568: Called dyn_compile
ebuild.sh, line 937: Called src_compile
module-init-tools-3.2.2-r1.ebuild, line 83: Called die
!!! emake modutils failed
!!! If you need support, post the topmost build error, and the call stack if relevant. |
|
Conrad didn't remember that module-init-tools doesn't work with -combine. |
|
Back to top |
|
|
_BLooDy_ n00b
Joined: 21 Oct 2006 Posts: 13 Location: Germany
|
Posted: Wed Oct 25, 2006 1:40 pm Post subject: |
|
|
Well, glibc-2.5-r3 compiled fine now, after reemerging the toolchain and "emerge -e system" and unmasking glibc-2.5-r3 to compile it. (everything w/o Prelink, w/o LDFLAGS and new make.conf from this guide, which worked for other packages fine!)
After glibc-2.5-r3 was compiled I rebooted my Computer (please don't ask why).
Now the boot-process puts out several errors: services like, ivman, syslog-ng, hald, net.eth0 and some more failed to initialize. Some of them show libraries-erros (the can't access them or s/th)
And KDE doesn't start.
WHAT did i wrong?
I still can login as root on the console. So i tried to "emerge -e world" to rebuild all packages, because I thought it might happened by compiling system w/o Prelink and w/o LDFLAGS for getting glibc-2.5-r3 working. I get an econf error! So I tried to reemerge some other packages (like portage), but i get an econf error too, or that the package couldn't be unpacked.
If I could show my bootmessages or emerge errors, it would be much easier for u to understand, I think.
What can i do, to get my machine boot and / or get portage working again?
_________________ System:
~x86 Conrad-Gentoo - 2.6.19-beyond4 - reiser4 - xorg-7.2 - gcc-4.1.2 - glibc-2.5
Machine:
Intel Pentium 4 @ 2,4GHz - 1GB DDR - ATI Radeon Mobility M6 LY (r100) |
|
Back to top |
|
|
sonicbhoc Veteran
Joined: 24 Oct 2005 Posts: 1805 Location: In front of the computer screen
|
Posted: Wed Oct 25, 2006 2:35 pm Post subject: |
|
|
I already have my system set up, is there a "convert your current install to Conrad" guide? |
|
Back to top |
|
|
Kollin Veteran
Joined: 25 Feb 2006 Posts: 1139 Location: Sofia/Bulgaria
|
Posted: Wed Oct 25, 2006 2:57 pm Post subject: |
|
|
sonicbhoc wrote: | I already have my system set up, is there a "convert your current install to Conrad" guide? |
U can try, but it`ll be mess.Clean install is easyer, i think _________________ "Dear Enemy: may the Lord hate you and all your kind, may you be turned orange in hue, and may your head fall off at an awkward moment."
"Linux is like a wigwam - no windows, no gates, apache inside..." |
|
Back to top |
|
|
codereverser n00b
Joined: 01 Sep 2006 Posts: 2
|
Posted: Wed Oct 25, 2006 4:09 pm Post subject: |
|
|
I am getting error on the coreutils step though.. ( while upgrading to 3.1.0 from 3.0.2 )
Code: |
checking for style of include used by make... GNU
checking for i686-pc-linux-gnu-gcc... i686-pc-linux-gnu-gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... configure: error: cannot run C compiled programs.
If you meant to cross compile, use `--host'.
See `config.log' for more details.
!!! Please attach the following file when filing a report to bugs.gentoo.org:
!!! /var/tmp/portage/coreutils-6.4/work/coreutils-6.4/config.log
!!! ERROR: sys-apps/coreutils-6.4 failed.
Call stack:
ebuild.sh, line 1546: Called dyn_compile
ebuild.sh, line 937: Called src_compile
coreutils-6.4.ebuild, line 95: Called econf '--enable-largefile' '--enable-nls' '--disable-selinux' '--bindir=/bin' '--without-included-regex'
ebuild.sh, line 540: Called die
!!! econf failed
!!! If you need support, post the topmost build error, and the call stack if relevant.
|
Also the config.log file says Segmentation fault while running a.out file ..
Code: |
Config.log file :
configure:2934: checking for C compiler default output file name
configure:2961: i686-pc-linux-gnu-gcc -Os -march=athlon-xp -frename-registers -f.....
configure:2964: $? = 0
configure:3010: result: a.out
configure:3015: checking whether the C compiler works
configure:3025: ./a.out
./configure: line 3026: 14159 Segmentation fault ./$ac_file
configure:3028: $? = 139
configure:3037: error: cannot run C compiled programs.
If you meant to cross compile, use `--host'.
See `config.log' for more details.
|
Also I just noticed if I comment the hashstyles line in make.conf , it works fine.
Code: |
Currently installed versions :
coreutils : 6.2
binutils-config : i686-pc-linux-gnu-2.17.50.0.6
gcc-config : i686-pc-linux-gnu-4.1.1
glibc : 2.4-r3
|
any help please,? |
|
Back to top |
|
|
zxy Veteran
Joined: 06 Jan 2006 Posts: 1160 Location: in bed in front of the computer
|
Posted: Wed Oct 25, 2006 5:03 pm Post subject: |
|
|
I'm just finishing a new clean install, as my glibc got totaly screwed after an upgrade.
For me everything Segfaulted. I tried what some sugested in this topic, but it didn't work. I got glibc compiled almost to the end and then an error occured and the new glibc was installed but not registered. Every program that I ran segfaulted. Then I couldn't dongrade glibc in any way. Finaly I ended up with extracting stage3 again.
Then everything compiled ok.
Good luck...
---------------
Backups rule...
--- EDIT ---
Lots of problems behind me, but it looks like it was worth it.
I used a little different cflags (less), but responsivness and speed seem very good.
Thanks cheater _________________ Nature does not hurry, yet everything is accomplished.
Lao Tzu |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|