# Installing Gentoo - The Developers Method - Stage1 and NPTL

## ali3nx

For all current purposes this tutorial should be considered retired or out of date and you should use the gentoo handbook to guide you during your installation of gentoo linux. My reasonings for this are not that stage1 has been retired. Stage1's are and will allways continue to be a valuble installation method but since the current release of 2006.0 gentoo linux nptl toolchain has become the default and will be forever the default once 2.4 glibc is mainstream. Yes linuxthreads is being retired. All good things take effort and this legacy which followed the birth of a new technology due to become a legacy has certainly been a legacy for me and years of effort. People beg me to update this tutorial but alas this legacy has run it's course. Your wecome to use any of the writings for your own resources for tips or research on how to build key parts of Gentoo Linux but you should be aware that unless you have a reason for bootstrapping your merely just wasting your valuble time. I thank each and everyone of you who found this to be such a great resource and look forward to being on the forefront of the next evolution of linux core systems developments.

Any of the configuration files for this tutorial can allways be found at http://www.eliteitminds.com/filename

If you require one on one support with this tutorial and nobody can be reached in the forum thread some of my collegues and i have established a Gentoo and linux in general support channels on Rizon irc Network. The address is irc://irc.rizon.net/gentoo and irc://irc.rizon.net/linux All are welcome

Currently Gentoo 2005.1 is stable and if your after every ounce of bleeding edge performance from the x86 architecture you've found the right install tutorial. The mania linux user ventures here with a millisecond stop watch and low lat coffee. The minimal 2005.1 is all you will require as a default for livecd selection. The other subarch specific cd's have precompiled binaries on them that will nevertheless require massive updating over the duration of the current grp cd's release currency and do not have support for nptl by default. I don't use them personally since Gentoo is a full network capable install that only meets my strict specifications when built according to these methods. Listen up and you'll have the sweetest nix box on your block.

Here's the NPTL From Scratch Primer couresy of Gentoo Linux and EliteitMinds Technologies

Few Props and Mentions

-----------------------------

Credit goes out to SyN-AcK for the text template and Kerin Millar for all the low latency coffee. Go kerf!

Greets to old buds at Betasirc. Wouldn't be the admin i am today without ya'll

Davetha, End3r, DR, UnNaturalHigh, OneEightSeven, n30, phantam, metwo, expunge and all the rest of ya.

Cudos to Logan for his amazing work with mrtgout and for his "Description of screen" =]

Many thanks to all the developers of Gentoo Linux that helped me learn.

kleiber, Ramareth, solar, lcars, jforman, Lv, Kerframil and so many more. Gentoo Linux Infrastructure was a lesson that has some of the greatest collective agility in the industry. What was learned will most certainly be a contributing foundation for many years to come.

May you all Compile Long and Prosper ;]

Obtaining Gentoo Linux Livecd and ensuring you boot from a "stable" linux kernel

----------------------------------------------------------------------------------------------

Use my official Gentoo Linux file and rsync mirrors if you like to obtain a stable gentoo livecd.

http://gentoo.eliteitminds.com 100MBit bgp4 Stage1 nptl Hardened 2.6 Gentoo

rsync://rsync.eliteitminds.com 100MBit bgp4 Stage1 nptl Hardedned 2.6 Gentoo

Pimp the latest LiveCD that the dev's have to offer mere mortals. 

http://mirror.datapipe.net/gentoo/releases/x86/2005.1/livecd/install-x86-minimal-2005.1.iso

iit's small, (70~90 megs) innocent and builds the most massive choke proof servers known to man aslong as your using stable kernels. 2.4.x will not get the job done here. Note that there's a new badboy in town and his name is lxnay. wtf is lxnay? hehe... if you've ever used knoppix or read about it lxnay is both an individual and a developer that created the Gentoo founded alternative to knoppix. Gentoo's release engineering team currently doesn't release of develop installation media that has a completely working desktop environment. Lxnay's RR series livecd's are perfect for the user that would require or could use a gentoo installation from a working gui desktop environment vs. gentoo's default iso's that are console mode only. The end results

are identical so the install iso you choose to use for installing is completely optional.

lxnay's RR Series gentoo iso's can be found here

After burn the cd as a dao image, boot from the cd ensuring you have a dhcp server reachable by network to simplify your initial network setup for the actual installation. Gentoo has defaulted to 2.6 kernel livecd's which are just what we require for this installation. Previous installations required "smp" boot options to use this tutorial but the 2.6 kernel is most certainly stable enough and 2.4 has entered maintainance mode so  "smp" is no longer required. You nevertheless will be running an smp 2.6.x kernel but there's no reason to be alarmed as this is now the default behavior. Only 2.6.5-r1 or newer linux kernels that can properly link toolchain with 2.6.x stable linux headers and native linux posix threading. 

Why use Screen Before Installing

---------------------------------------

Screen could be described as a terminal emulator... or maybe a multi user terminal. More than one user can join an ssh session simultaneously with very little frustration making those moments when assistance would be super benificial all that more easy to accomplish. I prefer it best for "holding" a terminal open while your not actually even connected to the tty that you started when screen was executed or for having more than one user join a common workspace inside a linux system. If your following me this has some very good advantages while your installing gentoo. Two major advantages are if your disconnected your running compile will not fail or halt but rather continue while your have gone off to eat hotdogs and drink beer over the football game or to have an experienced user help you throught the course of an installation. It can suck running bootstrap twice if you loose a remote connection or something goes awry. For those of you that have personally had me install your systems congratulations and thank you for the experience.

Starting Screen

---------------------

To start screen type

```
screen
```

at the command prompt and continute with your work. Should you need to disconnect from screen for any reason 

```
ctrl+a+d
```

To re-attach to screen type

```
screen -x
```

Sure beats logging off and killing your compile by accident =]

Setting hard disk and cdrom transer modes with hdparm for maximum disk performance

------------------------------------------------------------------------------------------------------

So you have the sexiest windows box in the universe eh...? Think it's quick..? I think not.

In windows you do not have a utility to physically affect changes to the hard drives performance parameters. Linux does. hdparm is that utility that allows you to set your hard disks and cdroms to utilize the fastest 32bit and udma transfer modes for supported by your hard disks. Keep in mind that hdparm is intended more for ide ~ udma ~ ata based systems because sata and scsi disks have the ability to dynamically affect these changes from the scsi controller's chipset. Gentoo linux adds hdparm in all the livecd's. Even minimal livecd's. The results from using it can save you days of waiting for apps to compile if your motherboards ide chipset does not automatically set the hard drives performance parameters to use 32bit i/o, multcount and readahead disk modes tuned just for your system. Hard disks, cdroms, cdrw's, dvdrw's all may require these modes to be set to allow your system to truly achieve the performance linux can really offer. Below you will see four examples. The first is a non optimized drive offering no dma, 32bit i/o, multicount or unmaskirq usage, The second and third shows how to set these modes for hard disks and optical storage readers and writers. The fourth are the results of the settings.

The un-optimized view would or could look such as this does

```
hdparm /dev/hda

/dev/hda:

 multcount    =  0 (off)

 IO_support   =  0 (default 16-bit)

 unmaskirq    =  0 (off)

 using_dma    =  0 (off)

 keepsettings =  0 (off)

 readonly     =  0 (off)

 readahead    = 256 (on)

 geometry     = 16383/255/63, sectors = 78165360, start = 0
```

To set the optimized transfer modes for most hard disks from the livecd do the following

```
hdparm -d1c3u1m16A1 /dev/hda
```

To set the optimized transfer modes for most cdrom/rw and dvdrom/rw devices from the livecd do the following if your livecd is in the master cd device for all cdroms. If your livecd is the second of two cd devices substitute cdroms0 with cdroms1 or use hdparm and set the parameters for both devices to ensure they are set to achieve maximum performance. Your system runs from this cd while it builds so giving it all the data bandwidth it can use would be very benificial. keep in mind that cdroms do not use multicount.

```
hdparm -d1c3u1 /dev/cdroms/cdrom0
```

The optimized results

```
hdparm -d1c3u1m16A1 /dev/hda

/dev/hda:

 setting 32-bit IO_support flag to 3

 setting multcount to 16

 setting unmaskirq to 1 (on)

 setting using_dma to 1 (on)

 setting drive read-lookahead to 1 (on)

 multcount    = 16 (on)

 IO_support   =  3 (32-bit w/sync)

 unmaskirq    =  1 (on)

 using_dma    =  1 (on)
```

Setting up network

----------------------

2005.1 is stable with loading networking on boot however there will be the odd occasion that you will need to go back to the drawing board and run through the paces manually and setup your networking if you dont have a dhcp server on your network.

```
ifconfig eth0

If you recieve and error you will need to research which kernel module your nic needs to load driver support. If users have problems with their network cards, they should use lspci to find what type of nic they have and then look up what drivers it should use.

mine is a Realtek that doesn't require the c++ module,

modprobe foo

ifconfig eth0

dhcpcd eth0

ping -c4 yahoo.com
```

If you see packet traffic it's time to continue. If not your quite welcome to join me in gentoo's irc chans for user support

Setting your date and time

-------------------------------

Source built linux  does "tag" some of the compiles with dates and times of the compiles and if  your date is not set this could create a problem. Later in the installation we will setup a network time client to eliminate "clock skew" that can cause compiles to halt. Perl is especially more fragile to this condition.

```
date --help

Usage: date [OPTION]... [+FORMAT]

  or:  date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]

Display the current time in the given FORMAT, or set the system date.

date 071800332005

Mon Jul 18 00:33:00 CDT 2005
```

Fdisk Primer && Setting up filesystems

---------------------------------------------

First check your system for available disks if this command prints nothing you have a problem that is outside the scope of this tutorial

```
fdisk -l

Disk /dev/sda: 54.8 GB, 54896492544 bytes

255 heads, 63 sectors/track, 6674 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes
```

Using fdisk - fdisk in a nutshell.. The manual of fdisk

```
The number of cylinders for this disk is set to 14593.

There is nothing wrong with that, but this is larger than 1024,

and could in certain setups cause problems with:

1) software that runs at boot time (e.g., old versions of LILO)

2) booting and partitioning software from other OSs

(e.g., DOS FDISK, OS/2 FDISK)

Command (m for help): m

Command action

a toggle a bootable flag

b edit bsd disklabel

c toggle the dos compatibility flag

d delete a partition

l list known partition types

m print this menu

n add a new partition

o create a new empty DOS partition table

p print the partition table

q quit without saving changes

s create a new empty Sun disklabel

t change a partition's system id

u change display/entry units

v verify the partition table

w write table to disk and exit

x extra functionality (experts only)
```

Fdisk your available disks

----------------------------------------

Everyone has a preference. Thats fine. I prefer fdisk over cfdisk due to fdisk giving you more granular control over the partitioning process which lets you better plan for your installation and set the partition numbers, size, and attributes yourself. 1GB swap partitons are a decent compromose for planning ahead in your installation. Trust me folks... Gentoo does not use swap often but why risk it. I've seen a 3.2HT p4 eat 1gb of ram AND 1gb of swap. When your applications are compiled to utilize every available cpu register they don't need a place to sit down and take 5. Swap will become something a high capacity system with thousands of users will nevertheless utilize. I also highly recommend using +100M or larger boot partitions for a 2.6.x kernel install. 2.6.x kernels use allot more space than 2.4 and hey.. why redo it later. This setup lasted me for more than a year. Till asshat stole my server... No logical partitions are required if your using the entire disk for Gentoo Linux in a basic configuration with no raid or LVMs

```
fdisk /dev/hd#  where # = the letter of your hard disk you would like to install gentoo on. substitute hd# with sd# if you have scsi or sata devices.
```

your boot partition should be hda1 if you have an ide disk or sda1 if your using scsi or sata

```
/dev/sda1 * 1 13 104422 83 Linux
```

your boot partition should be hda1 if you have an ide disk or sda1 if your using scsi or sata

hda2 or sda2 for swap +1024M for 512MB of ram and 1024M for 1GB of ram

```
/dev/sda2 14 257 1959930 82 Linux swap
```

hda3 or sda3 for / using the remainder of your physical disk.

```
/dev/sda3 258 6674 51544552+ 83 Linux
```

Set hda1 to Active with "a" and also change the swap partitioon "type" of hda2 to swap By pressing "t" and entering type "82 See the fdisk manual above if your confused

```
a toggle a bootable flag
```

********* Mucho Grande Importante ************

```
w - to write out the partition table and exit fdisk.
```

Here's what your partition table should look like after your done. The below code snippet is the partition table from an nptl fueled dual 3.06 xeon with AACRAID and 2GB of ram that serves as a gbit bgp4 packet shaper at a datacenter i admin for that hosts an oc192 dark fiber pop. I personally installed this server myself.

```
Device Boot Start End Blocks Id System

/dev/sda1 * 1 13 104422 83 Linux

/dev/sda2 14 257 1959930 82 Linux swap

/dev/sda3 258 6674 51544552+ 83 Linux

```

Creating Filesystems

--------------------------------

Using ext2 or ext3 would be such a waste. It's slow, it cannot output i/o at the rates of reiserfs 3.6 or reiser4... For this example we'll use reiserfs 3.6. 

Reiser4 was recently released as a stable filesystem and if you've been folIowing the news on reiser4.. It's the fastest filesystem on the planet. I will be adding Reiser4 as an optional filesystem in this tutorial in the near future as time permits.

To create file systems:

if you have an scsi or sata drive replace hda with sda appropriately in the following code examples

```
mkreiserfs /dev/hda1

mkreiserfs /dev/hda3

mkswap /dev/hda2

swapon /dev/hda2
```

Mounting

--------------

```
mount /dev/hda3 /mnt/gentoo

mkdir /mnt/gentoo/boot

mount /dev/hda1 /mnt/gentoo/boot
```

Retrieving a Base System Stage

-------------------------------------------------

If your planning a stage1 installation use a generic x86 stage1 gentoo stage. It's the only stage that will let you build a full posix install with the native linux posix threading model that makes pthreading look like childs play. To use it you must compile every application to support it specifically toolchain which primarily consists of glibc and gcc. For this example were goin for brutal speed and agility so if you've been following it's stage1 were planning to build. Precompilied applications in a can will leave you with broken libs or unsupported features. I find that the best results are obtained by compiling it all. Linux systems are akin to a tree; if the tree has no roots it's leaves will fall and the tree will die.

```
cd /mnt/gentoo/

wget http://distfiles.gentoo.org/releases/x86/current/stages/x86/stage1-x86-2005.1-r1.tar.bz2

tar xjpvf stage1*.bz2
```

Setting make.conf

-----------------------------------

I have a completed make.conf available for everyone to download and edit to suit thier requirements. I've made notes and comments where appropriate to reflect any known bugs and have done my best to make this configuration as heterogenious as possible. due to the amount of variables in gentoo's make.conf they cannot be covered in this tutorial. If you require some assistance ingesting how make.conf works gentoo's official portage documentation can be found here

```
cd /mnt/gentoo/etc && rm -f make.conf && wget http://www.eliteitminds.com/make.conf
```

!! Important!! Ensure your USE= is set properly before you proceed with bootstrap or your results will be unsatisfactory at best. Not setting USE= will exclude important options such as nptl threading and added security features. The very minimum of USE= will not bootstrap for nptl. If your completely lost and have no clue what use flags are used by default they are properly defined in the portage profile as shown in the code example below. You must add USE="nptl" in make.conf regardless to bootstrap supporting nptl threading. Any "USE flags" added to make.conf now compliment the defaults in the standard system profile. Do not edit the profile! I have provided a skeleton make.conf suitable for a variety of Intel and AMD based processor machines that requires a minimum effort of editing to suit your requirements. Read the comments in make.conf for specific instructions.

```
nano -w /mnt/gentoo/etc/make.conf
```

Mounting /proc

------------------

Before chrooting you must mount procfs from the running

livecd into the hard drive's newly extracted filesystem for stuff to 

operate properly while chrooted. 

```
mount -t proc none /mnt/gentoo/proc
```

*OPTIONAL* Mounting /dev

---------------------------------

Also /dev on the livecd should be mounted into the chroot if you experience some dufficulties setting up grub if your using a promise or other offboard ide card

```
mount -o bind /dev /mnt/gentoo/dev
```

Chrooting

---------------

```
cp /etc/resolv.conf /mnt/gentoo/etc/resolv.conf

chroot /mnt/gentoo /bin/bash

env-update && source /etc/profile
```

Getting the Portage Tree

------------------------------

```
cd /usr/ 

wget http://distfiles.gentoo.org/snapshots/portage-latest.tar.bz2 

tar xjpvf portage-latest.tar.bz2

emerge sync
```

2.6.x Stable linux-headers are a must for nptl

-----------------------------------------------------------------

The developers have been slowly making the migration to 2.6 allot easier and it's no longer nessesary to unmask linux2.6-headers to allow use of the latest linux headers. Previously I would add sys-kernel/linux-headers ~x86 to package.keywords but Lv changed the ebuilds to allow unfettered use of these packages with no special keywording if your using ~x86 in make.conf. Regardless you must remove the default 2.4.x headers favoring building toolchain for a 2.6 linux kernel *using* 2.6.x linux-headers not the latter 2.4 fodder that runs like redhat/fedora or a kid with a soggy diaper if you prefer... Were after capacity servers that eat 200.00 loads and not choke. Using 2.4 linux headers with nptl bootstraps will break toolchain and possibly your marrage when your sitting at your desk on sunday morning  :Laughing: 

Bootstrapping the System, Emerging System, Setting Runlevels - All One Command

-------------------------------------------------------------------------------------------------

Below i've setup a command that will complete stages 1 through three continuiously with the next following. The new stages do not include linux headers however i'm never going to accept a risk at a tutorial users' expense so i've left rac's linux-headers install reccomendation just where it was last year. For those that frequently use this installation method can recall not including rac's install aid would create breakage resulting in /lib/cpp sanity errors. Whats that you might be asking? If you were to get one they are very difficult to fix and usually require you to restart your installation. Redundancy is key and i will allways afford you this precaution. 

Never one to break with tradition i present to you...

The Year gentoo compiled me oneliner  :Wink: 

```
env-update && source /etc/profile && emerge --oneshot --nodeps gcc-config && USE="-* build bootstrap" emerge linux-headers && cd /usr/portage && scripts/bootstrap.sh && emerge libperl && emerge libperl && emerge --newuse -uD system && emerge syslog-ng xinetd grub hotplug coldplug vixie-cron reiserfsprogs reiser4progs sysfsutils udev dhcpcd && emerge --nodeps acpid ntp && rc-update add syslog-ng default && rc-update add net.eth0 default && rc-update add vixie-cron default && rc-update add xinetd default && rc-update add sshd default && rc-update add hotplug default && rc-update add coldplug default && rc-update add acpid default
```

Preparing for adding your kernel source tree by setting up ntp-client to eliminate clock skew

-------------------------------------------------------------------------------------------------------------

There's just not enough time in a day... and it's a little known fact that a computer has two clocks. One is a hardware clock and the second is a software clock that runs in the os. They however do not stay in sync which creates a condition known as clock skew that can cause havok with source build operating systems such as gentoo linux. Clock skew can cause source compiles to fail. We allieviate this problem by adding a network time protocol client into the installation.

```
rc-update add ntp-client default && ntpdate -b -u pool.ntp.org
```

Emerging linux kernel sources

----------------------------------

```
emerge gentoo-sources
```

Setting your system's timezone symlink

-----------------------------------------------

List the timezone files in the system and find the timezone that closest matches your location ion our big blue ball in the dark liniverse. Keep in mind they will not be added until after bootstrap or until after glibc compiles.

```
ls /usr/share/zoneinfo/

Africa      Atlantic   Canada  EST5EDT  Factory  GMT-0      Iceland  Japan      MST7MDT  Navajo   Portugal   Turkey     W-SU         posixrules

America     Australia  Chile   Egypt    GB       GMT0       Indian   Kwajalein  Mexico   PRC      ROC        UCT        WET          right

Antarctica  Brazil     Cuba    Eire     GB-Eire  Greenwich  Iran     Libya      Mideast  PST8PDT  ROK        US         Zulu         zone.tab

Arctic      CET        EET     Etc      GMT      HST        Israel   MET        NZ       Pacific  Singapore  UTC        iso3166.tab

Asia        CST6CDT    EST     Europe   GMT+0    Hongkong   Jamaica  MST        NZ-CHAT  Poland   SystemV    Universal  posix
```

Now you must remove the default timezone symlink and create a new one which is linked to the timezone info file that matches your timezone. I'm currently in Pacific Standard Time (Vancouver, Canada) so i chose /usr/share/zoneinfo/America/Vancouver as my timezone file. Note that locating the closest city in your timezone will help your system automatically adjust for daylight savings time changes appropriately. replace /usr/share/zoneinfo/{path/to/your/timezonefile} in the code example below with the correct and appropriate timezone file for your location.

```
rm /etc/localtime && ln -s /usr/share/zoneinfo/{path/to/your/timezonefile} /etc/localtime
```

Configuring the Kernel - Now with udev and gensplash!!!

------------------------------------------------------------------

Since linux 2.6.13 devfs support has been removed so you should be prepared to switch to udev. Hotplug, coldplug and sysfsprogs are a must for udev. udev runs so much better for desktop environments than devfsd so i've decided to take you all under the knife. It's very simple to setup. Add Hotplug firmware loading in your kernel config, remove devfs filesystem support emerge udev sysfsutils and you have the base requirements for udev to function properly. lspci is truly the kernel builders swiss army knife. Light years ahead of genkernel, helps you the tutorial user know what to configure in your kernel and aids with your familiarization of linux and devices. After typing lspci && lsmod (copy the output to a txt file that you can use for reference then use my base kernel .config and modify to your requirements. Genkernel will get you up and going but your system will not run as efficiently as it could

To get the kernel config skel file do the following

```
cd /usr/src/linux && wget http://www.eliteitminds.com/.config && make menuconfig
```

Welcome to the linux kernel configuration menu. Here you must change a few items for your configuration if your using my kernel config. My config is sutable for most systems however it's built to run on my system. 

Specifically you must change the following items to suit your configuration.

```
1) Processor type and features - mainly be concerned with your cpu type here

2) ATA/ATAPI/MFM/RLL support for storage controllers

3) Networking support - NIC Device drivers are your main concern Use Modules =]

4) Character devices - agpgart and agp chipset type, dri driver ( if required) 

    Note that if your using an nvidia videocard it's best to leave the character devices as-is

5) Sound support ~>> Advanced Linux Sound Architecture ~~> Pci devices

     Set the correct driver module for your soundcard here. use a module as the alsa-utils package demands that modules be present for your system to use the startup script correctly

6) USB support - Three primary items to be concerned with here...

     If you have usb2  add the EHCI module as <*> 

      the output recieved from lspci is important here as you cannot have both ohci AND uhci both included. you much choose one or the other and add it as a module

     EHCI HCD (USB 2.0) support

     OHCI HCD support

     UHCI HCD (most Intel and VIA) support
```

After configuring your kernel for supported devices exit from menuconfig and type the following

```
make && make modules modules_install install
```

Setting Up Hostnames and Domainnames

-------------------------------------------------

Recent baselayout changes have adjusted how hostnames and domainnames are set in gentoo linux with all architectures. The following examples will show which files need to be edited to properly set your new system's hostname and domainname.

Setting the primary hostname. 

Open the following file in nano or your preferred console based editor changing the localhost variable for what suits your personal taste or requirements to set the primary system hostname.

```
cat /etc/conf.d/hostname

# /etc/conf.d/hostname

# $Header: /var/cvsroot/gentoo-src/rc-scripts/etc/conf.d/hostname,v 1.2.4.1 2005/02/19 02:13:53 vapier Exp $

# Set to the hostname of this machine

HOSTNAME="localhost"

```

Setting the primary domainname and nisdomainname.

Open the following file in nano or your preferred console based editor changing the DNSDOMAIN and NISDOMAIN variables for what suits your personal taste or requirements to set the primary system domanname and nisdomainname.

```
cat /etc/conf.d/domainname.

# /etc/conf.d/domainname

# $Header: /var/cvsroot/gentoo-src/rc-scripts/etc/conf.d/domainname,v 1.1.4.1 2005/02/19 02:13:53 vapier Exp $

# When setting up resolv.conf, what should take precedence?

# If you wish to always override DHCP/whatever, set this to 1.

OVERRIDE=1

# To have a proper FQDN, you need to setup /etc/hosts and /etc/resolv.conf

# properly (domain entry in /etc/resolv.conf, and FQDN in /etc/hosts).

#

DNSDOMAIN="domain.tld"

# This only set what /bin/hostname returns.  If you need to setup NIS, meaning

# what /bin/domainname returns, please see:

#

#   http://www.linux-nis.org/nis-howto/HOWTO/

#

NISDOMAIN="nis.domain.tld"

```

Next you must edit /etc/hosts to allow linux to set uour hostnames while no nameservers are reachable. ipv6 will be here in the next few years. Dont get too cozy.. ipv4 will be depreciated and you will be assimilated. Here's an example of what /etc/hosts should contain...

```
# /etc/hosts: This file describes a number of hostname-to-address

# mappings for the TCP/IP subsystem. It is mostly

# used at boot time, when no name servers are running.

# On small systems, this file can be used instead of a

# "named" name server. Just add the names, addresses

# and any aliases to this file...

# $Header: /home/cvsroot/gentoo-src/rc-scripts/etc/hosts,v 1.7 2002/11/18 19:39:22 azarah Exp $

#

127.0.0.1 hostname.domainname.tld hostname localhost.localdomain localhost

# IPV6 versions of localhost and co

::1 ip6-localhost ip6-loopback

fe00::0 ip6-localnet

ff00::0 ip6-mcastprefix

ff02::1 ip6-allnodes

ff02::2 ip6-allrouters

ff02::3 ip6-allhosts
```

Setting drivers to load at boot network load at boot

---------------------------------------------------------------------------------

I allways build tons of modules wherever possible unless doing so is not advisable. A dynamically loading system will save valuble memory address space in your system kernel. lsmod is your eyes into a running modular linux system but it's only usable with modules. NIC modules are an excellent example. Adding them to insmod at boot is required as hotplug doesn't load nic drivers dynamically possibly leaving you with an booted system without network.

```
echo foo >>/etc/modules.autoload.d/kernel-2.6

**substitute "foo" with your correct nic module name**
```

Creating a Second Initscript If You Have 2 nic's and Starting the Second at Boot (optional)

--------------------------------------------------------------------------------------------

```
cd /etc/init.d

ln -s net.lo net.eth1

rc-update add net.eth1 default

echo foo >>/etc/modules.autoload.d/kernel-2.6

**substitute "foo" with your correct nic module name**
```

Setting up the network config file for first reboot

--------------------------------------------------------

with the new baselayout thats installed in 2005.1 the network config file has defaulted to an ominously bare file. Some may notice the note on top stating the following

```
cat /mnt/gentoo/etc/conf.d/net

# This blank configuration will automatically use DHCP for any net.*

# scripts in /etc/init.d.  To create a more complete configuration,

# please review /etc/conf.d/net.example and save your configuration

# in /etc/conf.d/net (this file :]!).
```

The gurus in the releng herd have allways been secretly installing full current example config's in your system where they are appropriate. Another little known fact of gentoo linux. The one were concerned with is mentioned in the example above. So what do we do with it you may be wondering? Well.. copy it and configure the variables you require to have your network start on boot. 

```
cp /etc/conf.d/net.example /etc/conf.d/net
```

Gentoo linux no longer defaults to installing dhcpcd as a system package so i've added it to the oneliner as an extra package. Since most users have the simplicity of a dhcp network you merely need to uncomment one variable in /etc/conf.d/net in the dhcp section about half way through the file. For a static configuration see the section on ifconfig

```
#-----------------------------------------------------------------------------

# DHCP

# DHCP can be provided by dhcpcd, dhclient, udhcpc or pump

#

# dhcpcd:   emerge net-misc/dhcpcd

# dhclient: emerge net-misc/dhcp

# udhcpc:   emerge net-misc/udhcp

# pump:     emerge net-misc/pump

# If you have more than one DHCP client installed, you need to specify which

# one to use - otherwise we default to dhcpcd if available

#modules=( "udhcpc" ) # to select udhcpc over dhcpcd

#

# Notes:

# - dhcpcd, udhcpc and pump send the current hostname

#   to the DHCP server by default

# - dhcpcd does not daemonize when the lease time is infinite

# - udhcp-0.9.3-r3 and earlier does not support getting NTP servers

# - dhclient does not support getting NTP servers

# - pump does not support getting NIS servers

# - DHCP tends to erase any existing device information - so add

#   static addresses after dhcp if you need them

# Regardless of which DHCP client you prefer, you configure them the

# same way using one of following depending on which interface modules

# you're using.

config_eth0=( "dhcp" )

# For passing custom options to dhcpcd use something like the following.  This

# example reduces the timeout for retrieving an address from 60 seconds (the

# default) to 10 seconds.

#dhcpcd_eth0="-t 10"

# dhclient, udhcpc and pump don't have many runtime options

# You can pass options to them in a similar manner to dhcpcd though

#dhclient_eth0="..."

#udhcpc_eth0="..."

#pump_eth0="..."

# To set options for dhclient, you need to have an /etc/dhclient.conf file

# See the dhclient man page for details

# GENERIC DHCP OPTIONS

# Set generic DHCP options like so

#dhcp_eth0="release nodns nontp nonis"

# This tells the dhcp client to release it's lease when it stops and not to

# overwrite dns, ntp and nis settings when it starts. You can use any

# combination of the above options - the default is not to use any of them

```

Setting up a Boot Loader - Setting up grub - Now with gensplash and grub skins

---------------------------------------------------------------------------------------------

There's nothing cooler than spock  :Wink:  well or spock the gentoo developer's tizzight gensplash on the system you've managed to build by following this tutorial  :Cool: 

so like that bitchin splash image on the livecd? hehe so do i... and why horde it to myself and cackle and laugh alone looking at my computer boot gentoo linux for fun and kix. So here it is folks. More creature features courtesy of ali3nx

1) adding gensplash

------------------------

```
emerge splash-themes-livecd && splash_geninitramfs -v -g /boot/fbsplash-livecd-2005.1-1024x768 -r 1024x768 livecd-2005.1 && rc-update add splash default
```

The magic is done... Now you have an initrd that you must load with grub in grub.conf

2) grub.conf grub config file example

------------------------------------------

```
cat /boot/grub/grub.conf

#

# Grub boot menu configuration file

#

# Boot automatically after 30 secs.

timeout 30

# By default, boot the first entry.

default 0

# Fallback to the second entry.

fallback 1

splashimage=(hd0,0)/grub/gentoo.xpm.gz

#

# For booting GNU/Linux

title  Gentoo-2.6.12-r7 by EliteitMinds Technologies

root (hd0,0)

kernel (hd0,0)/vmlinuz ro root=/dev/hda3 video=vesafb:ywrap,pmipal,1024x768-32@65 splash=silent,fadein,theme:livecd-2005.1 quiet CONSOLE=/dev/tty1

initrd (hd0,0)/fbsplash-livecd-2005.1-1024x768

# note make certain the kernel line does not wrap to the next line!!!!

title Gentoo-2.6.12-r7-backup by EliteitMinds Technologies

root (hd0,0)

kernel (hd0,0)/vmlinuz.old ro root=/dev/hda3 video=vesafb:ywrap,pmipal,1024x768-32@65 splash=silent,fadein,theme:livecd-2005.1 quiet CONSOLE=/dev/tty1

# note make certain the kernel line does not wrap to the next line!!!!

initrd (hd0,0)/fbsplash-livecd-2005.1-1024x768

# For installing GRUB into the hard disk

title Install GRUB into the hard disk

root    (hd0,0)

setup   (hd0)

# Change the colors.

title Change the colors

color light-green/brown blink-red/blue
```

3) installing the bootsectors

---------------------------------

```
grub

grub> root (hd0,0)

grub> setup (hd0)

grub> quit

cd /boot/grub

nano -w /boot/grub/menu.lst
```

copy the text from the code section above for menu.lst and paste it into the console or type it. It's gonna have to do for a couple days till i can get my config's uploaded to a shell.

Last but not least ensure all your symlinks match and Eliteitminds Technologies gets the credit for the beautiful config files =]

4) selecting and installing a custom gentoo linux labelled grub skin

-----------------------------------------------------------------------------

I recently found a pimp grub splash themed just for gentoo linux that everyone and there momma's momma needs for gentoo boxen =] That would include users of this tutorial.

```
cd /boot/grub && wget http://www.schultz-net.dk/downloads/grub/gentoo.xpm.gz
```

Setting Up fstab

-------------------------

Tis is a step you do not want to do before installing grub... for some reason grub has a spaz attack and calls die() when it finds an fstab in completed fashion.

```
nano -w /etc/fstab
```

Here's mine:

```
# /etc/fstab: static file system information.

# $Header: /home/cvsroot/gentoo-src/rc-scripts/etc/fstab,v 1.14 2003/10/13 20:03:38 azarah Exp $

#

# noatime turns off atimes for increased performance (atimes normally aren't

# needed; notail increases performance of ReiserFS (at the expense of storage

# efficiency). It's safe to drop the noatime options if you want and to

# switch between notail and tail freely.

# <fs> <mountpoint> <type> <opts> <dump/pass>

# NOTE: If your BOOT partition is ReiserFS, add the notail option to opts.

/dev/hda1 /boot reiserfs noauto,notail 1 1

/dev/hda3 / reiserfs notail 0 1

/dev/hda2 none swap sw 0 0

/dev/cdroms/cdrom0 /mnt/dvdrw iso9660 user,noauto,ro,exec 0 0

/dev/cdroms/cdrom1 /mnt/cdrw iso9660 user,noauto,ro,exec 0 0

#/dev/fd0 /mnt/floppy auto noauto 0 0

# NOTE: The next line is critical for boot!

none /proc proc defaults 0 0

# glibc 2.2 and above expects tmpfs to be mounted at /dev/shm for

# POSIX shared memory (shm_open, shm_unlink).

# (tmpfs is a dynamically expandable/shrinkable ramdisk, and will

# use almost no memory if not populated with files)

# Adding the following line to /etc/fstab should take care of this:

none /dev/shm tmpfs nodev,nosuid 0 0
```

Setting hdparm for use after boot

-----------------------------------------

We've gone throught he procedures above for utilizing hdparm for obtaining the fastest i/o transfer modes for your hard drive however the changes made only affect the livecd's running kernel therefore we should setup hdparm for the installation that you have created so that performance is maintained after booting into your running system. Allot of very useful options for Gentoo Linux dwell in /etc/conf.d This time we are to be concerned with the contents of /etc/conf.d/hdparm Below you will see an example of hdparm's config file. Change to suit the layout of your disks for your system appropriately. Each device may need the modes set for your systems hardware configuration.  Here's a typical configuration for a system with one cdrom and hard disk. You can safely skip this step if using sata or scsi. 

```
cat /etc/conf.d/hdparm

# Copyright 1999-2004 Gentoo Foundation

# Distributed under the terms of the GNU General Public License v2

# $Header: /var/cvsroot/gentoo-x86/sys-apps/hdparm/files/hdparm-conf.d.3,v 1.2 2004/09/06 02:17:08 swegener Exp $

# You can either set hdparm arguments for each drive using disc*_args and cdrom*_args..

# eg.

disc0_args="-d1c3u1m16A1"

# disc1_args"-d1"

cdrom0_args="-d1c3u1"

#cdrom1_args="-d1c3u1"

# Or, you can set hdparm options for ALL drives using all_args..

# eg.

# this mimics the behavior of the current script

#all_args="-d1"
```

After editing the contents of /etc/conf.d/hdparm type the following command to add hdparm to the boot runlevel. I recommend boot as it will help with faster startup times.

```
rc-update add hdparm boot
```

Set Up Users

---------------

We must change the password of the root user in the installed system to ensure it's usable after booting the system and also add a user for yourself with the appropriate groups that would be required for an average desktop-server hybrid gentoo linux system. Substitute my nick with your own username or add me a shell and pm me the login should you feel generous  :Wink: 

```
passwd to change root's pass

groupadd groupname && useradd username -m -k /etc/skel -g groupname -G audio,cron,wheel,portage,games -d /home/username -s /bin/bash

passwd username
```

Exiting Chroot and Unmounting Partitions

-----------------------------------------------

Since we used screen during our installation we will need to exit or logout twice... once to quit screen, once to exit from chroot following with unmounting the partitions used for installation and disabling swap... A "clean" shutdown is allways a good idea...

```
exit && exit

cd ~/ 

umount /mnt/gentoo/proc

umount /mnt/gentoo/boot

umount /mnt/gentoo/dev

umount /mnt/gentoo

swapoff /dev/hda2
```

Rebooting to your newly installed Gentoo Linux

-------------------------------------------------------

```
shutdown -r now
```

Add any other applications after rebooting to the fastest linux animal you have ever built.

----------

## ali3nx

So you may have been reading over my neat tutorial on the best that linux has to offer and your still curious...? I suppose i would be... wondering what the hell i need nptl for anyways?  try this one for size and you'll see exactly where the advantages lie 

```
Linux: Native POSIX Threading Library (NPTL)

Posted by jeremy on Friday, September 20, 2002 - 11:45

Ulrich Drepper recently announced the first public release of the Red Hat sponsored "Native POSIX Thread Library" (NPTL). He explained, "Unless major flaws in the design are found this code is intended to become the standard POSIX thread library on Linux system and it will be included in the GNU C library distribution."

One test mentioned in Ulrich's email - running 100,000 concurrent threads on an IA-32 - generated some interesting discussion. Ingo Molnar explained that with the current stock 2.5 kernel such a test requires roughly 1GB RAM, and the act of starting and stopping all 100,000 threads in parallel takes only 2 seconds. In comparison, with the 2.5.31 kernel (prior to Ingo's recent threading work), such a test would have taken around 15 minutes.

Ingo provides further details:

    "With the default split and kernel stack we can start up 94,000 threads on x86. With Ben's/Dave's patch we can have up to 188,000 threads. With a 2:2 GB VM split configured we can start 376,000 threads. If someone's that desperate then with a 1:3 split we can start up 564,000 threads."

And Ingo's response to the logical followup question, "why so many threads, the answer is because we can :)". Much of the discussion follows, and is well worth the time it takes to read...
```

More threads that a platform can run symultaneously the more "work" that can be completed efficiently in less time.   :Cool: 

Ulrich Drepper is a RedHat Linux developer and has also published a full draft specification paper with in depth information on "Native POSIX Thread Library" (NPTL) on his devspace here Your favorite pdf viewer is required to view this document.

----------

## odegard

doesn't each thread also carry a overhead that would bog the system down?

----------

## thechris

one note, you seem to leave out a step in the bootstrap part.

after bootstrap you should do source /etc/profile and probably env-update.  this is in the gentoo guide.  not at all hard to add in there.

the NPTL guide also re-emerges glibc to get nptl in there

----------

## Snooper

I wrote up a tutorial on this not to long ago instead of merging linux-headers before bootstrap just use bootstrap-2.6.sh this will get the 2.6 headers and emerge them then compile everything against the 2.6 headers. It's best to start the stage1 with only USE="nptl" as the more you put in there the more likely it is to break. with bootstrap and emerge system you don't really have a lot of use flags available other than doc, acl and some others that are not needed unless well you want the added docs and languages. Then from stage3 when your continuing building the system add the use flags you want... it is safer that way.

----------

## Lance

How to bootstrap to GCC 3.4?

simply echo sys-devel/gcc -*>>/etc/portage/package.keywords before scripts/bootstrap.sh?

I want to try gcc 3.4 some day, this maybe a good guide for me, thanks!

----------

## navajow

is your webserver down cause im in the middle of this and i cant get the kernel configs and the grub menu -- which i need cause i dont get udev yet

could you post them here

thx

----------

## ali3nx

my apologies...  :Embarassed:   I moved this week and my dns hasn't yet been updated. I'm not clear if i'll keep the same ip address for long since i'm using a different isp temporarily but your welcome to subsittute my current ip for the domain name. if you need to reach me i can be reached via ali3nx@shaw.ca i'm trying to get !ian to update my profile on the forums to reflect my current email address. http://64.180.201.50  is my current ipv4 location. I'm still tryijg to get settled and unpack my gear and my personals but i expect everything to be sorted by the beginning of next week.

----------

## eikketk

 *Lance wrote:*   

> How to bootstrap to GCC 3.4?
> 
> simply echo sys-devel/gcc -*>>/etc/portage/package.keywords before scripts/bootstrap.sh?
> 
> I want to try gcc 3.4 some day, this maybe a good guide for me, thanks!

 

No. Add the line in package.keywords, start bootstrap-2.6.sh, once gcc 3.4 is compiled, ctrl-C, gcc-update, let it use gcc 3.4, env-update, source /etc/profile, edit the bootstrap script, so everything before (and including) emerge gcc isn't done anymore (unless you don't bother re-merging gcc once more, like if you got a fast machine), an run bootstrap. AFAIK.

----------

## slydini

 *Quote:*   

> No. Add the line in package.keywords, start bootstrap-2.6.sh, once gcc 3.4 is compiled, ctrl-C, gcc-update, let it use gcc 3.4, env-update, source /etc/profile, edit the bootstrap script, so everything before (and including) emerge gcc isn't done anymore (unless you don't bother re-merging gcc once more, like if you got a fast machine), an run bootstrap. AFAIK.
> 
> 

 

I'm a little confused on this action. Could you show the steps in code format?

----------

## slydini

 *Quote:*   

> /boot should be hda1 or sda1 if your using scsi 

 

Does that mean it doesn't matter where /boot goes if it is an IDE drive?

I have just one disk and i'm trying to tri-boot. I already have XP on hda1.

----------

## slydini

I just did an emerge sync and can't seem to find the package.keywords file. There is no /etc/portage. I do have /usr/portage though. Is the package.keywords file something you create? If so, should it really be in /usr/portage/package.keywords?

----------

## Digital Storm

 *slydini wrote:*   

>  *Quote:*   No. Add the line in package.keywords, start bootstrap-2.6.sh, once gcc 3.4 is compiled, ctrl-C, gcc-update, let it use gcc 3.4, env-update, source /etc/profile, edit the bootstrap script, so everything before (and including) emerge gcc isn't done anymore (unless you don't bother re-merging gcc once more, like if you got a fast machine), an run bootstrap. AFAIK.
> 
>  
> 
> I'm a little confused on this action. Could you show the steps in code format?

 

I'll try and help the best I can...

```

mkdir /etc/portage

touch /etc/portage/package.keywords

echo 'sys-devel/<gcc version> ~x86' >> /etc/portage/package.keywords

```

Replacing <gcc version> with whichever one you'd like to use of course...

Start your bootstrap like in the handbook, except use the 2.6 bootstrap script instead of the norm, once gcc3.4 is done compile, ctrl-c to exit the bootstrap...

```

gcc-update

#use gcc3.4

env-update && source /etc/profile

```

And then either edit the bootstrap script and start it again (so you don't re-emerge parts already emerged before gcc), or just run it as is if you want to...It doesn't hurt to re-emerge gcc again, just that it will take that much longer to complete...Hopefully this helped somewhat, and others may feel free to build off/comment on it as they see fit...

 :Very Happy: 

----------

## Xk2c

 *Quote:*   

> Unmasking 2.6.x Stable linux-headers in portage
> 
> --------------------------------------------------------
> 
> mkdir /etc/portage && echo "sys-kernel/linux-headers -*" >> /etc/portage/package.keywords
> ...

 

AFAIK there is s.th. missing. To use the 2.6er linux-headers isn´t it "sys-kernel/linux26-headers -*"  ??

----------

## Xk2c

Also have look here:

This guide is intended to help those wanting to build a Gentoo system using the gcc34-x86-2004.2 profile, 

NPTL and a 2.6 kernel

https://forums.gentoo.org/viewtopic.php?t=169054

----------

## slydini

Well thanks for clearing that up. Unfortunately, I have too many nonrelated problems with my current install to even consider using gcc3.4 right now.

----------

## ali3nx

I'm adding udev, ntp-client, timezone, date, and a few other slick tricks to this tut. Should be done later today

Greets, ali3nx

----------

## Digital Storm

Excellent! Just in time for a reinstall...

----------

## ali3nx

Added hdparm Primer, cleaned up the fdisk/partitioning section, added code tags.

Thanks... I'll add reiser4 very soon =]

----------

## ali3nx

updated keywording for linux26-headers

----------

## _Caleb_

Ali3n, install guide looks good and ill try and use it on an install but you know if i get stuck you'll have to help me.

----------

## _Caleb_

Ali3n helped me through my install and i have to say he is a master and without him i probally would still be installing it. My Gentoo runs beautifully and i love it and like i said without him i dont this would have been possible. So Ali3n thanks bro for the help.

----------

## ali3nx

added hdparm code sections. getting close to perfect   :Smile: 

----------

## Xk2c

sounds interresting   :Smile: 

will have a look

----------

## Pax-UX

Has anyone else tried this with a AMD64??? As i'm currently trying a couple of different things on my AMD64 before I settle on which one I like the best.  Did you find it worked well?  I'm going to try this later today.  We'll give feedback on what I find.

----------

## ali3nx

Thanks.... my collegue Davetha from the amd64 herd has tried it and it's fairly similar... Just make some adjustments where an amd64 would be appropriate. I would go into greater detail but i haven't had my morning coffee yet  :Laughing: 

He did get 570 Frames Per second from his K8V Deluxe in UT2004-demo for amd64. Mind you he also changed the symlinks from the UT2lk4 libraries to "optimized, compiled" ones for an amd64   :Cool: 

----------

## kerframil

I was going to sound a cautionary note about using the latest headers without checking for b0rkage first. Hitherto I have been using the latest revision of the 2.6.6 headers because I know them to be pretty safe. However, I have just discovered that linux26-headers-2.6.7-r4 has been marked as stable on x86! I strongly recommend not necessarily using the latest headers as a matter of course. Due to this change I would suggest not defining anything in package.keywords now.

Another tip also. When headers are changed (i.e. after installation), it's a good idea to rebuild glibc. However, there are other packages that depend on virtual/os-headers and I would suggest that these are rebuilt also. Here's a way to do it in one fell swoop, including glibc (note that it will not upgrade anything):

```
ls /var/db/pkg/*/*/*.ebuild | xargs grep -l virtual/os-headers | cut -d "/" -f 5,6 | grep -v linux26-headers | sed -e "s/\(.*\)/=\1/" | xargs emerge --oneshot
```

 *odegard wrote:*   

> doesn't each thread also carry a overhead that would bog the system down?

 

The point of threads is that they should be lightweight. They also make liberal use of shared memory techniques and are meant to have smaller context frames than processes.

Unfortunately, as fefe points out: *Quote:*   

> One problem with threads is that on a bad OS, creating threads is still slow. Solaris and Windows may create threads faster than processes, but it is still way too slow.

 

This is where NPTL comes in. NPTL is a re-working of the original pthreads (the old implementation was also known as LinuxThreads) which offers superb threading performance and is in orders of magnitude more scalable. The original approach offered lacklustre performance, to say the least. For anything that makes liberal use of threading (Java, MySQL and many others) this can be a massive advantage. In theory, anything that uses pthreads (hint: look for linkage to pthread during compilation - many packages do so) should win from this situation. It cannot guarantee perfect backward-compatibility with the old threading implementation. Having said that, I have not experienced any problems (well, a few problems with mono - I believe those have been resolved now).

HOWEVER: this does not mean that it is a good idea to use threading support in user-space programs where it is optional (whether you use NPTL or not). For example, I strongly recommend against the use of the threads USE flag in the case of apache. The process, pre-fork model is well established and tested. In principle, apache2 might have the potential to be more scalable and faster with a thread-based MPM, but in practice I believe things will fall apart - including many of the modules that apache supports. In fact, I recommend that everyone stear clear of the threads USE flag ... fullstop.

 *Quote:*   

> I wrote up a tutorial on this not to long ago instead of merging linux-headers before bootstrap just use bootstrap-2.6.sh this will get the 2.6 headers and emerge them then compile everything against the 2.6 headers.

 

I have spent quite a while campaigning against the use of bootstrap-2.6.sh. It adds a few checks for the 2.6 headers scenario and that's about all. Unfortunately, it wasn't updated in quite some time and missed a hugely important update regarding the sanity of the toolchain building process. However, I have just checked the CVS headers on both files and vapier has updated it (finally ....)! So I would say it is quite safe now, but it is not essential (provided you sort out the headers prior to proceeding).

----------

## ali3nx

Thanks for enlightening us Kerfie. You've never failed to teach me a trick ot two   :Cool: 

----------

## smcallis182

Does anyone know how to format with Reiserfs 4?  I'm doing a stage one install and I'd really like to run R4, anyone?

----------

## slydini

I am about to do the very same thing. I am using a special Live CD that has the reiser4 support already built into it. There are four to choose from. I picked the 2.6.8.1-nitro-r5 one which is listed as stable. You can find them at: http://www.lxnay.scarlet.nl

----------

## ali3nx

Finished adding the timezone section. Had a very heavy week last week building two systems for a client.

----------

## Deranger

Great tutorial ali3nx!

I've been using stable (desktop) system and I'm bored. I wanna try something new and this sounds perfect! Of course all bleeding edge features from this guide, Reiser4 and maybe mm-sources.

Keep up the good work!Last edited by Deranger on Mon Sep 20, 2004 12:01 pm; edited 2 times in total

----------

## ali3nx

Thanks for your opionion mate   :Embarassed: 

----------

## ali3nx

upated my bootstrap procedures to utilize the newly committed bootstrap script. Thanks solar and vapier for your work.

----------

## crazy-bee

Damn I cant reach your server eliteitminds.com to download the stage1 tarball  :Sad: 

Edit: OK, I guess I can use the normal stage1

----------

## johntramp

 *ali3nx wrote:*   

> 
> 
>  2.6.x Stable linux-headers are a must for nptl
> 
> --------------------------------------------------------
> ...

 

Is this correct?  What is it doing?  Is it supposed to be a link instead of a ls ??

----------

## ali3nx

 *johntramp wrote:*   

>  *ali3nx wrote:*   
> 
>  2.6.x Stable linux-headers are a must for nptl
> 
> --------------------------------------------------------
> ...

 

I'm being told by allot of senior develoers to use this script but i'm getting some /lib/cpp C++ preprossessor sanity check errors... I'm quite avid that hamony can be found and that this is entirely possible to accomplish building this style of gentoo linux install with nptl and the best  linux can offer right from scratch. 

 I was planning to make a comment that people should maybe take notice of this script due to the recent changes i inagine just in the last week.  Previously i would have people make /etc/portage as it is a very importat directory for per package granular build specification settings for portage. 

Someone has to break it first... I'll not dissapoint anyone and leave something unfinished or broken for long. Every user that donated access for me to perform an installation helped with building this tutorial   :Wink: 

----------

## crazy-bee

I followed your examples - with the bootscript-cascade.sh - and everything worked fine. I also wanted to go with gcc 3.4.x, so I followed the other advice here in the thread.

Only problem now: After emerge system, kernel, and booting the first time, all programs that use python (hallo emerge) give me "sem_post: invalid argument" - they do work though. I googled a bit, and figured that this is something with glibc/nptl. I have no idea if its good, or bad, and why it happened - everything seems to work fine.

Before gooing to x11/gnome, I'd like to know if that message could turn out as a problem later. So, I'm now emerge -u system to see if that helps.

----------

## Deranger

I've built my Gentoo using this guide and I must say that my system is very much faster than ever!

And it's stable as rock, although I'm using 100% ~x86 system, Reiser4 and 2.6.9-rc2-nitro1. I'll never use ext3 again for system disk.

Thanks again, for a great tutorial!Last edited by Deranger on Mon Sep 27, 2004 10:49 pm; edited 1 time in total

----------

## CC_linux

for some reason, use flags are creating a bootstrap issue. you have use the Default =USE or bootstrap will fail, looking into problem will be a update as soon as it is resolved  :Cool: 

----------

## Deranger

Remember that you need to have USE="nptl" in order to enable Native POSIX Threads Library.

----------

## hielvc

As Xk2c pointed out  *Quote:*   

>  2.6.x Stable linux-headers are a must for nptl
> 
> --------------------------------------------------------
> 
> Code:
> ...

 

You seem to have tryed to merge 2 steps into one.

1. You never make the link to /etc/make.profile

```

ln -s /usr/portage/profiles/default-linux/x86/2004.2/gcc34/2.6/ /etc/make.profile
```

for cascading profiles

. 

2. sys-kernel/linux26-headers-2.6.7-r4 are stable now so you dont need to use /etc/portage to get them. That be as it may

```

mkdir /etc/portage && ln -s /usr/portage/profiles/default-linux/x86/2004.2/gcc34/2.6/ /etc/make.profile
```

By the way EXCELENT howto  :Cool: 

Those who do, do. those who cant edit.  :Laughing: 

----------

## dioo

hi guys,

i got this error while are trying to emerge patch.

ps.: btw, I use a "normal" stage1...

```
Calculating dependencies ...done!

>>> emerge (1 of 1) sys-devel/patch-2.5.9 to /

>>> md5 src_uri ;-) patch-2.5.9.tar.gz

>>> Unpacking source...

>>> Unpacking patch-2.5.9.tar.gz to /var/tmp/portage/patch-2.5.9/work

>>> Source unpacked.

~x86

configure: WARNING: If you wanted to set the --build type, don't use --host.

    If a cross compiler is detected then cross compile mode will be used.

checking for i686-pc-linux-gnu-gcc... gcc

checking for C compiler default output... a.out

checking whether the C compiler works... yes

checking whether we are cross compiling... no

checking for suffix of executables... 

checking for suffix of object files... o

checking whether we are using the GNU C compiler... yes

checking whether gcc accepts -g... yes

checking for gcc option to accept ANSI C... none needed

checking how to run the C preprocessor... /lib/cpp

configure: error: C preprocessor "/lib/cpp" fails sanity check

See `config.log' for more details.

make: *** No targets specified and no makefile found.  Stop.

!!! ERROR: sys-devel/patch-2.5.9 failed.

!!! Function src_compile, Line 38, Exitcode 2

!!! emake failed
```

can anyone help-me?

----------

## Ssl

 *dioo wrote:*   

> hi guys,
> 
> i got this error while are trying to emerge patch.
> 
> ps.: btw, I use a "normal" stage1...
> ...

 

Hi,

Same error here! This is wierd! Using stage1 too.

Ssl

----------

## dioo

ok, i got it!

just unmerge linux-headers and after emerge linux26-headers

works here.

----------

## iverson0881

eliteminds links seem to be down   :Sad: 

----------

## MrApples

yeah its been down for awhile as far as i know

----------

## ali3nx

Unfortunately due to my server sponsor not being able to make a payment the server was lost. It's temporary and i'm trying to resolve it. Also my dns provider's domain went belly up and i need to change my registraion info to his backup domain. I just need to redirect my registrair info and find some static hosting and all shall be golden once again

As for the errors you guys have been getting... there seems to be a problem with some use flags adding dependancies into the bootstraps. I've come up with a solution. It may be temporary unless a developer can resolve the problem with bootstrap adding dependancies. I thought bootstraps were supposed to strip useflags guys...? comon.. =/

Use _only_ the use flags from the portage profile in make.defaults, add nptl to the use flags and follow my guide. You may wish to add use flags after bootstrap and before running emerge system. I would highly reccomend doing so as not adding the useflags would also not add the features and funtionality you require.

----------

## Deranger

 *ali3nx wrote:*   

> 
> 
> Use _only_ the use flags from the portage profile in make.defaults, add nptl to the use flags and follow my guide. You may wish to add use flags after bootstrap and before running emerge system. I would highly reccomend doing so as not adding the useflags would also not add the features and funtionality you require.

 

Yeah, it's best to bootstrap and even emerge system with USE="nptl" because you really don't have much of choices. More USE-flags during bootstrap = bigger change to break something.

----------

## ali3nx

ok folks...  so to recap on the situation there's been allot of oddities with bootstraps lately since about the second last week of september. I've been doing allot of stage1 install testing this week thanks to a couple donors who've let me molest thier systems for the good of all. Here's a basic rundown on my results...

I tried 10 bootstraps with varying use flags on two to three systems. all athlons.

The first try i used full flags, result = failed when media-libs/libart_lgpl being added as a dependancy before gcc emerges resulting in a /lib/cpp sanity error

Stipping use flags down to USE="nptl" after like 4 bootstraps resolved the error when for some reason removing USE="acl" remarkably removed the dependancy. wierd? id say...

 result = bootstrap fails on ncurses when using the bootstrap-casdcade.sh script consecutively either emerging ncurses directly or during a bootstrap with the same error...

so things not looking so very rosey at the moment so i messaged Mr_Bones and await a reply

This is redicuious and needs a resolution.... soon.

I'll keep ya'll posted on the results

----------

## ali3nx

ok folks... theres something very not cosher... i used JUST the portage defaults, fresh stage, emerge patch && emerge -C linux-headers && emerge linux26-headers

then fire up bootstrap-cascade.sh

The bootstrap makes it thru gcc and glibc

but fails on ncurses. Tre annoying? just a little. but someone's gotta break it first

Here's the error i get from ncurses

```
make[1]: Leaving directory `/var/tmp/portage/ncurses-5.4-r5/work/ncurses-5.4/test'

cd misc && make DESTDIR="" all

make[1]: Entering directory `/var/tmp/portage/ncurses-5.4-r5/work/ncurses-5.4/misc'

make[1]: Nothing to be done for `all'.

make[1]: Leaving directory `/var/tmp/portage/ncurses-5.4-r5/work/ncurses-5.4/misc'

cd c++ && make DESTDIR="" all

make[1]: Entering directory `/var/tmp/portage/ncurses-5.4-r5/work/ncurses-5.4/c++'

cd ../obj_s;   -I../c++ -I../include -I. -DHAVE_CONFIG_H -I. -I../include  -D_GNU_SOURCE -DNDEBUG -march=athlon -O3 -pipe -fPIC -fPIC -c ../c++/cursesf.cc

/bin/sh: line 1: -I../c++: No such file or directory

make[1]: *** [../obj_s/cursesf.o] Error 127

make[1]: Leaving directory `/var/tmp/portage/ncurses-5.4-r5/work/ncurses-5.4/c++'

make: *** [all] Error 2

!!! ERROR: sys-libs/ncurses-5.4-r5 failed.

!!! Function src_compile, Line 79, Exitcode 2

!!! make failed

!!! If you need support, post the topmost build error, NOT this status message.

livecd portage #
```

----------

## ali3nx

Ok after some more bootstrap research and help from rac i may have a solution to the bootstrap failures... i'll post an update shortly

----------

## Deranger

bootstrap-cascade.sh has never failed for me and I decided to give a try (spare partition, for testing purposes  :Razz: ) It failed on ncurses...I'm bootstrapping now with linux26-headers that are emerged with USE="-* build bootstrap", I'll post results soon...

EDIT: It failed  :Neutral:  I saw somewhere in the forums that running "gcc-config <CHOST>-3.4.2" could help...So I did "gcc-config i686-pc-linux-gnu-3.4.2" and started bootstrapping again...Let's hope the best  :Razz: 

...Allright, it passed!  :Smile: Last edited by Deranger on Mon Oct 18, 2004 10:13 am; edited 2 times in total

----------

## zehnan1

Hi everybody!

I also tried with gcc3.4 after ncurses error. Only I didnt bootstrap again. I reemerged ncurses - it passed. I hope nothing is missing because of that.

regards,

Marko

----------

## Phlogiston

I'd like to install gentoo with your tutorial. But the elitminds.com links to the config files don't work. Could you help me?

----------

## Varuna

Oktane's strategy worked for me, too: I put a gcc-config line switching to 3.4.2 in bootstrap-cascade.sh, right after it emerges gcc, and the bootstrap succeeded where it had failed to find c++.

----------

## Deranger

There's better method than that...BEFORE bootstrapping do "emerge --oneshot --nodeps gcc && gcc-config 2 && source /etc/profile"

Then you can bootstrap and it passes  :Cool: 

With this method, you don't have to bootstrap twice, just emerge GCC twice  :Wink: 

----------

## hielvc

Well they are trying to fix it, but the fix is only halfway there and borks. It tries to set up gcc-3.4.2 its not quit there yet as it only does gcc-config i686-pc-linux-gnu-    If your wondering it leaves off the version #. As mentioned above you can either emerge gcc first or put this into bootstrap-cascade.sh <youll find it at end of the script>

"gcc-config i686-pc-linux-gnu-3.4.2 && source /etc/profile". 

```

# Basic support for gcc multi version/arch scheme ...

if [ -n "${STRAP_RUN}" ]; then

   if test -x ${GCC_CONFIG} &>/dev/null && \

      ${GCC_CONFIG} --get-current-profile &>/dev/null

   then

      # Make sure we get the old gcc unmerged ...

      emerge clean || cleanup 1

      # Make sure the profile and /lib/cpp and /usr/bin/cc are valid ...

      ${GCC_CONFIG} "`${GCC_CONFIG} --get-current-profile`" &>/dev/null

       gcc-config i686-pc-linux-gnu-3.4.2 && source /etc/profile

   fi

fi
```

This will work even with the current borkage.

----------

## feld

after borking my system looking for a good install guide, i decided to take a chance and use your guide. i followed everything in your first post to a T, and later while installing i read through some of the other posts seeing how your guide has developed. without anything but what was in your first post, my system has bootstrapped and emerged system and all the other goodies properly. i had no errors or stop except once when i had to download manually the java documentation, which i just skipped and continued from where it was at.

currently i am installing xorg and kde after my reboot. 

the only probs i had was that the eliteitminds.com site is down, but that was no big deal because i just did those parts myself.

CFLAGS were -march=athlon-xp -O3 -pipe -fomit-frame-pointer

athlon xp 3000+ here

all i have to say is GREAT work. this is gonna be one nasty beast once its all done.

i dont know what problems you guys had happening, but i had none here obviously

the only question i have, is after reading the last posts here, is that i wanna know if by following your instructions, did i truly achieve what this guide was going for, or not? the last few posts seem to say otherwise, at least that is how i am reading into it.

-Feld

----------

## ali3nx

 *feld wrote:*   

> after borking my system looking for a good install guide, i decided to take a chance and use your guide. i followed everything in your first post to a T, and later while installing i read through some of the other posts seeing how your guide has developed. without anything but what was in your first post, my system has bootstrapped and emerged system and all the other goodies properly. i had no errors or stop except once when i had to download manually the java documentation, which i just skipped and continued from where it was at.
> 
> currently i am installing xorg and kde after my reboot. 
> 
> the only probs i had was that the eliteitminds.com site is down, but that was no big deal because i just did those parts myself.
> ...

 

I'm glad to hear about a new success story... if your bootstrap didn't halt with any c++ errors.. quite possibly. I find that emerging sysfsutils is a good method to determine if your toolchain did properly link. The gcc method searches during compile usually tell the tale. However your running kde and thats what counts   :Very Happy: 

----------

## ali3nx

 *Phlogiston. wrote:*   

> I'd like to install gentoo with your tutorial. But the elitminds.com links to the config files don't work. Could you help me?

 

My apolologies for the non working mirror links... My previous mirror sponsor is dealing with a divorce and couldnt afford to keep up the payments.  I've been given an update regarding the hardware my new mirror will be running however. The owners of Networkidl have offered to sponsor colocating a dual emt64 with 1.5TB of sata raid5 and 2gb of ram from what i've been informed from the powers that be  :Wink: 

Until the server is operational my mirror will be down. You can use any of the other mirror servers listed on the official gentoo linux mirror listing

----------

## ali3nx

here's a new oneliner for everyone wishing to try out the new cascading profiles and the suggested method Oktane has for ensuring gcc will switch profiles before bootstrap =] Appreciate the assistance Oktane   :Smile: 

```
rm /etc/make.profile && ln -sf /usr/portage/profiles/default-linux/x86/2004.2 /etc/make.profile && env-update && source /etc/profile && emerge patch && emerge -C linux-headers && USE="-* build bootstrap" emerge linux26-headers && emerge --oneshot --nodeps gcc && gcc-config 2 && source /etc/profile && cd /usr/portage && scripts/bootstrap-cascade.sh
```

----------

## Deranger

I messed around with my test-partition and found that new glibc has two nptl related USE-flags... (nptl and nptlonly)

I compiled glibc with USE="ntpl" and then did /lib/libc.so.6, it outputs linuxthreads instead of NPTL. Then I recompiled it with USE="nptl nptlonly" and /lib/libc.so.6 outputs NPTL.

Everything I know, if you don't specify USE="nptlonly" it uses linuxthreads as a fallback (someone told me that on #gentoo @ freenode)

Anyway, if you want to build fully NPTL fueled system, you need to emerge glibc with USE="nptl nptlonly"

Just my 2 cents  :Smile: 

----------

## Digital Storm

Hopefully I'm correct..

Compiling glibc with the use flags of "nptl" and "nptlonly" will compile in nptl support and only nptl support which means glibc won't be compiled twice (once for nptl and again for original linux headers).

----------

## ali3nx

 *Oktane wrote:*   

> I messed around with my test-partition and found that new glibc has two nptl related USE-flags... (nptl and nptlonly)
> 
> I compiled glibc with USE="ntpl" and then did /lib/libc.so.6, it outputs linuxthreads instead of NPTL. Then I recompiled it with USE="nptl nptlonly" and /lib/libc.so.6 outputs NPTL.
> 
> Everything I know, if you don't specify USE="nptlonly" it uses linuxthreads as a fallback (someone told me that on #gentoo @ freenode)
> ...

 

Just a word of caution... i _think_ some programs may still require usage of pthreads. I was personally aware of the nptlonly use flag however after trying to recompile glibc to only build the nptl threading libraries this particular system had a bit of a spaz attack   :Laughing:  For anyone considering recompiling glibc with no pthreads fallback you may be in for a rough ride. This is something that would be worthy for more testing to see how things react with absolutely no pthreads libraries.

----------

## Deranger

 *Quote:*   

> 
> 
> For anyone considering recompiling glibc with no pthreads fallback you may be in for a rough ride.
> 
> 

 

Ehm, don't look at me, I have USE="nptl nptlonly" compiled glibc on my non-testing system too  :Laughing: 

No problems so far!  :Razz: 

 *Quote:*   

> 
> 
> Hopefully I'm correct..
> 
> Compiling glibc with the use flags of "nptl" and "nptlonly" will compile in nptl support and only nptl support which means glibc won't be compiled twice (once for nptl and again for original linux headers).
> ...

 

You're almost correct. It compiles once with NPTL support and another spin for linuxthreads (pthreading) but it still uses 2.6 headers. You shouldn't have "original" (2.4) headers in your system  :Very Happy: Last edited by Deranger on Mon Oct 18, 2004 7:14 am; edited 1 time in total

----------

## ali3nx

added cascading profiles, gensplash, grub skinning, cleaned up grub install section, added oktane p0wa to the oneliner  :Cool: 

Nitey nite folks More soon.

----------

## Deranger

Oh yeah, the sweetest tutorial on the planet!

I'll have to try out that GRUB skin, but I don't start playing with gensplash  :Smile:  I've never used framebuffer and actually vesafb-tng is b0rked in nitro-sources  :Laughing: 

 *Quote:*   

> 
> 
> * Vesafb-tng and/or fbsplash are still broken. If anyone knows how to fix this, let me know
> 
> 

 Last edited by Deranger on Mon Oct 18, 2004 10:19 am; edited 2 times in total

----------

## woZa

Thanks to ali3nx. Just emerged gcc twice and it worked fine. Did this on software raid0 and things are rocking along nicely.   :Smile: 

----------

## robet

Any word on the workability of this with AMD64? It would be awfully nice to have nptl, udev and 64 bit Gentoo  :Smile: 

----------

## Deranger

 *robet wrote:*   

> Any word on the workability of this with AMD64? It would be awfully nice to have nptl, udev and 64 bit Gentoo 

 

Yeah, it should work, why not? Just like ali3nx said in previous page:

 *ali3nx wrote:*   

> Thanks.... my collegue Davetha from the amd64 herd has tried it and it's fairly similar... Just make some adjustments where an amd64 would be appropriate. I would go into greater detail but i haven't had my morning coffee yet 
> 
> He did get 570 Frames Per second from his K8V Deluxe in UT2004-demo for amd64. Mind you he also changed the symlinks from the UT2lk4 libraries to "optimized, compiled" ones for an amd64  

 

----------

## canadian_psyko

I just finished the install.

I don't know yet if it worked, I did the entire thing through ssh/screen about a 20 min drive from my house.

There were a couple issues with the one-liner though.

emerge patch  (errored for some reason, took it out)

gcc-config 2  (not valid syntax apparently, took it out)

emerge reiser4progs (could find files)

some of the rc-updates  (grub, syslog-ng, xinetd, hotplug didnt work, had to emerge them)

Other than that, it's good  :Very Happy: 

Hopeully it's running when I get home.

Not bad (IMO) for basicly a newb.

Now to decide what else I want/need

Cam

Athlon 1.4/512mb

----------

## ali3nx

gcc-config 2 should switch the chroot's running/operational gcc to the gcc that was compiled... if there's a problem with it switching perhaps something changed in the last couple days yet again...

The developers love to keep me on my toes  :Laughing: 

as you can see in the code section below the numbers relate to the versions of gcc that are in use or available in the system. I no longer use the stage installed version of gcc which cannot compile c++ or any version previous to 3.4.2 so my version i wish to use would be #1

The stages are different as the version thats installed would be number 1 and would be possibly labelled i386-pc-linux-gnu-3.3.4 which is compiled to run on anything. Once gcc-config 2 executes in the oneliner that version would be rendered dormant and the new version would be used. The asterisk designates the in use version currently selected as non-dormant in your system. If your getting an error when it executes i'm certainly curious why. It could be that the dev's may have changed or updated something. Any information regarding your gcc-config -l output and emerge info on the system would be unseful. It would also be a good idea to ensure you chrooted correctly and that proc was properly mounted into the chroot that your installing into.

```
gateway ~ # gcc-config -l

[1] i686-pc-linux-gnu-3.4.2 *

[2] i686-pc-linux-gnu-3.4.2-hardened

[3] i686-pc-linux-gnu-3.4.2-hardenednossp
```

----------

## hielvc

I just had to rebuild my system again. The bootstrap-cascade.sh bootstraps but does it with gcc-3.3.3. 

```

tester ~ # gcc-config -l

[1] i386-pc-linux-gnu-3.3.3

[2] i686-pc-linux-gnu-3.3.3 *

[3] i686-pc-linux-gnu-3.4.2

[4] i686-pc-linux-gnu-3.4.2-hardened

[5] i686-pc-linux-gnu-3.4.2-hardenednossp
```

This is of course as of Monday so who knows about today. I didnt try any fancey stuff besides the required ( if you want linux26-headers ) "emerge --oneshot linux26-headers && emerge -C linux-headers"

Oh if you're using ssh to build or log in on another system be careful. I accidently shutdown my x-term window instead of mc in the ssh window. I could  no longer log in as root and and if I tryied to chroot to that partion I got segfault. If I went to my /opt partion where I have gentoo for testing bootstrap and such chroot worked fine. SO I had to mkfs.ext3 "/"  :Sad:   and rebuild.

----------

## Deranger

<removed>Last edited by Deranger on Fri Oct 22, 2004 2:13 pm; edited 2 times in total

----------

## 3nd3r

"if doing a new install"

 make sure your USE="nptl ojbc"

and then use:

rm /etc/make.profile; ln -sf /usr/portage/profiles/default-linux/x86/2004.2 /etc/make.profile; env-update && source /etc/profile; emerge patch; emerge -C linux-headers && USE="-* build bootstrap" emerge linux26-headers; emerge --oneshot --nodeps gcc; gcc-config 2; source /etc/profile; cd /usr/portage; scripts/bootstrap-cascade.sh; emerge system; emerge syslog-ng xinetd grub hotplug vixie-cron reiserfsprogs reiser4progs sysfs

----------

## Deranger

I don't see the point of your post. The oneliner in this tutorial works very well.

Commands shouldn't be chained with ; because it continues the oneliner if something fails. && continues only if previous command has finished without any errors.

----------

## DrKewp

 *robet wrote:*   

> Any word on the workability of this with AMD64? It would be awfully nice to have nptl, udev and 64 bit Gentoo 

 

There a few very important things you have to change, for exampe, using the amd64 arch and the static version of grub.  I also had some problems compiling C++, in my case something was clobbering /dev/null during the build process.  

When ali3nx gets his files mirrored I'll write up some addendum for the AMD64.

----------

## shell_ramix

Today around 3 AM, I was installing a brand new system in a Toshiba Satellite Laptop, and I could realize that there is a new /usr/portage/profiles/default-linux/x86/2004.3.  So I had the crazy idea to use this instead of the 2004.2.   Another think I done, was to put in my bootstrap this both Variables "nptl nptlonly"... Everything starts to build o.k., Even gcc...  but a couple of things happened:

When the 3rd. proccess of the bootstrap cascade starts, when it starts to download glibc, it decides to download the 2.4. headers...  then it starts compiling.....

And finaly, the last thing when i'm still in:  glibc-2.3.4 can't compile because it never found on the work temp dir this: "build-i386-pc-linux-gnu-nptl".

Anyone knows what's wrong with this..?  Maybe my mistake to use a profile that in fact I don't certainly know if is by now "stable enough" to build from there...

Thanks.!!!

----------

## cybe

I just rebuilt my system using these instructions, and everything is noticably faster.  Are binaries built with gcc 3.4  noticably faster than 3.3 ?

I thought my previous system should have been fairly good since I had gone NPTL and gcc 3.4 a while back and recompiled a whole lot. 

P.s I was forced to rebuild after I again witnessed the power of rm -rf !  =( I had mounted my whole root in a folder I was working in, and forgot the whole thing.. Later I rm -rf:ed the folder and wondered why it felt so long. Felt like Homer Simpson.

Well, this isn´t too bad since I had most of  my personal stuff backed up elsewhere and also qpkg -I started showing a little bit too much stuff I didn't recognize...

---

UPDATE: Faster ? how? Well, right now for instance I´m emerging two things at the same time on (xorg, vsftpd)my laptop (athlon XP 1500) and if I open up a new screen, with bash, or login on a new VT, it´s almost instantanious, instead of a seconds/a few seconds delay...

----------

## Deranger

I have good news!

It seems that bootstrap issues are finally solved. There's only two bootstrap-scripts (bootstrap.sh & bootstrap-macos.sh) in /usr/portage/scripts/ (yes, I even synced couple of times to see if that's possible  :Wink: )

It's totally new, modification time about 12 hours ago.

```

emerge -C linux-headers && emerge --oneshot --nodeps linux26-headers && cd /usr/portage && scripts/bootstrap.sh

```

No GCC trick, no rac-foo, nothing  :Wink:  I'll posts results in about one hour...

I don't want to know how many bootstraps I've done in a past two weeks. I think something around 20-30  :Laughing: 

[ STATUS-UPDATE ] GCC 3.4.2 compiled succesfully, and it did change system to use 3.4.2! Now pure NPTL glibc in under of compilation...

[ STATUS-UPDATE #2 ] YAY! It passed, no problems or whatsoever! 

ali3nx, time to modify tutorial?  :Wink: Last edited by Deranger on Sun Oct 24, 2004 3:58 pm; edited 1 time in total

----------

## ali3nx

thanks for the heads up   :Cool: 

I'll change it up after coffee =]

----------

## ali3nx

well it would seem that there can only be 0ne  :Cool: 

```
deleting sys-apps/portage/files/digest-portage-2.0.51

deleting scripts/bootstrap-cascade.sh

deleting scripts/bootstrap-2.6.sh

deleting profiles/uclibc/use.defaults

deleting net-print/cups/files/digest-cups-1.1.21-r1
```

----------

## Servax

Can someone please tell me the make.conf?

Also is there any other place where I can get the config for the kernel?

----------

## ali3nx

 *Servax wrote:*   

> Can someone please tell me the make.conf?
> 
> Also is there any other place where I can get the config for the kernel?

 

Tutorial has been updated to reflect this weeks needed changes. The config's are once again available aswell. Stay tuned for more of the latest and greatest on The Gentoo Battlefront  :Wink: 

----------

## ConVicTioN

In your /etc/make.conf the var input line is not closed is this a typo?

#############

#

# Bootstrap only USE

#

USE="nptl objc gcj f77 erandom pic

----------

## slycordinator

I'm pretty sure that's a typo.  If you try to emerge anything it'll very likely give you errors.

----------

## ryker

 *DrKewp wrote:*   

>  *robet wrote:*   Any word on the workability of this with AMD64? It would be awfully nice to have nptl, udev and 64 bit Gentoo  
> 
> There a few very important things you have to change, for exampe, using the amd64 arch and the static version of grub.  I also had some problems compiling C++, in my case something was clobbering /dev/null during the build process.  
> 
> When ali3nx gets his files mirrored I'll write up some addendum for the AMD64.

 

Except for the obvious changes of using amd64 arch and using static-grub, will this tutorial work for amd64 now?

----------

## ali3nx

 *ConVicTioN wrote:*   

> In your /etc/make.conf the var input line is not closed is this a typo?
> 
> #############
> 
> #
> ...

 

whoops   :Embarassed: 

I fixed it   :Wink: 

----------

## cojo

configure: error: C++ preprocessor "/lib/cpp" fails sanity check

when configuring libart_lgpl-2.3.16 to compile.

 :Sad: 

You can access config.log at 

is this ok?? ln -sf /usr/portage/profiles/default-linux/x86/2004.2 /etc/make.profile

or it must be ln -sf  /usr/portage/profiles/default-linux/x86/2004.2/gcc34/2.6/ /etc/make.profileLast edited by cojo on Thu Jun 09, 2005 2:30 pm; edited 3 times in total

----------

## Watchoo

 *cojo wrote:*   

> configure: error: C++ preprocessor "/lib/cpp" fails sanity check
> 
> when configuring libart_lgpl-2.3.16 to compile.
> 
> You can access config.log at http://212.142.175.90/gentoo/config.log

 

Same error here, but it only happens when using ACCEPT_KEYWORDS="~x86" during bootstrap , must be a broken e-build or something. Not using ~x86 kinda suxxx  :Sad: 

----------

## Deranger

Did you merge linux26-headers with USE="-* build bootstrap"? That should fix sanity errors. However I haven't never got that error. Yeah, non ~x86 is lame  :Wink: 

----------

## cojo

rm /etc/make.profile && ln -sf /usr/portage/profiles/default-linux/x86/2004.2 /etc/make.profile && env-update && source /etc/profile && emerge -C linux-headers && USE="-* build bootstrap" emerge linux26-headers && cd /usr/portage && scripts/bootstrap.sh && emerge system && emerge syslog-ng xinetd grub hotplug coldplug vixie-cron reiserfsprogs reiser4progs sysfsutils udev && emerge --nodeps acpid ntp && rc-update add syslog-ng default && rc-update add net.eth0 default && rc-update add vixie-cron default && rc-update add xinetd default && rc-update add sshd default && rc-update add hotplug default && rc-update add coldplug default && rc-update add acpid default

lis this ok?? ln -sf /usr/portage/profiles/default-linux/x86/2004.2 /etc/make.profile

or it must be ln -sf /usr/portage/profiles/default-linux/x86/2004.2/gcc34/2.6/ /etc/make.profile

the virtuals is in 2.6 directory

----------

## Watchoo

 *Oktane wrote:*   

> Did you merge linux26-headers with USE="-* build bootstrap"? That should fix sanity errors. However I haven't never got that error. Yeah, non ~x86 is lame 

 

Yes, I did, I'd "copy & paste" it and then check if it's right ...

Also using the other profile makes ufed not usable, 'cos it does not contain use.defaults ...

----------

## cojo

I think the problem are the linux-headers 2.6.8.1-r1.

with the 2.6.8.1 no problem.

----------

## Watchoo

 *cojo wrote:*   

> I think the problem are the linux-headers 2.6.8.1-r1.
> 
> with the 2.6.8.1 no problem.

 

I disagree, I still have the same problem even if using only 2.6.8.1 linux26-headers...

----------

## Dunska

I had the sanity check issue as well with the system I am just building using ~x86.

The fix for me was to "emerge --oneshot --nodeps gcc gcc-config" to get gcc 3.4.2 before running the boostrap script.  I also needed to manually set gcc 3.4.2 as the default compiler with "gcc-config 2" as it was not set automatically.  After that, all was fine.  EDIT: Remember to "env-update && source /etc/profile" after emerging gcc.

I also just noticed that /etc/conf.d/rc has now changed.  There is no longer the "RC_DEVFSD_STARTUP" setting.  It looks like it has been replaced by "RC_DEVICES" which can be set to "auto", "devfs", "udev" or "static".  I set it to "udev".

----------

## Servax

So do we do emerge --nodeps --oneshot gcc && gcc-config etc etc... then run bootstrap.sh?

Btw, anyone know why they removed bootstrap-cascade.sh?

----------

## Dunska

Yeah, I did each command in the "one-liner" individually.  Just before running "scripts/bootstrap.sh" I ran

```
emerge --oneshot --nodeps gcc gcc-config

gcc-config 2

env-update

source /etc/profile
```

Then I continued with the "one-liner" commands individually.

```
scripts/bootstrap.sh

emerge system

<etc, etc>
```

I actually had an error while running "emerge system" as perl could not be found.  I re-ran "emerge system" and the compile went fine (with perl now higher up the list of programs to emerge).

bootstrap-cascade.sh has been depreciated in favor of a (now working) bootstrap.sh.  It is mentioned in this thread.

----------

## Servax

gcc-config 2 does not work for me, it just gives me a list of what I can do...

----------

## Dunska

Did you emerge the new gcc-config to go with gcc 3.4.2?

"gcc-config -l" should list the available versions with a number in brackets to the left of them:

```
livecd linux # gcc-config -l

[1] i386-pc-linux-gnu-3.3.3

[2] i686-pc-linux-gnu-3.4.2 *

[3] i686-pc-linux-gnu-3.4.2-hardened

[4] i686-pc-linux-gnu-3.4.2-hardenednossp
```

The one with the "*" is the current profile.

You can then use "gcc-config 2" (or whatever profile number you want) to set the profile.  Also you can spell it out like:

```
gcc-config i686-pc-linux-gnu-3.4.2
```

On another note, I also compiled glibc with "nptl nptlonly" and have not had any issues (yet...)

----------

## linux_on_the_brain

Need some help here, when I  emerge --oneshot --nodeps gcc gcc-config, from the one-liner, it always fails. Can somebody tell me what I'm missing?

Thanks

I get the followig mesage:

```

checking for X... no

*** xlib peers requested but no X library available

make: *** [configure-target-libjava] Error 1

!!!ERROR: sys-devel/gcc-3.4.2-r2 failed.

!!! Function gcc_do_make, Line 1029,Exitcode 2

!!! (no error message)
```

----------

## slycordinator

I did a successful install earlier today using the following guide:

https://forums.gentoo.org/viewtopic.php?t=206526

And I added in a few little things from this thread (the one you're viewing now).

----------

## blue.sca

 *linux_on_the_brain wrote:*   

> Need some help here, when I  emerge --oneshot --nodeps gcc gcc-config, from the one-liner, it always fails. Can somebody tell me what I'm missing?
> 
> Thanks
> 
> I get the followig mesage:
> ...

 

probably X in your USE-Flags? or java?

----------

## Deranger

You DO NOT need to emerge GCC before bootstrapping! There was earlier some problems with bootstrap-cascade.sh and GCC 3.4.2. Profiles didn't switched automatically.

It's all fixed, just do what tutorial says  :Wink: 

 *Quote:*   

> 
> 
> I also just noticed that /etc/conf.d/rc has now changed. There is no longer the "RC_DEVFSD_STARTUP" setting. It looks like it has been replaced by "RC_DEVICES" which can be set to "auto", "devfs", "udev" or "static". I set it to "udev".
> 
> 

 

Yeah, new baselayout.

----------

## Dunska

I was still getting sanity check errors while bootstrapping this morning unless I emerged gcc first... that was with a full ~x86 system, so things change fairly rapidly   :Wink: 

----------

## cojo

 *linux_on_the_brain wrote:*   

> Need some help here, when I  emerge --oneshot --nodeps gcc gcc-config, from the one-liner, it always fails. Can somebody tell me what I'm missing?
> 
> Thanks
> 
> I get the followig mesage:
> ...

 

Try to do this --> USE="-* build bootstrap" emerge --oneshot --nodeps gcc gcc-config

----------

## linux_on_the_brain

still no luck with the install. gcc compiled finally, thanks cojo, but now libart_lgpl fails with a sanity check. Is there a fix for this.

----------

## linux_on_the_brain

I got farther this time around now it fails on ncurses. guess I will keep trying.

----------

## Dunska

Do you have

```
ACCEPT_KEYWORDS="~x86"
```

in your make.conf?

----------

## linux_on_the_brain

yes I do

----------

## ali3nx

Just bootstrapping a 2.53 Pentium4.. I'll relay my results. I allready see there's some problems with the cascaded profile.

----------

## ali3nx

i'm of the opinion that there's a use flag in the profiles or a bad DEPEND in the tree someplace and it's bugging me...

the only way i could get past it was to use these use flags

```
USE="-* berkdb crypt erandom f77  gcj libwww ncurses nls nptl objc \

 pam pic png python readline slang ssl svga tcpd  x86 zlib"
```

with this p4 that my friend from halifax let me molest i'll be able to do a little testing..   

   specs are a 2.53 P4 with 1gb of ram

should make for some speedier testing

----------

## linux_on_the_brain

IS that your list of USE flags for bootstraping?

```

USE="-* berkdb crypt erandom f77  gcj libwww ncurses nls nptl objc \

 pam pic png python readline slang ssl svga tcpd  x86 zlib"

```

----------

## ali3nx

 *linux_on_the_brain wrote:*   

> IS that your list of USE flags for bootstraping?
> 
> ```
> 
> USE="-* berkdb crypt erandom f77  gcj libwww ncurses nls nptl objc \
> ...

 

okay i stand corrected... even just those use flags during bootstrap still makes media-libs/libart_lgpl added to bootstrap as a dep....

after bootstrap failed once i added -* to my use flags which is a portage variable that will mask all flags _but_ what are stated in the USE line after the -* mask

----------

## ali3nx

here's what i get from emerge info

```
livecd portage # emerge info

Portage 2.0.51-r2 (default-x86-2004.2, gcc-3.3.3, glibc-2.3.3.20040420-r0, 2.6.7-gentoo-r11 i686)

=================================================================

System uname: 2.6.7-gentoo-r11 i686 Intel(R) Pentium(R) 4 CPU 2.53GHz

Gentoo Base System version 1.4.16

Autoconf:

Automake:

Binutils: sys-devel/binutils-2.15.92.0.2-r1

Headers:  sys-kernel/linux26-headers-2.6.8.1-r1

Libtools:

ACCEPT_KEYWORDS="x86 ~x86"

AUTOCLEAN="yes"

CFLAGS="-march=pentium4 -O3 -pipe"

CHOST="i686-pc-linux-gnu"

COMPILER=""

CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control"

CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"

CXXFLAGS="-march=pentium4 -O3 -pipe"

DISTDIR="/usr/portage/distfiles"

FEATURES="autoaddcvs ccache distlocks sandbox"

GENTOO_MIRRORS="http://gentoo.seren.com/gentoo http://gentoo.mirrors.pair.com/"

MAKEOPTS="-j3"

PKGDIR="/usr/portage/packages"

PORTAGE_TMPDIR="/var/tmp"

PORTDIR="/usr/portage"

PORTDIR_OVERLAY=""

SYNC="rsync://rsync.gentoo.org/gentoo-portage"

USE="berkdb crypt erandom f77 gcj libwww ncurses nls nptl objc pam pic png python readline slang ssl svga tcpd x86 zlib"

```

One of these things shouldn't belong here...   :Wink: 

I think most humans have heard that song

----------

## linux_on_the_brain

i searched bugzilla for libart_lgpl. 

The "fix" was to modify the bootstrap.sh file. Hope this helps

Bugzilla Bug 66042

```

--- /usr/portage/scripts/bootstrap.sh   2004-08-18 05:14:41.000000000 +0200

+++ /tmp/bootstrap.sh   2004-10-01 18:43:29.472653592 +0200

@@ -203,7 +203,7 @@

    

 USE="-* build bootstrap" emerge ${STRAP_EMERGE_OPTS} ${myPORTAGE} || cleanup 1

 

-export USE="${ORIGUSE} bootstrap"

+export USE="${ORIGUSE} bootstrap build"

 emerge ${STRAP_EMERGE_OPTS} ${myTEXINFO} ${myGETTEXT} ${myBINUTILS} || cleanup 1

 

 # If say both gcc and binutils was build for i486, and we then merge
```

----------

## ali3nx

 *linux_on_the_brain wrote:*   

> i searched bugzilla for libart_lgpl. 
> 
> The "fix" was to modify the bootstrap.sh file. Hope this helps
> 
> Bugzilla Bug 66042
> ...

 

a valiant effort but the hunk failed because the script was modified..  vapier? um help  :Smile: 

----------

## linux_on_the_brain

i manually applied it, and I was able to get  past libart_lgpl, the bootstrap did fail however when it reached ncurses something about  a sanity check and c++

----------

## ali3nx

well i asked lv and he informed me that it's related to the gcj use flag... I'll remove it until the open bug related to it is fixed. the DEPEND structure of libart_lgpl depends on gcj for desktop related issues... and well it's got issues   :Laughing: 

----------

## ali3nx

i'm going to test another strap with this system profile and use flags...

```
livecd portage # emerge info

Portage 2.0.51-r2 (default-x86-2004.2, gcc-3.3.3, glibc-2.3.3.20040420-r0, 2.6.7-gentoo-r11 i686)

=================================================================

System uname: 2.6.7-gentoo-r11 i686 Intel(R) Pentium(R) 4 CPU 2.53GHz

Gentoo Base System version 1.4.16

Autoconf:

Automake:

Binutils: sys-devel/binutils-2.15.92.0.2-r1

Headers:  sys-kernel/linux26-headers-2.6.8.1-r1

Libtools:

ACCEPT_KEYWORDS="x86 ~x86"

AUTOCLEAN="yes"

CFLAGS="-march=pentium4 -O3 -pipe"

CHOST="i686-pc-linux-gnu"

COMPILER=""

CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control"

CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"

CXXFLAGS="-march=pentium4 -O3 -pipe"

DISTDIR="/usr/portage/distfiles"

FEATURES="autoaddcvs ccache distlocks sandbox"

GENTOO_MIRRORS="http://gentoo.seren.com/gentoo http://gentoo.mirrors.pair.com/"

MAKEOPTS="-j3"

PKGDIR="/usr/portage/packages"

PORTAGE_TMPDIR="/var/tmp"

PORTDIR="/usr/portage"

PORTDIR_OVERLAY=""

SYNC="rsync://rsync.gentoo.org/gentoo-portage"

USE="X apm arts avi berkdb bitmap-fonts crypt cups encode erandom f77 foomaticdb gdbm gif gnome gpm gtk gtk2 imlib jpeg kdelibg++ libwww mad mikmod motif mpeg ncurses nls nptl objc oggvorbis opengl oss pam pdflib pic png python qt quicktime readline sdl slang spell ssl svga tcpd truetype x86 xml2 xmms xprint xv zlib"
```

----------

## ali3nx

well i got to bootstrapping this p4 and a debian fanatic chalenged me to an nbench test. I thought i might post my test results here for my 1ghz tbird and let everyone check em out   :Smile: 

emerge nbench folks and lets see what we all get   :Wink: 

----------

## Deranger

GCC 3.4.2-r3 out! Hopefully it won't b0rk anything  :Wink:  After emerging that I could run nbench...

I also found that f77 is default flag of new cascading profile, I added it to my USE-flags (using USE="-*" as a base  :Wink: )

----------

## linux_on_the_brain

bootstrap failed again last night at ncurses.

ncurses-5.4-r5

/bin/sh line1: -I../c++: No such file or directory

----------

## hielvc

linux_on_the_brain your emerge info shows that your still useing gcc-3.3.3. See the above post about switching to gcc-3.4.

EDIT fixed my normal, 10 words 50 typeing and misspeling. sigh.

----------

## linux_on_the_brain

hielvc, I have not posted my emerge info yet.  gonna try again today

----------

## thecrazyperson_ws

Any chance of adding how to go ~x86 in this guide?  I can't remember exactly where / when to commit the changes. I usually add ACCEPT_KEYWORDS="~x86" to the make.conf, but that effectively sets it to ACCEPT_KEYWORDS="x86 ~x86" and b0rks the system.

----------

## Deranger

The right way is to add ACCEPT_KEYWORDS="~x86" (or another arch) in /etc/make.conf. Yes, it will be ACCEPT_KEYWORDS="x86 ~x86", that's okay. It shouldn't b0rk your system. That means Portage let you install x86 packages and ~x86 packages.

----------

## ali3nx

 *thecrazyperson_ws wrote:*   

> Any chance of adding how to go ~x86 in this guide?  I can't remember exactly where / when to commit the changes. I usually add ACCEPT_KEYWORDS="~x86" to the make.conf, but that effectively sets it to ACCEPT_KEYWORDS="x86 ~x86" and b0rks the system.

 

The keywording for ~x86 is set in my make.conf example here and is also in the main part of the tutorial. also If ~x86 is used x86 is implied by portage via the profile symlink in your stage tarball

----------

## linux_on_the_brain

I finally got the dam laptop to bootstrap successfully. Its only been a week and countless bootstrap attempts.

----------

## ali3nx

I i got another install today... pentium-mmx 200 and i tested a bootstrap without gcj and full use flags and things have been going really well. If it passes i'll remove the bootstrap use flag switheroo.   :Cool: 

----------

## Dunska

I used my full set of USE flags (+nptl +nptlonly) for bootstrapping my install and it worked fine.  That was a couple of days ago though.

----------

## thecrazyperson_ws

 *ali3nx wrote:*   

> I i got another install today... pentium-mmx 200 and i tested a bootstrap without gcj and full use flags and things have been going really well. If it passes i'll remove the bootstrap use flag switheroo.  

 

hehe, that's the same specs for the system that I'm installing Gentoo on (with 64 mb of ram), only I'm using a Knoppix CD booted into 2.6.6 because the gentoo livecd's smp kernel doesn't support my video card (Trident POS)  :Sad:   Even if I specify to NOT use framebuffer (using smp-nofb at boot) it still tries to switch it to 80x30 color framebuffer and all I get is a black screen.

EDIT: Great.  Another fscking monkey wrench thrown into the works.  wget segfaults.   :Evil or Very Mad:   :Evil or Very Mad: 

EDIT2:  YAY! fixed the gentoo smp-nofb booting problem.  I found my old ATi 3D RageII+ and put it in.  it works.

----------

## linux_on_the_brain

my install is finally "finished" except for one thing, the dam boot splash doesnt work. Is it possible that there is a step missing.

----------

## Dunska

Yeah, bootsplash did not work for me either.  Apparently there is an issue with the 2.6.9 kernel.  Some have been able to get it to run in 256 colour-mode, but I have had no such luck.  Hopefully it will be fixed in a later kernel revision.

The only other issue I am having at the moment is that X hangs and reboots the computer when logging out of KDE.  This is using the nVidia driver package.  Looking through the forums suggests that this has been (and will be) an issue for some time   :Sad: 

My Gentoo build is blisteringly fast now though   :Twisted Evil: 

----------

## thdrcat

building right now, and all seems to be well. If it works well enough, i will propegate it to my other servers. 

Thanks for the guide!

*edit*

well crap. did everything by the book and have 2 problems:

grub will not bring up the menu by default. i have to tell it at the command line: 

```
configfile (hd0,0)/grub/menu.1st
```

Not a heart breaker, but annoying.

the killer is that after my kernel is done loading i get a 

```

"checking root file system......

FAILED to open device "/dev/hda2": no such file or dir

```

when i go into maintenece mode, there are only ~6 things in dev, none of which are 'hdX'

can anyone lend assistance?

----------

## thdrcat

/bump\

i could use a point in the right direction.

----------

## ali3nx

Just thought i'd mention a few students, some longtime seasoned admin buddies and myself have a Gentoo irc channel on rizon irc network if anyone is looking for some help from some folks that are familiar with things or if someone needs to find me on short notice.. Greets to ya'll and BOO 

 hehe thought i scared ya   :Laughing: 

rizon's been having some dns problems lately so irc.rizon.net might be a little bothersome

to get to the channel we're in 

```
/server irc.stoners-r.us.net  #gentoo

 OR  

/server irc.rizon.net

channel is #gentoo
```

furthermore ...   :Evil or Very Mad:  BOO   :Wink: 

----------

## ali3nx

here's another nbench for ya'll from that p4 2.53 I built earlier this week

----------

## ali3nx

well.. allot of folks have concerns over stability of an ~x86 kinda system... Really?   :Surprised: 

```
gateway linux # emerge -e world

Calculating world dependencies ...done!

>>> emerge (1 of 701) sys-devel/patch-2.5.9 to /
```

Runs like a swiss watch  :Razz: 

----------

## thdrcat

totaly redid one of my machines using the guide, same problem.... any suggestions?

information will be posted upon request.

----------

## Dunska

 *thdrcat wrote:*   

> totaly redid one of my machines using the guide, same problem.... any suggestions?
> 
> information will be posted upon request.

 

A couple of things to check would be:

1.  I noticed in your post above that you have "menu.1st" (with a "1") rather than "menu.lst" (with an "L").  Menu.lst is normally a link to grub.conf (but does not have to be).

2.  Your error states the root filesystem it is trying to open is /dev/hda2.  If you setup your partitions as in this guide, then /dev/hda2 would be your swap partition.  /dev/hda3 would be root.  If you are running from SATA, then the devices are sdaX.  Do an "fdisk -l" to list your partitions.

----------

## syg00

O.K.., I'll bite.

Dunska has been a member since April 2002, and has made 14 posts.

*both* posts on ([edit] this page of) this thread show the same stats.

????

----------

## ali3nx

 *thdrcat wrote:*   

> building right now, and all seems to be well. If it works well enough, i will propegate it to my other servers. 
> 
> Thanks for the guide!
> 
> *edit*
> ...

 

just my 2c but shouldnt the root device be /dev/hda3

----------

## Deranger

 *syg00 wrote:*   

> O.K.., I'll bite.
> 
> Dunska has been a member since April 2002, and has made 14 posts.
> 
> *both* posts on ([edit] this page of) this thread show the same stats.
> ...

 

Of course it does, what did you expect? It shows total posts  :Wink: 

----------

## syg00

[quote="Oktane"]Of course it does, what did you expect? It shows total posts  :Wink: [/quote]

Thanks ... don't mind me.

It was ( is) a long thread, it was late at night ...

----------

## chronochaos

 *thdrcat wrote:*   

> 
> 
> grub will not bring up the menu by default. i have to tell it at the command line: 
> 
> ```
> ...

 

That's because grub looks for grub.conf and not menu.lst, if I recall correctly. menu.lst was used by the early versions of grub and is now a symlink to grub.conf, or should be.

Not a heart breaker, but annoying.

 *thdrcat wrote:*   

> 
> 
> the killer is that after my kernel is done loading i get a 
> 
> ```
> ...

 

I had the exact same problem and the issue was the /etc/conf.d/rc file. Make sure you have RC_DEVICE_TARBALL="yes" and RC_DEVFSD_STARTUP="no". I had to change these two, but also add RC_DEVICES="dev". This last one doesn't exist in the default file, so you have to add it manually. That solved my troubles with /dev not being populated.

----------

## DrKewp

 *ryker wrote:*   

> 
> 
> Except for the obvious changes of using amd64 arch and using static-grub, will this tutorial work for amd64 now?

 

I don't know, if I have time I may test it today, but I'm really leaning towards waiting until 2004.3 is out.  The current AMD64 livecd's are pretty flakey.

----------

## thdrcat

sorry for the slow reply, was at EMS for the last 24 hours.

menu.lst is a symlink for grub.conf. i typed it wrong on the forum. I have solved that problem, but the other remains.

i set up my drives as such:

hda1: boot

hda2: root

hda3: swap

hdb1: home, etc.

all instances of hdaX in the guide were converted to my numbering system, i just forgot to convert back when i posted on the forum.... it was late at night and i was tired.   :Confused: 

I have been working with it and it seems to me that my problem is that /dev/ is not being populated. there are no HD devices and only a few others. i will try the fixes mentioned and see if that works.

*EDIT*

RC_DEVICES="udev" 

RC_DEVICE_TARBALL="yes"

works like a champ. my heartfelt thanks go to the author and all those who helped me. 

i guess i need to go read up on udev and see what it's all about.

----------

## Watchoo

Well, I installed with no problems, but not using ~x86 ... so with x86 there are no problemes during bootstrap ...

Also, my nbench: http://watchoo.yweb.sk/benchmark

 :Twisted Evil: 

EDIT:   :Embarassed:  OOPs, I forgot to say: "Thanks Ali3nx for great howto !!!"

----------

## MrNugget

 *ali3nx wrote:*   

> 
> 
> Mounting Proc and dev  into the Livecd
> 
> ----------------------------------------------
> ...

 

I think mounting /dev is a bad idea. It destroyed my whole bootstrap while installing baselayout (which generates some devices). While compiling this packet and generating the devices it kills my knoppix cd/dvd by "flooding" the devices and so i wasn't able to open another terminal or do anything. Without mounting /dev/ everything worked fine.

----------

## needlern1

This helped me out a lot. Thank you, ali3nx. I just completed a bootstrap of my emachines (laptop) M6805 (amd64). I used the now testing 2004.3 iso from 

http://dev.gentoo.org/~jhuebel/2004.3-testing

At this time I had to add to the boot line the infamous 'pci=noacpi noapic' parameters, in order to get networking going. So the live-cd boot line looks like:

```
gentoo pci=noacpi noapic

```

This allowed me to load the via_rhine module and then I did a net-setup to config my eth0.  Actually it might have been detected. I tried so many things before I found that boot line.... Anyway, it works.

I haven't tried the grub skin or frame buffer things yet.  HTH, BillLast edited by needlern1 on Wed Nov 03, 2004 9:37 am; edited 1 time in total

----------

## bishop00s

why am i getting this error when compiling app-arch/tar-1.14.90-r1? 

```
In file included from /usr/include/stdio.h:28,

                 from argp-fmtstream.h:32,

                 from argp-fs-xinl.c:27:

/usr/include/features.h:265:41: operator '&&' has no right operand
```

----------

## Deranger

 *zion1 wrote:*   

> why am i getting this error when compiling app-arch/tar-1.14.90-r1? 
> 
> ```
> In file included from /usr/include/stdio.h:28,
> 
> ...

 

It's broken. This is the simplest solution:

```

echo ">app-arch/tar-1.14" >> /etc/portage/package.mask

```

Remove that mask when there's a new version that isn't b0rked  :Wink: 

There are some dirty hacks to get 1.14.90-r1 compiled but I wouldn't use them  :Wink: 

----------

## JDHarris

Here's my nbench results on my Athlon64 after using this guide to install

http://63.75.163.189/My%20Pics/nbench_results_11_03_2004.txt

And in order to get udev to work (device files to show up in /dev) I had to add the following arguments to the kernel line in boot.lst:

devfs=nomount gentoo=nodevfs

I was unable to boot completely without this line, /dev/sdX and all the other system devices never showed up so Linux was unable to mount any of the partitions, USB devices, nothing.

----------

## ali3nx

added hdparm after boot section, conf.d/rc example updated for new baselayout in ~x86, added /dev umount and fixed some of my schpellin mistakez   :Embarassed: 

enjoy =]

----------

## maztaim

The only thing I have a beef with is the "Super-Duper One-Liner."

For the average Joe that might be trying this and if a step in the one-liner happens to fail, then you have no idea at what step it goofed.   They would have to start all over again from the beginning of the one-liner; They would have to bootstrap all over again.

This isn't so much of a problem if you are familiar with the whole process of setting up Gentoo and you know what to look for to give you an idea of where to start again.  I got stuck due to a problem with the tar ebuild during emerge system (must have been a bug).  I was able to correct with a sync and restart from emerge system.  A cut here and a paste there and the one-liner continued on it's merry way.

Perhaps it would be best to break it down step by step in the article, then provide a link to the one-liner for those that wish to take the plunge?  Or, even a quick note with dis/advantages to the one-liner, then a link to the step by step breakdown for those that would prefer stepping through?

----------

## Bob P

 *maztaim wrote:*   

> The only thing I have a beef with is the "Super-Duper One-Liner."
> 
> For the average Joe that might be trying this and if a step in the one-liner happens to fail, then you have no idea at what step it goofed.   They would have to start all over again from the beginning of the one-liner; They would have to bootstrap all over again.
> 
> 

 

yes, "stacking" multiple commands on one command line could make things confusing, especially for us n00bs.  but the reason that he's doing it is because it imparts a tremendous amount of time saving for the user!  

if stacking of the commands into a "great one-liner" weren't being done, you'd have to wait for each process to finish before you could start the next one.  that is VERY impractical when you're talking about events that could take 1 hour on a fast PC, but serveral hours (or even days!) on a slow PC.

stacking the commands on a single command line relieves the user from having to come back to the PC every hour or so to check on the progress of the big operations like bootstrapping and emerging the system.  but concactenating these processes, the user can leave the PC alone for as long as it takes to complete the tasks, and is LIBERATED from being tied down to monitoring the PC's process.

I'm a little late to joining this thread, but right now I'm in the middle of the super-duper bootstrap/emerge one-liner on a Pentium-3 equipped PC.  this is my 3rd gentoo installation in a period of 2 weeks, and this one is the most enjoyable one yet.  i cannot stress how satisfying it has been to find this thread and follow ali3nx's wonderful HOW-TO.  ali3nx, THANKS!!!   :Cool: 

maztaim, if you find the concactenated command strings too cumbersome, just replace each pair of double ampersands with a hard carriage return and the result will be a series of simple one line commands.  the downside to doing this is that you'll be spending ALOT more time staring at the screen of your PC.

now that i'm already midstream in the installation process, ali3nx, i do have a couple of questions:

1.  when you say this: *Quote:*   

> You must add USE="nptl" regardless to bootstrap supporting nptl threading.

 

i don't follow where the USE="nptl" statement is actually made.  i don't see it in make.conf, and i don't see it  in the displayed output of make.defaults.  where is it?

2.  is USE="nptl" germaine only to the Pentium 4, or will I benefit from it on a Pentium 3 as well?

ali3nx, thanks again for all of your effort in documenting such an oustanding HOW-TO!

----------

## JDHarris

[quote="Bob P"] *maztaim wrote:*   

> 
> 
> 1.  when you say this: *Quote:*   You must add USE="nptl" regardless to bootstrap supporting nptl threading. 
> 
> i don't follow where the USE="nptl" statement is actually made.  i don't see it in make.conf, and i don't see it  in the displayed output of make.defaults.  where is it?
> ...

 

You put the USE="nptl" in your /etc/make.conf file.  If the USE variable is not in there, it's okay to add it.

----------

## maztaim

 *Bob P wrote:*   

> maztaim, if you find the concactenated command strings too cumbersome, just replace each pair of double ampersands with a hard carriage return and the result will be a series of simple one line commands.  the downside to doing this is that you'll be spending ALOT more time staring at the screen of your PC.
> 
> 

 

I am not disagreeing that it's a time-saver.  The problem is that it becomes difficult to troubleshoot if you don't have experience with the build process.  Giving somebody an alternative to the one-liner doesn't hurt.  Granted it takes a little longer and requires more TLC, but it also helps the inexperienced become familiar with the build process.

----------

## Bob P

 *JDHarris wrote:*   

> You put the USE="nptl" in your /etc/make.conf file.  If the USE variable is not in there, it's okay to add it.

 

whew!  i'm 4 hours into the super-dooper bootstrap, and i'm glad to see that i do have "nptl" in my /etc/make.conf file.  it was buried in the middle of ali3nx's sample make.conf file, which i edited.  somehow i managed not to see it in the middle of that huge USE= statement.  needless to say, i'm glad i don't have to start over!

so can anyone tell me:  is the "nptl" fucntionality something that's supported in the P3 or is it part of the hyperthreading instruction set in the P4?

----------

## Bob P

 *maztaim wrote:*   

> I am not disagreeing that it's a time-saver.  The problem is that it becomes difficult to troubleshoot if you don't have experience with the build process.  Giving somebody an alternative to the one-liner doesn't hurt.  Granted it takes a little longer and requires more TLC, but it also helps the inexperienced become familiar with the build process.

 

although it may not appear intuitive, the only difference between the one-liner and typing everyting on separate command lines is the "&&" concactenation operator.  so if anyone is reading this but would prefer to have the one-liner paragraph parsed into something more digestable, just hit a <CR> every time that you see the "&&" and delete the "&&" from the command string, and you're all set to go.

the one-liner install operation is VERY similar to the install guide in the GIH (Gentoo Installation Handbook).  although it may not be obvious, if you open the two files in side by side windows and read the code, they pretty much follow one another.

----------

## Bob P

I'm doing my stage 1 installation using the "Standard" minimal installation disk (stable) and the gentoo mirrors.  the best that I can do with this method, as far as file systems go, is ReiserFS 3.3.  how much performance difference am I giving up by staying with the stable branch instead of going with Reiser 4?

----------

## ali3nx

 *Bob P wrote:*   

>  *JDHarris wrote:*   You put the USE="nptl" in your /etc/make.conf file.  If the USE variable is not in there, it's okay to add it. 
> 
> whew!  i'm 4 hours into the super-dooper bootstrap, and i'm glad to see that i do have "nptl" in my /etc/make.conf file.  it was buried in the middle of ali3nx's sample make.conf file, which i edited.  somehow i managed not to see it in the middle of that huge USE= statement.  needless to say, i'm glad i don't have to start over!
> 
> so can anyone tell me:  is the "nptl" fucntionality something that's supported in the P3 or is it part of the hyperthreading instruction set in the P4?

 

NPTL or Native Posix Threading Library is usable in any pc that i'm aware of or at least i've used NPTL in anything ranging from a p75 to a dual 248 opteron   :Cool:   A Pentium3 would certainly benifit. My previous smp Pentium3 LOVED nptl threading. Despite the fact that one could just go buy an athlon64 coppermine's with the thick core die react very well to NPTL. I'd not hesitate building another one if i had the opportunity. Native POSIX Thread Library is unfortunately also not included in most UNIX distributions and certainly not proprietory UNIX. Any linux system compiled with Native POSIX Thread Library could and most likely would slaughter UNIX based servers for scalability, agility and overall capacity. Sorry slowaris and *bsd you just got your pink slips in the mail   :Very Happy: 

----------

## ali3nx

 *Bob P wrote:*   

> I'm doing my stage 1 installation using the "Standard" minimal installation disk (stable) and the gentoo mirrors.  the best that I can do with this method, as far as file systems go, is ReiserFS 3.3.  how much performance difference am I giving up by staying with the stable branch instead of going with Reiser 4?

 

 Reiser4 does offer performance however the linux kernel developers are faced with the changes that Hans Reiser wants to make to the semantec layer of linux filesystems vs using the current state of affairs involving vfs. Everything is still in flux. I support the possibilities and funtionality that Reiser4 has to offer but it should be used with care. I started using Reiser4 at 2.6.1 on a dedicated gaming server and the performance numbers were astounding. 4 half life and one bf1942 and gameservers on one machine with /home mounted as reiser4 and the loads were amazing.  Slow disk i/o on hosting boxes can brink a server to it's knees in no time. I often hear admins of Redhat servers claiming they get nervous when user counts get to around 350 users on one server. Bollocks. I've had 8,000 users on one ircd on a gentoo linux server setup with the same procedures here and it never choked once. Here's some old logs i managed to find of our old 2.20 Celeron running Reiser4 from last march. Note that this server was also running NPTL  :Wink: 

```
fr0stb1te linux # uptime

02:26:49 up 2 days, 43 min, 2 users, load average: 0.00, 0.00, 0.00

fr0stb1te linux #

fr0stb1te linux # uname -a

Linux fr0stb1te 2.6.3-gentoo-r2 #1 Tue Mar 9 20:17:01 CST 2004 i686 Intel(R) Celeron(R) CPU 2.20GHz GenuineIntel GNU/Linux

fr0stb1te linux # ps aux |grep bf

bf1942 9542 0.0 0.2 3140 1096 ? S Mar10 1:32 ./ventrilo_srv -d

fr0stb1te linux # ps aux |grep hlds

unknown 19693 0.0 0.2 2100 1024 pts/0 S Mar11 0:00 /bin/sh ./hlds_run +maxplayers 12 -game cstrike +map de_dust +port 27015 -autoupdate +sys_ticrate 10000 +pingboost 3

unknown 4557 0.0 11.4 63124 55184 pts/0 S 00:56 0:03 ./hlds_i686 +maxplayers 12 -game cstrike +map de_dust +port 27015 -autoupdate +sys_ticrate 10000 +pingboost 3
```

----------

## ali3nx

 *MrNugget wrote:*   

>  *ali3nx wrote:*   
> 
> Mounting Proc and dev  into the Livecd
> 
> ----------------------------------------------
> ...

 

The dev mount into chroot example is in the official Gentoo Linux x86 handbook and considering that allot of gentoo's developers have either directly or indirectly contributed to this tutorial and some have advised me it is best to include it is here aswell.

<edit> there's some days that adding sleep would be most likely advisable before making comments.  :Embarassed:  </edit>

----------

## Deranger

I've been using Reiser4 about 1,5 month now. I have nearly one terabyte of space, Reiser4 all the way. Not a single problem or whatsoever  :Wink: 

Reiser4 obsoletes ReiserFS, and it should be the most stablest filesystem (and fastest too  :Wink: ) because all actions are atomic.

I've been thinking of getting 2x36 GB Raptors in a RAID-0 and Reiser4 as a filesystem  :Cool: 

----------

## Bob P

thanks again ali3nx for your advice on Reiser and threading.  I'm really looking forward to seeing how well i can tweak this Pentium 3!

i'm back at the PC to check on the progress of the "sooper dooper spectacular bootstrap-bugfixed oneliner magic", which took just a tad over 6 hours to complete.  it looks like i ran into a problem:

```
20:50:23 (45.58 KB/s) - '/usr/portage/distfiles/gettext-1.03.tar.gz' saved [4064/4064]

>>> md5 src_uri ;-) gettext-1.03.tar.gz

/usr/portage/eclass/perl-module.eclass: line 168: perl: command not found

/usr/portage/eclass/perl-module.eclass: line 171: perl: command not found

/usr/portage/eclass/perl-module.eclass: line 174: perl: command not found

/usr/portage/eclass/perl-module.eclass: line 177: perl: command not found

/usr/portage/eclass/perl-module.eclass: line 180: perl: command not found

/usr/portage/eclass/perl-module.eclass: line 183: perl: command not found

>>> Unpacking source...

>>> Unpacking gettext-1.03.tar.gz to /var/tmp/portage/Locale-gettext-1.03/work

>>> Source unpacked.

/usr/portage/eclass/perl-module.eclass: line 168: perl: command not found

/usr/portage/eclass/perl-module.eclass: line 171: perl: command not found

/usr/portage/eclass/perl-module.eclass: line 174: perl: command not found

/usr/portage/eclass/perl-module.eclass: line 177: perl: command not found

/usr/portage/eclass/perl-module.eclass: line 180: perl: command not found

/usr/portage/eclass/perl-module.eclass: line 183: perl: command not found

/usr/portage/eclass/perl-module.eclass: line 56: perl: command not found

make: *** No targets specified and no makefile found.  Stop.

!!! ERROR: dev-perl-molule_src_compile, Line 65, Exitcode 2

!!! Function perl-module_src_compile, Line 65, Exitcode 2

!!! compilation failed

!!! If you need support, post the topmost build error, NOT this status message
```

okay, i have to admit that i don't know that the topmost build error is -- otherwise i'd be posting it here.   :oops: 

looking back at how i followed the directions, everything went smoothly according to alien3x's instructions in the first post, with one minor exception:  setting the local timezone.

when i issue the "date" command, i receive the following output:

```

livecd portage # date

Tue Oct   5 02:24:02  Local time zone must be set--see zic manual page 2004

```

i thought it was interesting to note that in alien3x's example in the tutorial, the system clock was set to CDT.  i followed the instructions exactly, but since i am booting from a Live CD onto a freshly partitioned hard disk, i don't have a default timezone set.  i followed the alien3x example to the letter, and didn't perform the Timezone Setup routine as described in Section 7.a. of the Gentoo Installation Handbook:

```

Code Listing 1: Setting the timezone information

 

# ls /usr/share/zoneinfo

(Suppose you want to use GMT)

# ln -sf /usr/share/zoneinfo/GMT /etc/localtime

```

i have to admit, i don't know whether this is the source of the problem, but i do wonder whether this is what killed perl for me.

any ideas?

thanks again!

EDIT:  corrected a spelling error: "tompost" vs. "topmost"Last edited by Bob P on Sun Nov 07, 2004 5:11 am; edited 1 time in total

----------

## ali3nx

 *Bob P wrote:*   

> thanks again ali3nx for your advice on Reiser and threading.  I'm really looking forward to seeing how well i can tweak this Pentium 3!
> 
> i'm back at the PC to check on the progress of the "sooper dooper spectacular bootstrap-bugfixed oneliner magic", which took just a tad over 6 hours to complete.  it looks like i ran into a problem:
> 
> ```
> ...

 

It would appear you have found a dependancy bug in portage related to perl not compiling as a dependancy of emerge system. I'll bring this to vapier's attention. For now run the following command.

```
emerge libperl && emerge libperl && emerge system
```

----------

## syncops

dear all,

Having some probs with the sooper dooper spectacular bootstrap-bugfixed oneliner magic command.

in gettext-0.14.1.log:

checking for C compiler default output file name... configure: error: C compiler cannot create executables

configure:exit 1 in config.log for gettext-0.14.1

Make.conf settings:

CHOST="i686-pc-linux-gnu"

CFLAGS="-O3 -march=nocona -mtune=pentium4 -funroll-loops -fomit-frame-pointer -frerun-cse-after-loop -pipe -msse3 -mfpmath=sse"

USE="nptl"

Logs created in /var/log/portage:

1800-portage-2.0.51-r2.log

1801-portage-2.0.51-r2.log

1802-linux-headers-2.4.21-r1.log

1802-linux26-headers-2.6.8.1-r1.log

1803-linux26-headers-2.6.8.1-r1.log

1803-portage-2.0.51-r2.log

1804-portage-2.0.51-r2.log

1805-linux26-headers-2.6.8.1-r1.log

1806-linux26-headers-2.6.8.1-r1.log

1806-gnuconfig-20040214.log

1807-gnuconfig-20040214.log

1807-gettext-0.14.1.log

any ideas, anyone ?

<edit>

I would like to note i'm trying to create a <stable> production Apache/modSLL/PHP/Perl/Mysql server 

maybe i'm better off using a stage 2 pentium 4 stage ?

</edit>

----------

## ali3nx

 *syncops wrote:*   

> dear all,
> 
> Having some probs with the sooper dooper spectacular bootstrap-bugfixed oneliner magic command.
> 
> in gettext-0.14.1.log:
> ...

 

I would assume that your CFLAGS are the problem. remove -march=nocona. it's invalid. Tame them down a bit, remove mtune for all stage built gcc versions and last read my make.conf exaple. it has all the valid gcc examples you will require. You may wish to read the acovea gcc optimization chart aswell. It explains in great detail about implied optimizations. google for acovea. you'll find it.

----------

## Bob P

 *ali3nx wrote:*   

> It would appear you have found a dependancy bug in portage related to perl not compiling as a dependancy of emerge system. I'll bring this to vapier's attention. For now run the following command.
> 
> ```
> emerge libperl && emerge libperl && emerge system
> ```
> ...

 

ok.  i did that.  it looks like i ran into another set of fatal errors.  here's what's visible onscreen:

```
tar: shadow-4.0.5/etc/pam.d/Makefile.in: time stamp 2004-10-26 01:34:04 is 1799634 s in the future

tar: shadow-4.0.5/etc/pam.d/useradd: time stamp 2004-10-23 23:38:25 is 1619895 s in the future

tar: shadow-4.0.5/etc/pam.d/chage: time stamp 2004-10-23 23:38:07 is 1619877 s in the future

tar: shadow-4.0.5/etc/pam.d/chpasswd: time stamp 2004-10-23 23:38:10 is 1619880 s in the future

tar: shadow-4.0.5/etc/pam.d/groupadd: time stamp 2004-10-23 23:38:12 is 1619882 s in the future

tar: shadow-4.0.5/etc/pam.d/groupdel: time stamp 2004-10-23 23:38:14 is 1619884 s in the future

tar: shadow-4.0.5/etc/pam.d/groupmod: time stamp 2004-10-23 23:38:16 is 1619886 s in the future

tar: shadow-4.0.5/etc/pam.d/login: time stamp 2004-10-23 23:34:57 is 1619687 s in the future

tar: shadow-4.0.5/etc/pam.d/newsuers: time stamp 2004-10-23 23:38:20 is 1919890 s in the future

tar: shadow-4.0.5/etc/pam.d/usermod: time stamp 2004-10-23 23:38:27 is 1619897 s in the future

tar: shadow-4.0.5/etc/pam.d: time stamp 2004-10-26 21:57:17 is 1873027 s in the future

tar: shadow-4.0.5/etc: time stamp 2004-10-26 21:57:17 is 1873027 s in the future

 * Applying shadow-4.0.4.1-nonis.patch ...

 * Applying shadow-4.0.5-nls-manpages.patch ...

 * Applying shadow-4.0.5-login.defs.patch ...

 * Applying shadow-4.0.4.1-passwd-typo.patch ...

 * Applying shadow-4.0.5-skey.patch ...

 * Applying shadow-4.0.5-remove-else.patch ...

 * Applying shadow-4.0.5-hack-X-envvars.patch ...

 * Applying shadow-4.0.4.1-nonis.patch ...

 * Using GNU config files from /usr/share/libtool

 *  Updating config.sub

 *  Updating config.guess

 * Patching ${S}/ltmain.sh

 *   Applying portage-1.4.1.patch ...

 *   Applying max_cmd_len-1.5.0.patch ...

 * Applying uClibc/libtool patches ...

>>> Source unpacked.

./configure --prefix=/usr --host=i686-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --disable-desrpc --with-libcrypt --with-libcrack --enable-shared=no --enablestatic=yes --with-lipbam --without-libskey --without-selinux --enable-nls

configure: WARNING: If you wanted to set the --build type, don't use --host.

    If a cross compiler is detected then cross compile mode will be used.

checking for a BSD-compatible install... /bin/install -c

checking whether build environment is sane ... configure: error: newly created file is older than distributed files!

Check your system clock

!!! ERROR: sys-apps/shadow-4.0.5-r2 failed.

!!! Function econf, Line 449, Exitcode 1

!!! econf failed

!!! If you need support, post the topmost build error, NOT this status message.

```

as i type this message, the date on my PC reads:

Tue Oct 5 16:46:27 UTC 2004. 

i executed your commands at 03:30 this a.m.

EDIT:  Nevermind.  I just realized that I set my system clock to October instead of November.  Duh.   :Embarassed: Last edited by Bob P on Sat Nov 06, 2004 1:32 am; edited 1 time in total

----------

## Bob P

D'OH!!  It took me a long time to realize that I had mistakenly set the date to OCT 5 instead of Nov 5!

so now I'm trying this:  

```
emerge shadow && emerge shadow && emerge system
```

and i hope to be back into action shortly.    :Wink: 

assuming that this works, what's next?  do I just resume the one-liner instructions starting after "emerge system"?

----------

## slycordinator

 *ali3nx wrote:*   

> The dev mount into chroot example is in the official Gentoo Linux x86 handbook and considering that allot of gentoo's developers have either directly or indirectly contributed to this tutorial and some have advised me it is best to include it is here aswell.

 

It's not in the current official x86 handbook.

----------

## Deranger

 *Bob P wrote:*   

> D'OH!!  It took me a long time to realize that I had mistakenly set the date to OCT 5 instead of Nov 5!
> 
> so now I'm trying this:  
> 
> ```
> ...

 

Yep.

----------

## syncops

I've used you're make.conf as a starting point for mine, very nice comments. I have a new EMT64 P4 Xeon proc. In trying to find the optimal cflags I found these in the few posts about gentoo & EMT64.

Acovea was interesting read, found and removed some redundant flags but kept the extra funroll-loops, -msse3 & -mfpmath=sse flags. msse3 sounds better than msse2  :Smile: 

Creating the bootstrap now with the following CFLAGS:

-march=pentium4 -O3 pipe -funroll-loops -msse3 -mfpmath=sse

Thanks for putting up this great topic !

P.S. noticed a typo in http://www.ali3nx.info/make.conf

#CFLAGS="=march=pentium4 -O3 -pipe"

----------

## ali3nx

 *syncops wrote:*   

> I've used you're make.conf as a starting point for mine, very nice comments. I have a new EMT64 P4 Xeon proc. In trying to find the optimal cflags I found these in the few posts about gentoo & EMT64.
> 
> Acovea was interesting read, found and removed some redundant flags but kept the extra funroll-loops, -msse3 & -mfpmath=sse flags. msse3 sounds better than msse2 
> 
> Creating the bootstrap now with the following CFLAGS:
> ...

 

I recall that emt64's need to be installed very similar to an amd64. I would highly advise consulting the members in #gentoo-amd64 before proceeding any further. They have one guy that has one running allready. His nick is unsolo

----------

## Bob P

 *Oktane wrote:*   

>  *Bob P wrote:*   D'OH!!  It took me a long time to realize that I had mistakenly set the date to OCT 5 instead of Nov 5!
> 
> so now I'm trying this:  
> 
> ```
> ...

 

thanks.  that's what i had done, and i'm glad that i made the right assumption...   :Wink: 

----------

## spidna

ali3nx if you have a minute can you post the reiserf4 instructions, would like to try that on my new AMD+3000 machine. also i got a toshiba laptop i might need help, how can i contact you to help me with installation, actually install it for me, especially X windows part of it.  email me spidnaatgmaildotcom

----------

## Bob P

 *ali3nx wrote:*   

>  *Bob P wrote:*   i'm back at the PC to check on the progress of the "sooper dooper spectacular bootstrap-bugfixed oneliner magic", which took just a tad over 6 hours to complete.  it looks like i ran into a problem:
> 
> ```
> 20:50:23 (45.58 KB/s) - '/usr/portage/distfiles/gettext-1.03.tar.gz' saved [4064/4064]
> 
> ...

 

unfortunately, i resumed with these commands as recommended, but ran into fatal errors in building the system.  i am not sure whehter those occurred as a result of my own stupidity in setting the date to the wrong month, so i decided to start over with a clean slate.

it may sound superfluous, but i've tried doing the complete installation over again, parsing out the individual commands in the "one-liner" to see exactly where the problems are occurring.  the failure in compilation of the perl module is indeed occuring as a result of the command:  

```
scripts/bootstrap.sh
```

i have a question in regard to your recommendation to resume operations with:  

```
emerge libperl && emerge libperl && emerge system
```

the fatal error in the bootstrap script was caused by the failure to compile the perl module.  although "emerge libperl" will solve the problem related to the absense of perl, i'm unclear as to whether there may be any subsequent operations in the bootstrap script that are being left unperformed.

are there any other steps in the "scripts/bootstrap.sh" script that remain unperformed/incomplete as a result of the perl compilation fatal error?  that is to say, if compiling perl is the last step in bootstrapping, its simple enough to resume with the aforementioned commands.  but if other bootstrap operations were supposed follow perl compilation but remain unexecuted as a result of the fatal error, is it necessary to re-enter the bootstrap operation at its actual termination point, rather than resuming with the following step, building the system with "emerge system"?

the reason i ask is because i have already tried your recommendation to "emerge libperl && emerge libperl && emerge system", but this alternative method resulted in a later failure during "emerge system".  i am wondering if this has occurred as a result of the libperl fatal error bringing the "scripts/bootstrap.sh" operation to a premature halt.  recommendations?

----------

## Deranger

 *spidna wrote:*   

> ali3nx if you have a minute can you post the reiserf4 instructions, would like to try that on my new AMD+3000 machine. also i got a toshiba laptop i might need help, how can i contact you to help me with installation, actually install it for me, especially X windows part of it.  email me spidnaatgmaildotcom

 

Using Reiser4 is easy as walking. Just get Reiser4 LiveCD instead of official LiveCD. During installation, you can make Reiser4 partition by typing "mkfs.reiser4 <device here>".

Just remember, there's no support in main-kernel tree for Reiser4. You have to use some experimental patchsets like nitro- or mm-sources. I personally use nitro-sources, it's stable as rock and fast as ali3nx catching sight of and chaseing after his server  :Wink: Last edited by Deranger on Sun Nov 07, 2004 5:39 pm; edited 2 times in total

----------

## hielvc

Fast as a rock  :Question:   Err thats stable as rock and as fast as ali3nx catching sight of and chaseing after his server  :Laughing: 

----------

## Deranger

Haha  :Laughing:  I just put that in the same sentence because I'm too lazy to write any essays.

Edited  :Wink: 

----------

## ali3nx

 *slycordinator wrote:*   

>  *ali3nx wrote:*   The dev mount into chroot example is in the official Gentoo Linux x86 handbook and considering that allot of gentoo's developers have either directly or indirectly contributed to this tutorial and some have advised me it is best to include it is here aswell. 
> 
> It's not in the current official x86 handbook.

 

I'll rectify that one adding it as optional asap.

----------

## thecrazyperson_ws

Installing Gentoo using a Knoppix CD is also possible, so those of you who would prefer to have KDE up and running (as well as the games it comes with) to pass the time while bootstrapping, Knoppix 3.4 and higher include a 2.6 kernel on the CD.  I'm currently testing this method on my laptop and I'll post results pertaining to how well that works.  The only things that you'll have to do different:

At the knoppix boot screen, instead of just pushing enter, type "knoppix26" then push enter.

**After KDE is booted but before you do anything else***

Open a konsole and type these commands:

```
knoppix@ttyp0[knoppix]$ sudo passwd root

***set password***

knoppix@ttyp0[knoppix]$ su

root@ttyp0[knoppix]# usermod -d /root -m root

#This changes root's home directory to /root from /home/root

#Exit out of su and su back to root.

root@ttyp0[knoppix]# mkdir /mnt/gentoo

```

Pick up this guide from the partitioning steps, but when asked to mount /proc, issue this command instead:

```
root@ttyp0[gentoo]# mount -o bind /proc /mnt/gentoo/proc
```

As I said, having those games really makes the time go by a lot faster.  This is just a little hint I picked up on Gentoo's alternate installation methods site (http://www.gentoo.org/doc/en/altinstall.xml).

----------

## Deranger

If you prefer Gnome over KDE, use Gentoo RR4 LiveCD  :Wink:  It has Reiser4 support and other goodies.  :Cool: 

----------

## thecrazyperson_ws

You know, it's funny how many window managers there are out there.  Fluxbox, BlackBox (Also ported to Windows 2000/98/NT), IceWM, KDE, GNOME, OpenBox, WindowMaker, (the ugly) TWM, BlueBox, Enlightenment, XFCE, and XFWM just to name a few.  The knoppix CD has every one of those listed on the CD, selectable at boot time.  Now keep in mind that I'm only using knoppix because I *accidentally* broke my 2004.2 livecd   :Embarassed:  .  Since I'm on dialup, I don't have the time to re-download it, so a 2.6 booted knoppix seems to be doing the job just fine under the circumstances.  Any of those windowmanagers are selectable at boot by adding the option "desktop=<yourchosenwindowmanager>" on the boot screen.

----------

## thecrazyperson_ws

FSCK!  Knoppix 3.4 will fark up ncurses using these methods.  I'm gonna have to find my Gentoo 2004.1 livecd.  I guess this is what happens when I try to use Debian to build Gentoo.

----------

## Bob P

ali3nx, I have a question about your sample make.conf file.

i've asked for help on my bootstrapping problem on another thread, 

https://forums.gentoo.org/viewtopic.php?t=248229

and i'm getting lots of anecdotal suggestions that my USE statement is too long.  most people are suggesting trimming out about 95% of the USE statements, which I find confusing.

i just thought i'd ask -- in your typical installation, how many of those USE statements are YOU actually using?  i have the impression that you're using ALOT of them, otherwise your make.conf sample file wouldn't be so heavily populated with USE statements.  

i get the impression that i would be losing quite a bit if i eliminated 95% of the USE statements, but that's what everyone seems to be suggesting.  i just thought i'd ask your opinion on this, since you wrote the sample make.conf file.

any information you could offer would be greatly appreciated!

----------

## Deranger

This is only my opinion, but I've never understood why to use tons of USE-flags. I'm trying to keep my USE-flags minimal as possible, here's my:

```

USE="-* 3dnow X aalib alsa audiofile avi bitmap-fonts bzlib cdr divx4linux dvdr encode fortran f77 gif gtk2 imlib jpeg mad mikmod mmx mpeg ncurses nls nptl nptlonly oggvorbis opengl pam png python readline sdl slang sse ssl tcpd truetype xml xml2 xmms xv xvid zlib"

```

I'm not sure if fortran has replaced f77 flag, but it seems so.

----------

## Bob P

 *Oktane wrote:*   

> This is only my opinion, but I've never understood why to use tons of USE-flags. I'm trying to keep my USE-flags minimal as possible, here's my:
> 
> ```
> 
> USE="-* 3dnow X aalib alsa audiofile avi bitmap-fonts bzlib cdr divx4linux dvdr encode fortran f77 gif gtk2 imlib jpeg mad mikmod mmx mpeg ncurses nls nptl nptlonly oggvorbis opengl pam png python readline sdl slang sse ssl tcpd truetype xml xml2 xmms xv xvid zlib"
> ...

 

thanks for posting your code!

fwiw, manually emerging libperl does seem to have solved the dependency problem.  i did run into a small problem though, in following the recommendation to "emerge libperl && emerge libperl && emerge system" -- during emerge libperl i received an error message that prompted for a customized USE statement during the emerge libperl to fully support threading!  if I had stacked the commands and walked away from the PC, i never would have realized that this was necessary to achieve a fully optimized perl that supports threading!  the details are in that thread if anyone is interested.

fwiw, on cursory examination it appears that the presence of the "~x86" keyword and the liberal use of USE statements are not in any way related to the fatal error.  i think that this is good news.   :Wink: 

----------

## hielvc

This is probably off topic but how do you now if your useing udev  :Question:  I think I am 

```
mount

/dev/hda3 on / type ext3 (rw)

none on /proc type proc (rw)

none on /sys type sysfs (rw)

none on /dev type tmpfs (rw)

none on /dev/pts type devpts (rw)

/dev/hda5 on /usr type ext3 (rw)

/dev/hda6 on /home type ext3 (rw)

/dev/hda7 on /opt type ext3 (rw)

/dev/hda8 on /home/cifs type reiserfs (rw,notail)

none on /dev/shm type tmpfs (rw)
```

 but other than a bunch of nones being mounted, I still have a /dev. So how do you tell or know ?

----------

## RadionX

hello, i have need some help i plan on redoin my install this weekend, ok i wrote all this down now i need you to tell me if this is correct:

i plan on formating using mkreiserfs /dev/hda3 --format 3.6 (write or wrong)

my make.conf shall contain 

CFLAGS="-march=athlon-xp -pipe -frame-fomit-pointer -msse -mmmx -m3dnow" (these are the instructions my athlon xp 1800 supports should i also add  sse mmx 3dnow to my USE variable???)

CHOST="1686-pc-linux-gnu"

USE="-qt -kde gnome gtk NPTL sse mmx 3dnow" (is this correct for using NPTL and should i us the sse mmx and 3dnow because i put them in cflags??)

Lastly when it comes to bootstrap i should type:

emerge -C linux-headers && emerge --oneshot --nodeps linux26-headers && cd /usr/portage &&

scripts/bootstrap.sh (is this correct?)

lastly i have a question what should i emerge for rieserfs progs, should it be emerge reiser3.6progs or something...? thank you

----------

## Bob P

 *RadionX wrote:*   

> 
> 
> CHOST="1686-pc-linux-gnu"

 that looks like it could be a typo, with a "1" in place of the "i".

i used "emerge reiserfs progs" as suggested and formatted  my drives using 3.6.  you should not have any problem there.

----------

## Deranger

 *RadionX wrote:*   

> hello, i have need some help i plan on redoin my install this weekend, ok i wrote all this down now i need you to tell me if this is correct:
> 
> i plan on formating using mkreiserfs /dev/hda3 --format 3.6 (write or wrong)
> 
> my make.conf shall contain 
> ...

 

You have small typos in it, but anyway, I would suggest these flags:

```

CFLAGS="-O2 -march=athlon-xp -fomit-frame-pointer -ftracer -fprefetch-loop-arrays -pipe"

CXXFLAGS="${CFLAGS} -fvisibility-inlines-hidden"

```

Those are well tested and safe flags for GCC 3.4, posted by GCC-porting developer (robmoss).

I am using those flags and works very well (Athlon XP 2600+).

```

CHOST="i686-pc-linux-gnu"

```

It's now correct. 

```

mkreiserfs /dev/hda3 --format 3.6

```

Format partition to use ReiserFS (3.6), it's ok.

```

emerge -C linux-headers && emerge --oneshot --nodeps linux26-headers && cd /usr/portage && scripts/bootstrap.sh

```

I've always used this, not the one from the guide, works very well.

reiserfsprogs is what you need, reiser4progs are for Reiser4.

Hope this helps  :Razz: 

EDIT: Regarding USE-flags, all flags are case-sensitive and should be typed in lowercase (nptl not NPTL). As far as I know, sse, mmx and 3dnow are now USE-flags, not compiler-flags (so putting them under USE is ok).

----------

## arkaine

```
rc-update add ntp-client default && ntpdate -Q -b pool.ntp.org
```

this command doesn't quite work the way it's supposed to. It always ends up setting the hardware clock off by like 5 hours (booting off a knoppix cd after that command shows a messed up time), and the -Q option doesn't exist. Maybe you could explain what you're trying get it to do? Or...maybe help me out with what I'm doing wrong

----------

## thecrazyperson_ws

I need help.  I actually ran into a legitimate problem.  I'm using a Gentoo 2004.2 livecd and i ran into this while emerging binutils:

```

* Applying various patches (bugfixes/updates) ...

*   01_all_binutils-2.15.91.0.1-no_rel_ro.patch.bz2 ...

* Failed Patch: 01_all_binutils-2.15.91.0.1-no_rel_ro.patch.bz2!

```

it fails in Function epatch, Line 402, Exitcode 0.  If anybody could help, this is halting my bootstrap and I'm booted into the 2.6.7-gentoo-r11 kernel.

EDIT:  Nevermind.  "emerge sync" fixed the problem.

----------

## dreambox

Waw guys, i just bootstrap my gentoo with ~x86, optimized CFLAGS, CXXFLAGS and LDFLAGS. Thanks ali3nx, snooper and mvila, and all contributors...

 :Laughing: 

----------

## jmusits

 *arkaine wrote:*   

> 
> 
> ```
> rc-update add ntp-client default && ntpdate -Q -b pool.ntp.org
> ```
> ...

 

ntp sets your clock to GMT, you will need to set your timezone for the time to show up correctly

```
# rm /etc/localtime

# ln -sf /usr/share/zoneinfo/(your time zone here) /etc/localtime
```

Jason

----------

## thecrazyperson_ws

I jumped the gun a bit.  I don't know which $CC it's using, so ... deleted post.

----------

## arkaine

dumb post, deletedLast edited by arkaine on Fri Nov 12, 2004 7:48 am; edited 1 time in total

----------

## slycordinator

 *arkaine wrote:*   

> I'll try that jmusits, though I do believe I had already done that...Also is it just me or does xorg HATE USE="nptl" ? I've used the NPTL guide by snooper (I believe that's his name) and this one and both times it just seems stuck on the unpacking the  5 or 6 source files.

 

nptl should not affect anything related to unpacking files; nptl is only related to thread support.  So how did you conclude that the problem was the USE flag?

----------

## Bob P

 *ali3nx wrote:*   

> To create file systems:
> 
> ```
> mkreiserfs /dev/hda1 --format 3.6
> 
> ...

 

ali3nx, i want to ask you about using reiser fs on /dev/hda1.  i've done this Stage 1 install following your directions on two machines.  both of them eventually croaked when the /boot partition achieved 100% utilization of space, reportedly because of the journal file.

i created the /boot partition on both of my machines using Reiser FS 3.6 as instructed here.  i made both partitions +32M in size as recommended in the Gentoo Install Handbook.  

in short order, both of these machines were no longer able to do much of anything useful because all of the free space on the /boot partition became used up (invisibly, i might add) by the reiser journals.

so i have to admit, i am a bit lost in regard to why this problem is coming up.  several people have advised me on other threads that  Reiser FS should not be used on small partitions because the journaling system will eat up the partition's free space.  they have recommended ext2fs for the /boot drive instead.

so i'm wondering how you're able to keep your systems running with Reiser FS 3.6 on the boot partitions.  are you doing something different, perhaps making the size of the partitions bigger?  or am i missing something?

----------

## Deranger

32 MB for a /boot is way too small, especially for journalling filesystem. You should create over 100 MB /boot just like ali3nx said in the tutorial, I have myself 128 MB /boot, using ext-3.

 *ali3nx wrote:*   

> 
> 
> I highly recommend using +100M or larger boot partitions for a 2.6 kernel install. 2.6 kernels use allot more space than 2.4 and hey.. why redo it later. 
> 
> 

 

----------

## Bob P

D'Oh!  Thanks!

----------

## monkey89

 *Oktane wrote:*   

> 32 MB for a /boot is way too small, especially for journalling filesystem. You should create over 100 MB /boot just like ali3nx said in the tutorial, I have myself 128 MB /boot, using ext-3.
> 
>  *ali3nx wrote:*   
> 
> I highly recommend using +100M or larger boot partitions for a 2.6 kernel install. 2.6 kernels use allot more space than 2.4 and hey.. why redo it later. 
> ...

 

You could turn on every feature and probably still be under 10MB from what I see.  My kernels are 4 MB each with enough features to run my system well, and I can't imagine you have so much hardware that you'd manage to make a kernel bigger than 15 MB at most.

A journaled filesystem is overkill for a /boot partition.  The handbook recommends ext2 for a reason - it doesn't take up nearly as much space on the drive.  32 MB is and always has been fine for me, and you should have ample room for multiple kernels should the need come up.

----------

## Bob P

the deceptive part of running reiserfs is that you don't see the size of its journals growing to consume space on the drive.  this happens transparently to the user.

in my case, 10% of my boot partition was used by kernels and such, and my queries into how much space on the drive my kernels and such were occupying resulted in very low numbers, along the lines of 10% of the disk space.  meanwhile reiser was invisibly attempting to use 100% of the drive for its journals.  because 10% + 100% = 110%, it creates a problem.

----------

## ephilli2

I'm about to start a new install on a Dell 600m.  I want to use Reiser4; how do the instructions change?  Is there a certain live cd I should use? lxnay?  The guide doesn't seem as scary as the first time I read it, good job.

----------

## slycordinator

 *ephilli2 wrote:*   

> I'm about to start a new install on a Dell 600m.  I want to use Reiser4; how do the instructions change?  Is there a certain live cd I should use? lxnay?  The guide doesn't seem as scary as the first time I read it, good job.

 

The Ixnay livecd works for reiser4; I installed with it using this guide along with another similar guide.

If the ONLY thing you're changing is using reiser4 here's what you'd have to modify:

1) When creating the new file system, simply issue the command "mkfs.reiser4"; mkreiserfs is for the older versions not reiser4.

2) Obviously emerge a kernel that supports reiser4 and include reiser4 support.

----------

## UncleAelfrich

Ali, I used your method here to install a system on my Athlon 1300 machine. It worked well. Thanks a lot. I had no real problems UNTIL I had to configure it for static IPs. It might be helpful if you added a note in your tutorial about the different steps one would take in configuring for static IP. Again, thanks for your help.

John Chapman

Los Angeles, CA

----------

## Deranger

 *monkey89 wrote:*   

>  *Oktane wrote:*   32 MB for a /boot is way too small, especially for journalling filesystem. You should create over 100 MB /boot just like ali3nx said in the tutorial, I have myself 128 MB /boot, using ext-3.
> 
>  *ali3nx wrote:*   
> 
> I highly recommend using +100M or larger boot partitions for a 2.6 kernel install. 2.6 kernels use allot more space than 2.4 and hey.. why redo it later. 
> ...

 

That's true, my kernels are under 1.5 MB  :Wink:  32 MB is enough for non-journalling filesystems. Handbook also recommends ext-3 for root, for a reason?  :Laughing:  It's the crappiest filesystem (well, ext-2 is even more worse) for a root.

----------

## ali3nx

my reasoning for recommending 100MB boot partitins are

1) remote servers are something you do not want to re-engineer

2) your kernels are very valuble. making room for grub + 5+ kernel

    updates gives you both redundancy from the journal and security

    by lowering the frequency required to delete stale kernel images that

    occupy space. If you do have a problem with a corrupted boot

    filesystem space then what are you to do? loose your kernels?

3) reduces nessesity required of administration to tend to your filesystems

    freeing time for other tasks. Filesystem maintainance can be very time

    consuming across an enterprise.

Good planning will allways reward you in the long run. Despite the extra 10 megs of your priceless 200gb hard disk the journal will take to add redundancy to your systems. It is up to you.. but who will be watching the game on saturday with no redundacy planning  :Wink: 

-:edit:- my kernels are rarely ever more than 1.6 megs. but when a boot filesystem restoration is required from a tarball due to the unlikely chance that journalled reiserfs ever does become corrupt the extra 50 megs that isn't in use can become an asset in a hurry. Plan for crunch time and you wont find yourself in the board room with donald pointing the finger at you   :Laughing: 

----------

## Bob P

ali3nx, thanks for that well thought out post that clearly shows how amateurs like me can learn alot of useful techniques from IT professionals like you.   :Wink: 

i just happen to have fallen into a n00bie knowledge gap where i didn't know enough to plan ahead for the need to: 1) keep extra kernels and to provide the space to accomodate them, 2) account for space taken up by the Reiser journals, and 3) compile or modularize ext2fs support into the kernels in case i needed to fall back on it because of partition size restrictions.

in my case, i'm spending saturday working on the PC instead of watching the game.   :Embarassed: 

thanks again for starting this great instructional thread.

----------

## Bob P

 *UncleAelfrich wrote:*   

> Ali, I used your method here to install a system on my Athlon 1300 machine. It worked well.

 

John, when you did your bootstrapping, did you encounter the problem where perl did not compile as a dependency of emerge system?  (see page 7 of this thread).

that was a definite show-stopper for me.  i logged a bug report into bugzilla about it, but it doesn't seem to have been addressed.  i'm wondering if the issue has been resolved even though there has been no update to bugzilla.

----------

## UncleAelfrich

nope ... had no problems with that one ... although I did decide to recompile and configure my mouse into the kernel

I would appreciate any help on configuring the boot process to load my static IPs and the gateway information

----------

## ali3nx

since baselayout seems to have defaulted to a blank /etc/conf.d/net and a full example at /etc/conf.d/net.example you can merely copy the example to the usable file from within chroot.

```
cp /etc/conf.d/net.example /etc/conf.d/net
```

----------

## UncleAelfrich

Thanks, I had gotten that ... but when I put my gateway IP in 

routes_eth0=( "default gw xxx.xxx.xxx.xxx" )

I get two red !! when the computer boots up. I assume that means that the boot process had some problem loading the .net file in terms of the gateway address. (The eth0 address works fine and I am able to ping the local network as well as the internet.)

----------

## Bob P

I'm in the process of doing another Stage 1/NPTL install, and I thought I'd provide feedback on how its going with the new 2004.3 Stage 1 tarball, as this may help ali3nx keep his HOW-TO up to date:

1. when execusing the "emerge -C linux-headers" command, i received an error message stating that no linux headers were present to be unmerged.  maybe this step isn't necesary when using the new 2004.3 tarball.

2.  with the new 2004.3 Stage 1 tarball, the bootstrapping procedure (scripts/bootstrap.sh) ran successfully without a hitch.  (on a P3-800 it took 10 hours.) It seems that the problems that I had run into with the 2004.2 tarball (other apps being dependent on unmerged perl) have been appropriately addressed in the tarball.

3.  there seem to be some unresolved portage issues. during the "emerge system" step, I am running into more dependency on perl issues.  my emerge system failed after only a few of the 72 apps to be emerged had been completed.  at this point i'm doing an "emerge libperl && emerge libperl" before I return to "emerge system".  we'll see how that works out...

----------

## FastTurtle

I'm in the proccess of following a combination of this guide, the udev guide and doing a stage1 with the new 04.3 live cd minimal on a Celeron 2.4 laptop. Stage1 is already completed and things look to be faster already.

Thank god for the -fetchonly flag for emerge. I don't know what's been wrong with the internet the last week but things have been slow (10-30K/s) instead of my usual (70-300k/s).  Hope to begin stage2 sometime tonight.

Note on use flags:

One thing I learned fairly early with 1.4_rc4 was to keep use flags to the absolute minimum during bootstrap. The only things I include are cpu specific in order to reduce dependency issues. Not fun to have X trying to build when bootstraping a system.

ali3nx: 

Good points about planning for fs failure/corruption but as most laptops have pretty small drives, I'm sticking with ext2 for boot - 20 megs is plenty while the remaining partitions are ext3 with fairly large journals. Once I begin rebuilding the desktop, I may go ahead and use reiserfs on it for optimum speed.

Bob P:

It appears that the 04.3 minimal install cd has finally removed linux-threads. Check the size of the ISO, about 1 meg less then the 04.2 minimal.

Hope it means the devs are finally getting somewheres on cascading.profiles.

----------

## vangelis

I am not sure I will be able to take it for too much more...

I am trying to put together a firewall/router/VPN box. I am using a 400MHz K6-2 system with 256MB RAM.

Anyway I started the 2004.3 stage1, followed the instructions precicely, (I had the same issue with the linux-headers not being there any more, but I just continued...) and after more than 24 hours... bootstrap finished.

Despite the fact that I kept seeing "nptl" and "posix" everywhere during compilation, when I entered /lib/libc.so.6 this is what I get (I have repeated the bootstrap process from scratch twice!!):

```
GNU C Library 20041102 release version 2.3.4, by Roland McGrath et al.

Copyright (C) 2004 Free Software Foundation, Inc.

This is free software; see the source for copying conditions.

There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A

PARTICULAR PURPOSE.

Compiled by GNU CC version 3.4.3  (Gentoo Linux 3.4.3, ssp-3.4.3-0, pie-8.7.6.6).

Compiled on a Linux 2.6.8 system on 2004-11-15.

Available extensions:

        GNU libio by Per Bothner

        crypt add-on version 2.1 by Michael Glad and others

        linuxthreads-0.10 by Xavier Leroy

        The C stubs add-on version 2.1.2.

        GNU Libidn by Simon Josefsson

        BIND-8.2.3-T5B

        libthread_db work sponsored by Alpha Processor Inc

        NIS(YP)/NIS+ NSS modules 0.19 by Thorsten Kukuk

Thread-local storage support included.

For bug reporting instructions, please see:

<http://www.gnu.org/software/libc/bugs.html>
```

Here is my make.conf:

```
CFLAGS="-O2 -march=k6-2 -fomit-frame-pointer -pipe -mmmx -m3dnow"

CHOST="i586-pc-linux-gnu"

CXXFLAGS="${CFLAGS}"

GENTOO_MIRRORS="http://gentoo.chem.wisc.edu/gentoo/ http://gentoo.mirrors.pair.com/ "

USE="nptl objc f77 fortran erandom pic"

ACCEPT_KEYWORDS="~x86"

```

The question now is: Do I have the posix threads ready to go, or something went wrong? I do not want to embark on the emerge system before I make sure that I have the posix enabled tools (god knows how many days that will take...) In any event I do have gcc-3.4.3 as the gcc-config -l shows:

```
# gcc-config -l

[1] i386-pc-linux-gnu-3.3.4

[2] i586-pc-linux-gnu-3.4.3

[3] i586-pc-linux-gnu-3.4.3-hardened *

[4] i586-pc-linux-gnu-3.4.3-hardenednossp

```

By the way, while I was at it I switched to the hardened version since I might need it for the security features of the firewall.

Any ideas?

Thanks

vangelis

----------

## Bob P

 *vangelis wrote:*   

> Anyway I started the 2004.3 stage1, followed the instructions precicely, (I had the same issue with the linux-headers not being there any more, but I just continued...) and after more than 24 hours... bootstrap finished.

 

i do not think that "issues" with the execution of the command "emerge -C linux-headers" are anything to worry about.  afaik that command is used to remove 2.4 headers from the bootstrap.  if you read ali3nx's original post on this thread, the bootstrap scripts have changed quite a bit in the past month.  i am of the impression that the 2004.3 installation procedure no longer requires that command, and that it can be deleted from ali3nx's instructions.  this is probably just a case of the installation instructions in this thread not yet being fully updated to reflect all of the changes brought on by 2004.3.  remember, its only been out for a few days now, and we've just pointed this "issue" out.

Ali3nx:  for reference, here's the typical screen output following the "emerge -C linux-headers" command as-issued in your one-liner:

```
livecd portage # emerge -C linux-headers

--- Couldn't find linux-headers to unmerge.

>>> Unmerge:  No packages selected for removal.
```

----------

## Bob P

 *vangelis wrote:*   

> Despite the fact that I kept seeing "nptl" and "posix" everywhere during compilation, when I entered /lib/libc.so.6 this is what I get (I have repeated the bootstrap process from scratch twice!!):
> 
> ```
> GNU C Library 20041102 release version 2.3.4, by Roland McGrath et al.
> 
> ...

 

FWIW, I see the exact same information when i issue that command on my PC.  my question to you is, are you bothered by that?  it says that linuxthreads-0.10 is installed, so i'm not sure that i understand your conderns.

 *vangelis wrote:*   

> The question now is: Do I have the posix threads ready to go, or something went wrong? I do not want to embark on the emerge system before I make sure that I have the posix enabled tools (god knows how many days that will take...) 

 

Don't worry too much about how much time "emerge system" will take.  The bootstrap is by far the most time consuming part of the install.  For reference, I'm listing some of the elapsed times that were requried for some of the major operations during my last install on a P3-800.  You shoud be able to extrapolate somewhat to your processor, based on MHz:

```
hr:min system commands

----- ------------------------------

10:15 scripts/bootstrap.sh

00:30 emerge system # 72 files to merge, crapped out with perl dependency at gettext-1.03

00:06 emerge libperl && emerge libperl

02:20 emerge system # 54 packages left
```

----------

## vangelis

I am sorry if I misled you Bob P. I also think that the missing linux-headers is not a significant problem. I just mentioned it as a side issue.

My main question is about the posix threads. Given the output I am getting, do I have them or not?I am not really bothered, but I am going through all this trouble to get them in my system (for all the advantages that they are claimed to have), so when I don't see it there I feel deceived...

Doing a little more research on the issue, I just realised that they can co-exist with the linuxthreads, if you don't specify "nptlonly" in the USE statement.

The new question is then, will the system always choose to use posix threads over the linuxthreads when possible?

If not, and you then force the posix threads by including nptlonly, will you break something in the system down the road?

Thank you all

vangelis

----------

## Burnce

Hi,

I attempted to install gentoo 2004.3 witl gcc 3.4.3 and nptl today.

In the howto at the beginning of this forum it says to boot using the smp kernel. There is no such option on the x86 minimal liveCD.

I tried to proceed anyway, but bootstrap.sh failed. Do I need to install gcc3.3.x and then upgrade? I was trying to go directly for gcc 3.4.3. (maybe I was just naive but I edited /etc/portage/packages.keywords and tried to run bootstrap.sh from there). 

Thanks for any help,

Burnce

----------

## Bob P

you're right -- SMP is not a boot option on the 2004.3 live CD.  you can just press the <CR> which is the equivalent of typing "gentoo" at the prompt.

if you follow the directions here (don't go editing anything that isn't in the instructions!) your bootstrap should go fine.  but everyone does seem to be running into the gettext dependency on perl issue during emerge system.  this may well be an error in the ebuild of gettext which fails to tell portage that it is dependent on perl.

----------

## spidna

i was just wandering if ali3nx could post the link to emerge /etc/conf.d/net from the installation steps following his installation steps.

----------

## TheHermit

Silly me forgot to add ACCEPT_KEYWORDS to ~x86 (You have a kind of misleading excerpt from make.conf in the use flag section). Can I leave the system with the stable packages, which I rather would? I don't really care about GCC 3.4. One thing I have noticed is /etc/conf.d/rc does not have a RC_DEVICES option. Is that something I can just add?

----------

## Deranger

 *TheHermit wrote:*   

> Silly me forgot to add ACCEPT_KEYWORDS to ~x86 (You have a kind of misleading excerpt from make.conf in the use flag section). Can I leave the system with the stable packages, which I rather would? I don't really care about GCC 3.4. One thing I have noticed is /etc/conf.d/rc does not have a RC_DEVICES option. Is that something I can just add?

 

Sure you can keep using x86.

I think RC_DEVICES came with ~x86 baselayout, so you don't have it. There's an alternative option for it.

----------

## busfahrer

I yesterday installed my system with a method that is very similar to this guide (I didn't know about this guide then). It's an ~amd64 system.

In the guide it says to unmerge the 24 headers first and then emerge the 26 headers. I didn't do this at all. However, when trying to "emerge linux-headers" (i.e. 2.4 ones) it says that they are blocked by the 2.6 headers.

So, am I right with guessing that the step I mentioned above isn't necessary anymore?

Greetings, Chris

----------

## Deranger

You need to unmerge 2.4 headers before installing 2.6. In this tutorial, you need to use 2.6 headers and 2.6 kernel (SMP from official LiveCD) or it will break toolchain.

I don't know what tutorial you did use, but NPTL bootstraps fails with 2.4 headers.

----------

## busfahrer

 *Oktane wrote:*   

> You need to unmerge 2.4 headers before installing 2.6. In this tutorial, you need to use 2.6 headers and 2.6 kernel (SMP from official LiveCD) or it will break toolchain.

 

Do you mean "subtle" breakage or serious one? Because my system is up and running (X11 etc) and I haven't noticed anything. Is it possible that on the new livecd (or generally with recent installs), 26-headers are the default? Because, as I mentioned, I seem to have only 26-headers installed (without changing anything myself).

Greetings, Chris

----------

## Deranger

 *busfahrer wrote:*   

>  *Oktane wrote:*   You need to unmerge 2.4 headers before installing 2.6. In this tutorial, you need to use 2.6 headers and 2.6 kernel (SMP from official LiveCD) or it will break toolchain. 
> 
> Do you mean "subtle" breakage or serious one? Because my system is up and running (X11 etc) and I haven't noticed anything. Is it possible that on the new livecd (or generally with recent installs), 26-headers are the default? Because, as I mentioned, I seem to have only 26-headers installed (without changing anything myself).
> 
> Greetings, Chris

 

With 2.4 headers NPTL bootstrap doesn't even finish, so that kind of breakage  :Wink: 

I don't know about new LiveCD but it's okay if you have only 2.6 headers installed and bootstrap went fine  :Wink: 

Did you use USE="nptl"?Last edited by Deranger on Wed Nov 17, 2004 10:13 pm; edited 1 time in total

----------

## busfahrer

 *Oktane wrote:*   

> With 2.4 headers NPTL bootstrap doesn't even finish, so that kind of breakage 
> 
> I don't know about new LiveCD but it's okay if you have only 2.6 headers installed and bootstrap went fine 
> 
> Did you use USE="nptl"?

 

Yup, i put that in make.conf before bootstrapping. I'm fine, then?  :Smile: 

----------

## Deranger

Yeah, you're fine  :Wink:  If you really didn't unmerge linux-headers and emerge linux26-headers, it seems that it did that automatically (or they are default on 2004.3)  :Shocked: 

----------

## busfahrer

 *Oktane wrote:*   

> Yeah, you're fine  If you really didn't unmerge linux-headers and emerge linux26-headers, it seems that it did that automatically. 

 

Something just popped in my mind that might explain it. Before 2004.2, the default kernel was a 2.4 one AFAIR and with 2004.3, "gentoo" and "gentoo-smp" have been replaced by a single, SMP-enabled 2.6 kernel for the boot-cd.

----------

## Deranger

You're right, I just check 2004.3's ChangeLog and it seems that 2.6 is default kernel now.

----------

## Bob P

 *busfahrer wrote:*   

> I yesterday installed my system with a method that is very similar to this guide (I didn't know about this guide then). It's an ~amd64 system.
> 
> In the guide it says to unmerge the 24 headers first and then emerge the 26 headers. I didn't do this at all. However, when trying to "emerge linux-headers" (i.e. 2.4 ones) it says that they are blocked by the 2.6 headers.
> 
> So, am I right with guessing that the step I mentioned above isn't necessary anymore?

 

i get the impression that if you're installing from 2004.2 or an earlier install where the tarball included the 2.4 headers, you need to unmerge them before emerging the 2.6 headers.  otoh, if you are installing from the 2004.3 Stage 1 tarball, the 2.4 headers aren't there, and you can skip the unmerging step.  if there's any confusion, just perform the unmerge step, and you'll be notified that there are no headers to unmerge if they aren't there.  one of my recent posts covered this in more detail.

----------

## Soul_rebel

I will try this lately today. I'm new to gentoo and this is my first installation, so i have a few doubts:

i don't need to unmerge the 2.4 headers, so i don't need to emerge the 2.6, because they are used by default and i don't need any special keyword at all...Just use="nptl" ?

A bit OT but i need to know:

Is there a way to compile from stage 1 with the new gcc 3.4?

bye

----------

## Deranger

 *Soul_rebel wrote:*   

> I will try this lately today. I'm new to gentoo and this is my first installation, so i have a few doubts:
> 
> i don't need to unmerge the 2.4 headers, so i don't need to emerge the 2.6, because they are used by default and i don't need any special keyword at all...Just use="nptl" ?
> 
> A bit OT but i need to know:
> ...

 

Check before proceeding, which headers you have installed by typing "emerge info" or if it doesn't show it, use "emerge -s linux-headers" and "emerge -s linux26-headers" and see which ones is installed. I guess it'll have 2.6 headers by default, because 2.6 is now default kernel.

ACCEPT_KEYWORDS="~x86" is also "part" of this guide, if you have ACCEPT_KEYWORDS="~x86" in /etc/make.conf, you'll get automatically latest software. It's called "unstable tree" but it's not that unstable, it's not well tested.

If you want only GCC 3.4 and all another software from "stable tree", run this command before bootstrapping:

```

echo "sys-devel/gcc ~x86" >> /etc/portage/package.keywords

```

You might need to create /etc/portage directory if it doesn't exist.Last edited by Deranger on Thu Nov 18, 2004 8:18 am; edited 1 time in total

----------

## Soul_rebel

whoa what a quick reply!

thanks!

So it's quite easy to get the latest stuff with gentoo... I can't wait to have it installed  :Very Happy: 

----------

## Deranger

Yep, just add ACCEPT_KEYWORDS="~x86" in your /etc/make.conf

Note: If you are running another arch than x86, you have to use replace "~x86" with your own architechture, in example if you're running AMD64, it would be "~amd64"

----------

## gerry

Perhaps you should use ntponly as USE flag to prevent Gentoo from compiling glibc twice (once with NPTL and once with linuxthreads) as it told me while setting up my laptop.

----------

## Deranger

 *gerry wrote:*   

> Perhaps you should use ntponly as USE flag to prevent Gentoo from compiling glibc twice (once with NPTL and once with linuxthreads) as it told me while setting up my laptop.

 

Read my post from page 3 and ali3nx's reply...

----------

## vangelis

 *Quote:*   

> Perhaps you should use ntponly as USE flag to prevent Gentoo from compiling glibc twice (once with NPTL and once with linuxthreads) as it told me while setting up my laptop.

 

I thought about that, but again, is there a chance to break the system?(because some processes cannot use posix threads, so they need the linuxthreads?).

Why does the system decide to keep both versions of glibc around, if you have already indicated that you want the posix threads by putting nptl in the USE command?

Can anyone elaborate on this issue?

Thanks

Vangelis

----------

## gerry

 *Oktane wrote:*   

>  *gerry wrote:*   Perhaps you should use ntponly as USE flag to prevent Gentoo from compiling glibc twice (once with NPTL and once with linuxthreads) as it told me while setting up my laptop. 
> 
> Read my post from page 3 and ali3nx's reply...

 

I almost expected something like that.

Now if I only had a faster machine, I would give it a try and test a lot.

----------

## Deranger

 *gerry wrote:*   

>  *Oktane wrote:*    *gerry wrote:*   Perhaps you should use ntponly as USE flag to prevent Gentoo from compiling glibc twice (once with NPTL and once with linuxthreads) as it told me while setting up my laptop. 
> 
> Read my post from page 3 and ali3nx's reply... 
> 
> I almost expected something like that.
> ...

 

I've been using pure NPTL system since that my post. No problems at all, so I think it's pretty safe to use.

----------

## linux_on_the_brain

I've been following this thread since mid-october, and since then installed my new laptop using the directions here. And all seems well. I also used a knoppix cd to boot from. But I did have troubles with system lock-ups and failures during bootstrap. I finally booted knoppix using text only mode.

I also have read comments about using this process on amd64. I did that too.

I have an AMD64-fx51 socket940. I followed this procedure and it worked. I'm using reiserfs on both. I am in the process of building a new workstation with an amd64-fx53 socket 939, and will use these procedures again for that machine. Any word on reiser4 working with amd64 platform. THis machine is going to have a raid 5 array more than likely.

When I get my new hd's for my laptop, I will be setting up raid and performing this install again. I've read that reiser4 doesnt play with HT. Can anybody confirm this? Otherwise I will probably go xfs.

----------

## linux_on_the_brain

 *Quote:*   

> Soul_rebel wrote:
> 
> I will try this lately today. I'm new to gentoo and this is my first installation, so i have a few doubts:
> 
> i don't need to unmerge the 2.4 headers, so i don't need to emerge the 2.6, because they are used by default and i don't need any special keyword at all...Just use="nptl" ?
> ...

 

```
 emerge -s linux-headers

Searching...

[ Results for search key : linux-headers ]

[ Applications found : 1 ]

*  sys-kernel/linux-headers

      Latest version available: 2.4.21-r1

      Latest version installed: [ Not Installed ]

      Size of downloaded files: 27,864 kB

      Homepage:    http://www.kernel.org/ http://www.gentoo.org/

      Description: Linux 2.4.21 headers from kernel.org

      License:     GPL-2

localhost profiles # emerge -s linux26-headers

Searching...

[ Results for search key : linux26-headers ]

[ Applications found : 1 ]

*  sys-kernel/linux26-headers

      Latest version available: 2.6.8.1

      Latest version installed: [ Not Installed ]

      Size of downloaded files: 34,793 kB

      Homepage:    http://www.kernel.org/ http://www.gentoo.org/

      Description: Linux 2.6.8.1 headers from kernel.org

      License:     GPL-2

localhost profiles #

```

Not sure why this is like that, but I thought I would post it. I am not booted from a cd, I suppose that could have something to do with it. But thought I would post it anyways.

----------

## nick_ellsworth

I'm having problems getting my network up from the 2004.3 LiveCD and have posted elsewhere, but since I'm following this guide (or trying to!) I thought maybe someone here could lend me a hand.

Here's the post.

Thanks in advance!

----------

## linux_on_the_brain

nick_ellsworth, I posted a little something about your situation on your other thread.

----------

## krull

I built my new Gentoo system using the Italian LiveCD(tm) with reiser4 support, nitro-sources and this HOWTO... great stuff!!  :Very Happy: 

```
krullnet krull # uname -a

Linux krullnet 2.6.9-nitro4 #1 Thu Nov 18 18:21:06 EET 2004 i686 Intel(R) Pentium(R) 4 CPU 2.40GHz GenuineIntel GNU/Linux

```

Thanks for everything... Keep up the great work...  :Cool: 

- KrulL

----------

## gza

Warning:  Extreme Linux Noobie question

I was looking at the instructions and comparing them to the guide in the handbook.

In the guide, after the kernel is created and compiled it is copied over into /boot.  The same for the System.map and optionally, the .config.

This step is ommited in this ntpl guide.  Is that done on purpose?

Another area where there is a difference:

(nptl)   make && make modules modules_install install

(handbook) make && make modules modules_install

do I need that last install?

Also: for pentium4 users, the make.conf provided has a typo.

CFLAGS="=march=pentium4 -03 -pipe"

should be

CFLAGS="-march=pentium4 -03 -pipe"Last edited by gza on Fri Nov 19, 2004 9:25 pm; edited 1 time in total

----------

## Bob P

 *gza wrote:*   

> In the guide, after the kernel is created and compiled it is copied over into /boot.  The same for the System.map and optionally, the .config.
> 
> This step is ommited [sic] in the guide.  Is that done on purpose?
> 
> 

 

i'm a little confused by your question -- i guess that your first sentence you use the term "guide" to refer to the Gentoo Installation Handbook, and in your last sentence you use the same term, "guide," to refer to the Stage 1/NPTL HOW-TO, right?    :Rolling Eyes:   this makes it hard for anyone to follow which "guide" you're referring to.

in the GIH, you are instructed to manually copy the files individually.  in this HOW-TO, the installation steps are consolidated as part of the recommended command line parameters.  you should NOT change them from what ali3nx has recommended.  if you follow his instructions to the letter you'll get the desired results.  i have to admit, the syntax of the concactenated command line string in this HOW_TO is not as inherently clear to the new user as the multiple steps in the GIH;  but it is tremendously more efficient. following this HOW_TO throws you onto a steeper portion of the learning curve.  welcome aboard.    :Wink: 

btw, the pentium 4 sytax error has already been documented in this thread.  hopefully the fix will make its way into ali3nx's sample make.conf.  if this typo applies to your situation, you should fix it.

best of luck!

----------

## nick_ellsworth

 *linux_on_the_brain wrote:*   

> nick_ellsworth, I posted a little something about your situation on your other thread.

 

Thanks.

----------

## hielvc

When you

```
make && make modules modules_install install
```

 that last install is command that automatically copies bzIamge to /boot/vmlinuz and the System.map and .config to Config. Heres mine  *Quote:*   

>  ll /boot
> 
> total 11M
> 
> lrwxr-xr-x  1 root root   27 Nov 12 18:28 System.map -> System.map-2.6.9-gentoo-r3n
> ...

 

It beats the ell outa doing it by hand. But you say vmlinuz!!!! Well your grub conf 

```
cat /boot/grub/grub.conf

default 0

timeout 15

splashimage=(hd0,0)/boot/grub/splash.xpm.gz

title=Gentoo 2.6.9-gentoo-r1n

root (hd0,0)

#kernel (hd0,0)/boot/vmlinuz root=0303 vga=791 hdc=ide-cd

kernel (hd0,0)/vmlinuz root=/dev/hda3 vga=ask hdv=ide-cd

title=gentoo  2.6.9-gentoo-r1n

root (hd0,0)

kernel (hd0,0)/vmlinuz.old root=0303 vga=ask hdc=ide-cd

title=gentoo 2.6.8-r10

root (hd0,0)

kernel (hd9,0)/vmlinuz-2.6.8-r10-gentoo root=0303 vga=791 hdc=ide-cd
```

If you want you can "mv kernel_img windows" and guess what your grub kernel line would be

kernel (hd0,0)/windows root=......." . Hope thats helps.

----------

## thecrazyperson_ws

I noticed one flaw in the tutorial way up in the booting from livecd portion.  The 2004.3 livecd no longer has separate "gentoo" and "smp" kernels.  The "gentoo" kernel (the only one btw) is 2.6.9-gentoo-r1 smp.

```
livecd root # uname -rv

2.6.9-gentoo-r1 #1 SMP Tue Nov 2 23:12:07 UTC 2004
```

Ali3n, if you could change that portion to avoid confusion, it would be appreciated.

----------

## gza

"Activate the userlocales USE flag especially for glibc"  and subsequently modify the locales.

This is in the gentoo installation handbook; should this be added to this dev-ntpl guide? 

I noticed that a healthy portion of time was spent addressing ALL the locales while my super-duper-one-liner was running. Maybe setting the locales could shave some time compiling.

----------

## Soul_rebel

I am having tremendous problems installing gentoo in this way, perhaps i am doing something wrong but every time i end up with a inconsistent system... Please tell me what i am doing wrong:

this is the make.conf:

```
CHOST="i686-pc-linux-gnu"

CFLAGS="-O3 -march=athlon-xp -msse -mmmx -m3dnow -momit-leaf-frame-pointer -fomit-frame-pointer -funroll-loops -ftracer -ffast-math -fprefetch-loop-arrays -freduce-all-givs -finline-limit=600 -mfpmath=387 -pipe"

CXXFLAGS="${CFLAGS}"

#LDFLAGS="-Wl,-z,combreloc -Wl,-O,2 -Wl, -Wl,--enable-new-dtags -Wl,--sort-common -s" 

ACCEPT_KEYWORDS="~x86"

USE="nptl gnome gtk -qt -kde alsa"

MAKEOPTS="-j2"

GENTOO_MIRRORS="ftp://ftp.snt.utwente.nl/pub/os/linux/gentoo ftp://mirror.nutsmaas.nl/gentoo/ ftp://ftp.du.se/pub/os/gentoo http://gd.tuwien.ac.at/opsys/linux/gentoo/"

```

If i bootstrap normally the script installs both the 2.6 and the 2.4 headers! then when it comes to glibc it says i have no 2.6 headers and stops.

so i unmerged the 2.4 and merged again 2.6 glibc started compiling but returned an error.

So here what i am doing:

```

cd /usr/portage

emerge sync

USE="-* build bootstrap" emerge linux26-headers 

scripts/bootstrap.sh

#emerge system

```

Bootstrap is succesful but emerge system stops after installing bash and leaves me with a non working portage: strange errors:

/usr/lib/portage/bin/ebuild.sh

line 1319: no file or directory

It cant merge or unmerge anything at this point

I have heard about a perl problem so i tryed emerge libperl and emerge perl after boostrap but before emerge system= same result!

NOTE everything has been tryed at least twice!

What's the problem?

please help! bye

----------

## thecrazyperson_ws

Soul:  Try backing down your CFLAGS a bit.  This may sound a little strange to do, but you'd be surprised how many errors are fixed by this.  Here's mine (followed this dev-nptl guide to the letter (didn't even change the make.conf except for CHOST and CFLAGS)) and it got through glibc just fine.

```
CFLAGS="-march=pentium3 -O5 -pipe -fomit-frame-pointer -mmmx -msse -mfpmath=sse"
```

Try this (except change "-march=pentium3" to "-march=athlon-xp") and see if it helps.

----------

## Bob P

are you installing from 2004.2 or 2004.3 media and tarballs?

----------

## ali3nx

Sorry i've been really busy lately with donor installs and the winter season bagged me with a cold last week. I'll be available more this week to answer questions and i'll update the tut with the new networking section for baselayout. I havent stopped kicking yet so expect more compiling in the very near future.

----------

## Soul_rebel

it was beacause of cflags!

i received a bad advise about those.... now i have set it to something more normal and it is ok

----------

## hirnstrudel.de

After succesfully testing NPTL on my local server with 2004.3 LiveCD, i want to use it on a remote machine.

But I can't boot from a Gentoo LiveCD, but only from a Debian based rescue system with kernel 2.4.27

Of cource i get the following error

 * You need a kernel of at least version 2.6.5

 * for NPTL support!

So is there any way to use NPTL on my remote machine?  :Sad: 

edit:

- can i build a binary package of glibc on my local machine and tranfser it to my remote server?

- can i do a install with linuxthreads, and replace glibc afterwards?

----------

## Deranger

 *gza wrote:*   

> "Activate the userlocales USE flag especially for glibc"  and subsequently modify the locales.
> 
> This is in the gentoo installation handbook; should this be added to this dev-ntpl guide? 
> 
> I noticed that a healthy portion of time was spent addressing ALL the locales while my super-duper-one-liner was running. Maybe setting the locales could shave some time compiling.

 

I agree, userlocales should be added. There's no point to compile all locales, only needed ones. Cutting down useless locales speeds up glibc compilation dramatically.

----------

## Deranger

 *hirnstrudel.de wrote:*   

> After succesfully testing NPTL on my local server with 2004.3 LiveCD, i want to use it on a remote machine.
> 
> But I can't boot from a Gentoo LiveCD, but only from a Debian based rescue system with kernel 2.4.27
> 
> Of cource i get the following error
> ...

 

No, there isn't any ways. NPTL needs 2.6 headers and kernel. If you build packages on your own box, and transfer them to a remote machine, you still don't have 2.6 kernel or 2.6 headers. Result: b0rked toolchain.

----------

## hirnstrudel.de

 *Oktane wrote:*   

> No, there isn't any ways. NPTL needs 2.6 headers and kernel. If you build packages on your own box, and transfer them to a remote machine, you still don't have 2.6 kernel or 2.6 headers. Result: b0rked toolchain.

 

and what about building a working 2.6 system based on linuxthreads, and then switch to nptl?

e.g. installing stage3 tarball and then recompile everything.

----------

## hielvc

Use a stage2, umerge linux-headers "emerge --oneshot linux26-headers" then emerge a kernel-2.6 set it up and boot from it. Now you can emerge glibc +nptl gcc and the rest of your system.

----------

## hirnstrudel.de

 *hielvc wrote:*   

> Use a stage2, umerge linux-headers "emerge --oneshot linux26-headers" then emerge a kernel-2.6 set it up and boot from it. Now you can emerge glibc +nptl gcc and the rest of your system.

 

what about "emerge --system" ?

i need also sshd, because i have no other access to the server.

----------

## hielvc

Use a stage2 or 3 get he linux26-headers then get  your 2.6 kernel going. Once you got this you can bootstrap or emerge -e world or emerge --newuse world.

----------

## Meaulnes

Hello all,

  I just rebuilt my system this weekend using this guide. Everythji8ng seemed to go great, but when I rebooted and started looking at some stuff, I saw this:

```
 ~ $ /lib/libc.so.6 

GNU C Library 20041102 release version 2.3.4, by Roland McGrath et al.

Copyright (C) 2004 Free Software Foundation, Inc.

This is free software; see the source for copying conditions.

There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A

PARTICULAR PURPOSE.

Compiled by GNU CC version 3.4.3  (Gentoo Linux 3.4.3, ssp-3.4.3-0, pie-8.7.6.6).

Compiled on a Linux 2.6.8 system on 2004-11-20.

Available extensions:

        GNU libio by Per Bothner

        crypt add-on version 2.1 by Michael Glad and others

        linuxthreads-0.10 by Xavier Leroy

        The C stubs add-on version 2.1.2.

        GNU Libidn by Simon Josefsson

        BIND-8.2.3-T5B

        libthread_db work sponsored by Alpha Processor Inc

        NIS(YP)/NIS+ NSS modules 0.19 by Thorsten Kukuk

Thread-local storage support included.

For bug reporting instructions, please see:

<http://www.gnu.org/software/libc/bugs.html>.

```

In the past, the linuxthreads line was never there and there was always something to the effect of NPTL by Ulrich somebody (sorry it has been a while since I looked at it).

During the build, the only USE flag I had set was USE="nptl" in make.conf and it is still there:

```
 ~ $ cat /etc/make.conf | grep nptl

USE="aim alsa avi bitmap-fonts cdr crypt cups dga directfb divx4linux dvd dvdr fbcon gpm gtk gtk2 icq jabber java mozilla msn nptl oggvorbis opengl samba sdl spell sox svga usb wxwindows xmms xv xvid X yahoo "

```

Any thoughts on what may have happened? and how might I go about fixing this? I am going to try rebuilding glibc and then maybe an emerge world after that.

----------

## MoonWalker

No luck   :Crying or Very sad:   Using 2004.3 minimal and a stage1 I follow the guide and everything goes fine until it's time for bootstrap.sh and first emerge of portage-2.0.51-r3 borks with a gcc error I can't figure out, have tried it from scratch now 3 times.

```
gcc: Installation problem, can not exec 'as' : no such file or directory
```

also when I do #emerge info, I see 

```
COMPILER=""
```

which must be wrong.

it's a P4 1.8 and CFLAGS="-march pentium4 -O2 -pipe"

somewhat gcc seam to "get lost" somewere. I did a "normal" bootstrap ones but but as it seamed it liked to prepare for a 2.4 system (but it maybe was just the headers) I then found this  threed and started all over. But that was 36h ago and still no go  :Smile: 

anyone have an idea?

EDIT:

Well after cleaning out everything and starting over from scratch, this time excluding the "&& emerge -C linux-headers" of the magic oneliner, it now at least seam to get passed the previous error. So it's now bootstraping, puh... lets see how far it goes.

----------

## ali3nx

 *Oktane wrote:*   

>  *hirnstrudel.de wrote:*   After succesfully testing NPTL on my local server with 2004.3 LiveCD, i want to use it on a remote machine.
> 
> But I can't boot from a Gentoo LiveCD, but only from a Debian based rescue system with kernel 2.4.27
> 
> Of cource i get the following error
> ...

 

I think i found the source of the error... gcc-config isn't setting the default profile back to the new gcc during bootstrap... I just did an install last night and had the same error twice during both bootstraps on the same box. after using gcc-config to set a profile everything worked hunkey dorey. vapier we need you again   :Wink: 

----------

## Deranger

ali3nx, I know  :Neutral:  I have been trying to do some experiementing with C(XX)FLAGS, and noticed that it doesn't set new GCC profile.

Fails on bootstrap...  :Sad: 

Damn, sometimes it's hard to live on the edge  :Wink: Last edited by Deranger on Tue Nov 23, 2004 10:57 am; edited 2 times in total

----------

## R!tman

 *Oktane wrote:*   

> Damn, sometimes it's hard to live on the edge 

 

 :Very Happy: 

I can hardly wait for testing this "living on the egde" with new hardware. I think of getting one of the new nforce4 boards.

----------

## ali3nx

 *R!tman wrote:*   

>  *Oktane wrote:*   Damn, sometimes it's hard to live on the edge  
> 
> I can hardly wait for testing this "living on the egde" with new hardware. I think of getting one of the new nforce4 boards.

 

hehe... i'm havin some fun myself with a little hardware

```
backup1 root # uname -a

Linux backup1 2.6.9-gentoo-r4 #2 SMP Tue Nov 23 02:21:25 EST 2004 i686 Intel(R) Xeon(TM) CPU 2.66GHz GenuineIntel GNU/Linux

backup1 root # top

top - 04:22:33 up  1:57,  4 users,  load average: 1.12, 1.33, 1.13

Tasks:  66 total,   2 running,  64 sleeping,   0 stopped,   0 zombie

Cpu0  :  1.3% us,  0.3% sy,  0.0% ni, 98.3% id,  0.0% wa,  0.0% hi,  0.0% si

Cpu1  :  8.3% us,  2.0% sy,  0.0% ni, 89.7% id,  0.0% wa,  0.0% hi,  0.0% si

Cpu2  : 31.6% us,  8.6% sy,  0.0% ni, 59.8% id,  0.0% wa,  0.0% hi,  0.0% si

Cpu3  : 48.5% us,  1.3% sy,  0.0% ni, 50.2% id,  0.0% wa,  0.0% hi,  0.0% si

Mem:   6235588k total,  4107324k used,  2128264k free,   158640k buffers

Swap:  2008116k total,        0k used,  2008116k free,  3744832k cached

```

```
backup1 root # lspci

0000:00:00.0 Host bridge: Intel Corp. E7501 Memory Controller Hub (rev 01)

0000:00:00.1 Class ff00: Intel Corp. E7500/E7501 Host RASUM Controller (rev 01)

0000:00:02.0 PCI bridge: Intel Corp. E7500/E7501 Hub Interface B PCI-to-PCI Bridge (rev 01)

0000:00:1d.0 USB Controller: Intel Corp. 82801CA/CAM USB (Hub #1) (rev 02)

0000:00:1d.1 USB Controller: Intel Corp. 82801CA/CAM USB (Hub #2) (rev 02)

0000:00:1d.2 USB Controller: Intel Corp. 82801CA/CAM USB (Hub #3) (rev 02)

0000:00:1e.0 PCI bridge: Intel Corp. 82801 PCI Bridge (rev 42)

0000:00:1f.0 ISA bridge: Intel Corp. 82801CA LPC Interface Controller (rev 02)

0000:00:1f.1 IDE interface: Intel Corp. 82801CA Ultra ATA Storage Controller (rev 02)

0000:00:1f.3 SMBus: Intel Corp. 82801CA/CAM SMBus Controller (rev 02)

0000:01:1c.0 PIC: Intel Corp. 82870P2 P64H2 I/OxAPIC (rev 03)

0000:01:1d.0 PCI bridge: Intel Corp. 82870P2 P64H2 Hub PCI Bridge (rev 03)

0000:01:1e.0 PIC: Intel Corp. 82870P2 P64H2 I/OxAPIC (rev 03)

0000:01:1f.0 PCI bridge: Intel Corp. 82870P2 P64H2 Hub PCI Bridge (rev 03)

0000:02:01.0 RAID bus controller: 3ware Inc 3ware Inc 3ware 9xxx-series SATA-RAID

0000:03:02.0 Ethernet controller: Intel Corp. 82546EB Gigabit Ethernet Controller (Copper) (rev 01)

0000:03:02.1 Ethernet controller: Intel Corp. 82546EB Gigabit Ethernet Controller (Copper) (rev 01)

0000:04:01.0 VGA compatible controller: ATI Technologies Inc Rage XL (rev 27)

```

specs are - 3ware 9500 series raid5 sata

                 6gb ram

                 1TB of sata disk

                 10MBit Fiber Internap 

                 one happy ali3n   :Laughing: 

----------

## Deranger

Bah, crappy old box  :Wink: 

----------

## MoonWalker

 *MoonWalker wrote:*   

> EDIT:
> 
> Well after cleaning out everything and starting over from scratch, this time excluding the "&& emerge -C linux-headers" of the magic oneliner, it now at least seam to get passed the previous error. So it's now bootstraping, puh... lets see how far it goes.

 Well the bootstrap failed while compiling glibc,

```
typed extract:

>>>md5...

nptl

x86

!nptlonly

*Warning.....

* ....

>>> unpacking source

nptl

x86

* Checking gcc for  __tread support  no

* Could not find a gcc  that supports the __treads directive!

* Please update to gcc-3.2.2-r1 or later, and try again.

!!! ERROR: sys-lib/glibc-2.3.4.20041102 failed!

!!! Function check_nptl_support, line 158, Exitcode 0

!!  No threed support in gcc!
```

I'm pretty sure this is the second compile of glibc, although let it over night. When I was leaving glibc was alreaddy in the middle of compiling so source was unpacked. Is this maybe related to the gcc issue just mentioned here by ali3nx?

----------

## Deranger

MoonWalker: Yes it is, after bootstrap script has emerged GCC, it doesn't change your system to use new GCC profile.

How about trying to run:

```

gcc-config -l

gcc-config <your newly compiled GCC version>

source /etc/profile

```

Then try to restart bootstrap...It should pass  :Razz: 

----------

## MoonWalker

```
#gcc-config -l

* /usr/bin/gcc-config : No default profile setup!

#
```

Well it seam it lost the profile somewere, maybe that's the bug?

----------

## Deranger

Well, I got exactly the same message...

It should be fixed, check this out: Bug #63973

ali3nx: You succeeded to change profile without this message?  :Confused: 

----------

## MoonWalker

Ok so which steps to take getting this fix into my box, is it enough with 

```
# emerge sync
```

 and then start bootstrap again, or do I have to start from scratch a 5th time!? Do I even need to fetch a new stage1 tarball or?

----------

## Deranger

Honestly, I have no idea. Maybe it's the best to wait some time and see if somebody has a workaround for this...

That Bugzilla link I posted, it's about 2 months old...

----------

## MoonWalker

 *Oktane wrote:*   

> Honestly, I have no idea. Maybe it's the best to wait some time and see if somebody has a workaround for this...
> 
> That Bugzilla link I posted, it's about 2 months old...

 

Then the LiveCD must have a rather old gcc & gcc-config set as the fix doesn't seam to have got into it? Well I better wait until I can get Reiser4 into it as well then. It's no hurry really, the box is supposed to replace my current K6 based server, and it probably wont happen before christmas anyhow.

----------

## thecrazyperson_ws

My P3-Katmai box went right through bootstrap without giving me a single error (except for having to "emerge system" twice due to it miscalculating when to compile perl).  Following this guide to the letter, an ~x86 box based on my experiences should give you GCC 3.4.3 by default.  At least... that's what it did with me.  It's currently compiling the kernel:  2.6.9-nitro4 "Less Is More"!  I'll have more to post when I reboot it later.

EDIT: btw, sw33t system that you're playing around with there, ali3n.  I wish I had something like that.

----------

## MoonWalker

 *thecrazyperson_ws wrote:*   

> My P3-Katmai box went right through bootstrap without giving me a single error (except for having to "emerge system" twice due to it miscalculating when to compile perl).  Following this guide to the letter, an ~x86 box based on my experiences should give you GCC 3.4.3 by default.  At least... that's what it did with me.  It's currently compiling the kernel:  2.6.9-nitro4 "Less Is More"!  I'll have more to post when I reboot it later.

 

Well some are just lucky  :Smile:  but it strange how the same code can come out so differently   :Confused:   What USE= flags did you set in make.conf? I just used USE="nptl" and the oneliner

```
env-update && source /etc/profile && USE="-* build bootstrap" emerge linux26-headers && cd /usr/portage && scripts/bootstrap.sh
```

 as no old linux-headers was installed. I belive 

```
USE="-* build bootstrap" emerge linux26-headers 
```

 removed my tptl flag, but it should have come back in the bootstrap script I assume.

An other question OT to this threed maybe, but you use Nitro4 sources, (at least partly) for the Reiser4 support I assume... I just wonder is there any way reaiser4 can convert a resier 3.6 file system? Without loosing data, of course  :Smile: 

----------

## MoonWalker

Regarding my previous error report quoted below, I now found out the original error actually happens before, just after gcc-3.4.3 compiling finish.

```
>>> Original instance of package unmerged sagely

bootstrap

[color=red]*[/color] /usr/bin/gcc-config: profile does not exist or invalid setting for /etc/env.d/gcc/i686-pc-linux-gnu-3.4.3

* Switching to i686-pc-linux-gnu-3.4.3 compiler

>>> Regenerating /etc/ld.so.cache....

>>> sys-devel/gcc-3.4.3 merged
```

It's just above my level to figure out exactly what is wrong, but there must be a bug somewere, so much I understand.

 *MoonWalker wrote:*   

> Well the bootstrap failed while compiling glibc,
> 
> ```
> typed extract:
> 
> ...

 

----------

## Deranger

As far as I can tell, after emerging GCC, gcc-config should switch to new compiler, however, it doesn't do it. Result: bootstrap fails.

Ok, not a big problem. It can be fixed by running gcc-config -l and select new compiler from list, then source /etc/profile.

Well, I wish it would be that simple. The problem is, gcc-config doesn't work properly, it ouputs strange error messages and warnings (see above)  :Mad: 

----------

## MoonWalker

is there any bug filed for this? I can do, but I have a bit problem supplying data into the bug as I'm not so familar with the textbased browsers available in the console - simply don't use them very often... (this is other box)

I was able to make gcc-config to select the new profile, and ran bootstrap again but same error, then released I forgot source /etc/profile and have now done it again and just now bootstraping. If it doesn't work gcc-config must be really borked, well it is any way.

gcc just started to compile so in an hour or so I know.

----------

## ali3nx

 *Oktane wrote:*   

> Well, I got exactly the same message...
> 
> It should be fixed, check this out: Bug #63973
> 
> ali3nx: You succeeded to change profile without this message? 

 

 what i did to bypass the error is this...

```
gcc-config 1 && source /etc/profile && gcc-config 2 && source /etc/profile && emerge --resume
```

gcc-config will whine perfusely but only the first time it sets a profile. another thing to mention is that gcc-config -l will show no profiles but they *do* exist. Mind over matter will win the day here   :Wink: 

----------

## MoonWalker

Hey, you are the man!    :Laughing:   :Laughing:   :Laughing:   :Laughing:   :Laughing: 

 *ali3nx wrote:*   

> 
> 
>  what i did to bypass the error is this...
> 
> ```
> ...

 

A bug need to get filed for this anyhow

----------

## Deranger

 *ali3nx wrote:*   

>  *Oktane wrote:*   Well, I got exactly the same message...
> 
> It should be fixed, check this out: Bug #63973
> 
> ali3nx: You succeeded to change profile without this message?  
> ...

 

I wiped partitions and started from scratch, I'll let you know how it goes  :Wink:  Bootstrapping at the moment...  :Razz: 

[ EDIT ] YAY! It worked like a charm...Last edited by Deranger on Tue Nov 23, 2004 10:58 pm; edited 1 time in total

----------

## MoonWalker

Me bootstrapping too, although I continued were I was as I had it pretty clean so far.  But I left out the parts after bootstrap in the oneliner, and now I wonder (before I do it and screw something), if I open a 2nd console, would it still be in the chroot environment? I think not, but if is it then ok to run a 2nd instance of emerge to # emerge --fetchonly system, so all the source is there for the next step?

----------

## MoonWalker

```
gcc-config 1 && source /etc/profile && gcc-config 2 && source /etc/profile && emerge --resume
```

 completed, if that now was all to complete the bootstrap? I'm a bit unsure, looking at emerge.log zlib was the last package compiled, can this be correct?

Well I guess it will showup om # emerge system

----------

## Deranger

 *MoonWalker wrote:*   

> 
> 
> ```
> gcc-config 1 && source /etc/profile && gcc-config 2 && source /etc/profile && emerge --resume
> ```
> ...

 

If it completed without any errors, you're all set.

----------

## madness

I ran into an evil error while trying to bootstrap my 2004.3 system with USE="nptl".  It seems portage goes a little nuts and emerges linux26-headers then emerges linux-headers.  From 2004.2, portage never thought I needed linux-headers.  So.. I made a little modification that doesn't fix the root of the problem, but it seems to work as a work around.

Just for replication sake, here is my make.conf:

```

CFLAGS="-O2 -mcpu=i686 -fomit-frame-pointer -pipe -fstack-protector"

CHOST="i686-pc-linux-gnu"

CXXFLAGS="${CFLAGS}"

USE="nptl doc mmx sse acpi crypt ssl alsa cdr dvd dvdr flac speex theora"

```

To quickly replicate the fault, (as root) make a directory, extract the 2004.3 stage1, extract the recent portage snapshot of your choice, make the above your make.conf, add any needed distfiles distfiles or setup resolv.conf, mount proc, chroot in, env-update, and run bootstrap.sh.

It should emerge linux26-headers followed closely by linux-headers.  This defiles linux26-headers, making your headers (kernel) version look like a 2.4 version (which most of it is, now).  Then gcc notices this and tells you to take a hike.  Atleast, that is my experience.

Exit out of the test environment, unmount proc, and nuke the test directory.

Make a new directory and setup again.  This time, make one small modification to bootstrap.sh.

Now the work-around, find this in bootstrap.sh:

```

        emerge ${STRAP_EMERGE_OPTS} ${myOS_HEADERS} ${myTEXINFO} ${myGETTEXT} ${myBINUTILS} || cleanup 1

```

replace it with:

```

emerge ${STRAP_EMERGE_OPTS} ${myOS_HEADERS} || cleanup 1

echo "sys-kernel/linux-headers-2.4.21-r1" >>  etc/portage/profile/package.provided

emerge ${STRAP_EMERGE_OPTS} ${myTEXINFO} ${myGETTEXT} ${myBINUTILS} || cleanup 1

```

After running this, just comment out the linux-headers line in etc/portage/profile/package.provided.  All seems fine.

So does this seem sane to anyone else?

----------

## Deranger

Just emerge linux26-headers before bootstrap, then it doesn't emerge 2.4 headers and fuck up your install  :Wink: 

----------

## MoonWalker

Well all went file all the way through #emerge system, but then it "stumble" on grub

```
checking for C compiler default output name... configure: error: C compiler cannot create executables!
```

 Strange as it have created them upto this point! I wonder if it's gcc-config that are playing jokes again? I get this strange listing: 

```
portage# gcc-config -l

[color=red]*[/color] /usr/bin/gcc-config: profile does not exist or invalid setting for /etc/env.d/gcc/i686-pc-linux-gnu-3.4.3

[1] i386-pc-linux-gnu-3.3.4

[2] i686-pc-linux-gnu-3.4.3 *

[3] i686-pc-linux-gnu-3.4.3-hardened

[4] i686-pc-linux-gnu-3.4.3-hardenednopie

[5] i686-pc-linux-gnu-3.4.3-hardenednossp
```

----------

## vicaya

I ran into this problem once, as a bootstrap failure caused a missing symlink of /usr/lib/gcc to /usr/lib/gcc-lib. fix:

cd /usr/lib && mv gcc/i686-pc-linux-gnu gcc-lib && rmdir gcc && ln -s gcc-lib gcc

Hope that's the same problem.

----------

## MoonWalker

 *vicaya wrote:*   

> I ran into this problem once, as a bootstrap failure caused a missing symlink of /usr/lib/gcc to /usr/lib/gcc-lib. fix:
> 
> cd /usr/lib && mv gcc/i686-pc-linux-gnu gcc-lib && rmdir gcc && ln -s gcc-lib gcc
> 
> Hope that's the same problem.

 

And when was this, with the new 2004.3 tarball?

----------

## MoonWalker

I digged a bit in bugzilla and I think #70111 is what makes emerge bomb on grub. Solution seam to be on the way though, but as always it's justa a matter of (available) time.

OT: He he I like this, I suddenly became 'Guru' and looking back it seams like I always been   :Cool: 

----------

## MoonWalker

did an #emerge sync  and found out there was a new gcc-config-1.3.7-r1 but on installing the ebuild it spitted out this line

```
[color=red]*[/color] /usr/bin/gcc-config : could not locate '[color=red]*[/color]' in '/etc/env.d/gcc/'!
```

I wonder what '*" is and if it have any importance. the package installed but nothing changed, same behave of gcc-config and grub bombs as before.

I'm doing a

```
#emerge -e system && emerge -e system
```

 now and see if it changes anything or if it even bombs. I have other things to do anyhow!

----------

## MoonWalker

I have now done a 

```
#emerge -e system && emerge -e system
```

 and grub still bomb with

```
checking for C compiler default output name... configure: error: C compiler cannot create executables!
```

  :Twisted Evil: 

I don't know what it is, but "something" is wrong with 2004.3

----------

## Deranger

I know, I know...  :Sad: 

There's something really badly b0rked...

----------

## XyryX

I finally got the thing to compile through bootstrap after doing 5 complete reinstals, and every bug fix suggested on these forums..

But..

Emerge gcc and glibc activates ntpl fine..  Bootstrap then removes it.  Or emerge system removes it EVERY time..  I can reproduce this over and over and over and over..  

Of course I have also had the gcc-config errors, the cannot find gcc errors, etc etc etc..

hehe..  4 days of installing..

I have tried doing emerge gcc glibc before bootstrap and after bootstrap before emerge system..  In both cases it compiles with ntpl support..  Then in both cases its recompiled to not use it by either bootstrap.sh or emerge system..

How can I stop it recompiling gcc and glibc and anything else I know is working fine when I execute bootstrap or emerge system ???

For interests sake.. I am trying to make a athlon 1200+ into a server box.  No graphics needed as it has no monitor/keyboard etc..  I want everything to be remote through another PC I am also setting up Pent4 1.5..  The pent4 1.5 will of course be running a grphical interface..

Btw..  I have only been using USE="ntpl ntplonly"

Is there anything else I really need for either box ???

Btw.. was really looking forward to doing this with gentoo..  hehe..  But really need it finished by saturday or back to fedora I go  :Sad: 

----------

## slycordinator

 *MoonWalker wrote:*   

> I have now done a 
> 
> ```
> #emerge -e system && emerge -e system
> ```
> ...

 

Something's wrong with your C compiler.  Perhaps you have a typo in your CFLAGS.  Or perhaps you didn't emerge gcc or glibc.

----------

## danbond_98

getting same problem, tried a couple of goes at bootstrap but no luck. will be looking forwards to when it all gets sorted so can get gentoo onto my laptop at last!

----------

## geekporn

Am I missing something?  Everytime I try to run bootstrap It fails with gettext:

```

checking for a BSD-compatible install... /bin/install -c

checking whether build environment is sane... yes

checking for gawk... gawk

checking whether make sets $(MAKE)... yes

checking for i686-pc-linux-gnu-strip... no

checking for strip... strip

checking for i686-pc-linux-gnu-gcc... gcc

checking for C compiler default output file name... configure: error: C compiler cannot create executables

See `config.log' for more details.

configure: error: /bin/sh './configure' failed for autoconf-lib-link

```

I know this error has been encountered before but the "ln -s gcc-lib gcc" fix didn't work on this one.

I have tried building with the default make.conf from the tut and also with just nptl and then my own little set of USE flags.  I have tried to set the compiler with gcc-config and that didn't make a difference either.  I looked through all the install docs for the standard install just to see if i missed something.  At least i am not the only one with issues, should have followed this on 2004.2.  Anyways all I can say is thanks to everyone here for providing help and guidance.  

The only thing else i can think of is to build the linux26-headers without USE="-* build bootstrap" and see if that helps, it recompiles gcc and stuff?  will this get the gettext cruft from killing my install?  or will this just bork the whole thing?  Anyways won't hurt to try.  Will post with results.

[edit]

didn't help, still fails at gettext when just emerging linux26-headers.

I am officially lost on this one

[/edit]

[edit]

I went ahead and tried to rebuild gcc, of course it didn't work.  compiler unable to create exicutables.

[/edit]

----------

## sarge

 *slycordinator wrote:*   

>  *MoonWalker wrote:*   I have now done a 
> 
> ```
> #emerge -e system && emerge -e system
> ```
> ...

 

Same errors here. Reinstalled glibc, gcc, gcc-config, linux26-headers several times vith no luck, still gettin` errors in emerge grub and gcc-config -l || (-c) || (-v).

----------

## vicaya

Yeah, I was using 2004.3 stage1 on a brand new $300 dell 4600 (p4 2.8GHz) with nptl, gcc 3.4.3, udev and 2.6.9-r4 kernel. It aborted in the middle of the bootstrap, after gcc 3.4.3 was emerged. I went into /etc/env.d/gcc and found the config had a few garbage chars. Fixed it to CURRENT=i686-pc-linux-gnu-3.4.3. gcc-config still complained about bad profiles. Then I looked at the gcc-config and sure enough it's checking for gcc-lib paths, so I fixed gcc symlink to gcc-lib in /usr/lib and gcc-config 2 && source /etc/profile, emerge --resume. Everything seems to be fine. It's been running kde 3.3.1 for a while now  :Smile: 

I think someone b0rked portage (esp, the bootstrap.sh, as I noticed at one point it was not even executable) in the last few days as I installed pretty much the same thing (sans the desktop stuff, but with root on raid1) on a dell 400sc using 2004.3 (the same day it came out) without a hitch.

----------

## MoonWalker

 *XyryX wrote:*   

> (text deleted)
> 
> I have tried doing emerge gcc glibc before bootstrap and after bootstrap before emerge system..  In both cases it compiles with ntpl support..  Then in both cases its recompiled to not use it by either bootstrap.sh or emerge system..
> 
> How can I stop it recompiling gcc and glibc and anything else I know is working fine when I execute bootstrap or emerge system ???
> ...

 

First, it's USE="nptl nptlonly" AND NOT USE="ntpl ntplonly", but it's maybe hjust a typo on your part  :Question: 

I think this is normal behave with nptl, it compiles glibc twice, ones with nptl and once w/o (as all packages can't use it, so there need to be an alternative), unless you use USE="nptlonly"

You should NOT use both nptl AND nptlonly in your use flags, I think but I may be wrong here. But if I have got it right it works like this:

```
USE="nptl" 'add nptl to the normal feature set of glibc=make 2 binaries

USE="nptlonly" 'replace the normal feature set of glibc=make 1 nptl capable binary only
```

I'm not sure what's happen if you use both flags but possibly it confuses poertage.

----------

## Deranger

I have been running USE="nptl nptlonly" compiled glibc since that flag came into glibc  :Wink: 

Read more from page 3 of this thread.

----------

## MoonWalker

 *slycordinator wrote:*   

>  *MoonWalker wrote:*   I have now done a 
> 
> ```
> #emerge -e system && emerge -e system
> ```
> ...

 

Yes something's definately wrong with my C compiler, but it's not my CFLAGS. I'm not sure what it is, but gcc-conf doesn't seam to work properly, if this is something to do with the gcc-conf code or the dataset it uses, I can't tell. 

But when looking at config.log of the borked grub I see

```
configure:2371: checking for C compiler version

configure:2374: getCC -fno-pic -nopie --version </dev/null > &5

./configure:line 2375:getCC:command not found

configure:2377:$?=127

configure:2379: getCC -fno-pic -nopie -v </dev/null > &5

./configure:line 2380:getCC:command not found

(and so on until finally)

configure:failed program was:

| /* confdefs.h.  */

|

```

And this bug imply getCC should really be tc-getCC and that's why grub bombs. No one seam to be inspired to touch the grub ebuild though  :Sad: 

----------

## MoonWalker

 *Oktane wrote:*   

> I have been running USE="nptl nptlonly" compiled glibc since that flag came into glibc 
> 
> Read more from page 3 of this thread.

 OK your right, nptlonly cannot be used on its own but have to suplement nptl. from ebuild

```
pkg_setup() {

        if use nptlonly && use !nptl ; then

                eerror "If you want nptlonly, add nptl to your USE too ;p"

                die "nptlonly without nptl"

        fi

        # give some sort of warning about the nptl logic changes...

        if want_nptl && use !nptlonly ; then

                ewarn "Warning! Gentoo's GLIBC with NPTL enabled now behaves like the"

                ewarn "glibc from almost every other distribution out there. This means"

                ewarn "that glibc is compiled -twice-, once with linuxthreads and once"

                ewarn "with nptl. The NPTL version is installed to lib/tls and is still"

                ewarn "used by default. If you do not need nor want the linuxthreads"

                ewarn "fallback, you can disable this behavior by adding nptlonly to"

                ewarn "USE to save yourself some compile time."

                ebeep

                epause

        fi

}
```

But I still think it's a good thing to have the fallback to linuxthreeds there as nptl anyway is used by default. nptlonly doesn't save you any compile time the day your server bombs because you use some package that not support nptl. You still have a "full featured" nptl system w/o nptlonly!

----------

## MoonWalker

In an other threed, someone suggested to use grub-static instead of grub, that's the 0.93 branch, instead of the 0.95 branch. Not sure if this is a good idea and if it makes any differance. I haven't tried.

BTW, current version of grub is not developed anymore and officially named Grub legacy, while all development is directed to the new grub2 which isn't stable yet afaik and only avail by cvs.

Anyhow, I just wonder are the devs aware of the severe problems that exist with 2004.3 and is anything done about it  :Question:  

----------

## Deranger

GRUB 0.94 compiles just fine.

I agree fully, devs should really to do something with this.

----------

## MoonWalker

 *Oktane wrote:*   

> GRUB 0.94 compiles just fine.
> 
> I agree fully, devs should really to do something with this.

 

huh such a chicken route...  :Wink:   just kidding, yes that's the workaround. 

```
#echo ">=sys-boot/grub-0.95" >> /etc/portage/package.mask

'comment:if /etc/portage/package.mask doesn't exist, first do

#touch /etc/portage/package.mask
```

I just wonder if they are aware of it. I would file a bug or 10, but I have a trouble with getting sshd started on the box i build and other boxes here is just windows so I can't get the error messages etc. out in a sensable way, but have to "reproduce" everything by hand typing, first on paper then into the computer.

----------

## rjw8703

Is your code segment correct? I get a > symbol when I hit enter 

after the second line. I use ^c to get out of there. Could you explain

what is happenning? Thanks

----------

## MoonWalker

The "2nd" line is a comment and should not be typed in, thought that was clear, but have edited and made it clearer now   :Smile: 

The first line "echos" >=sys-boot/grub-0.95 into /etc/portage/package.mask file where >> means it appends to the current existing file. This demands the file (and directory) exist or you have to create them.

```
#mkdir /etc/portage

#touch /etc/portage/package.mask
```

if the file doesn't exist, the last line could as well be 

```
#echo ">=sys-boot/grub-0.95" > /etc/portage/package.mask
```

 but that will overwrite any existing data so that's why I didn't list it before, for your own protection  :Wink: 

----------

## hielvc

MoonWalker wrote

```

#echo ">=sys-boot/grub-0.95 > /etc/portage/package.mask
```

change to 

```

#echo ">=sys-boot/grub-0.95" >> /etc/portage/package.mask
```

The chage is ">>" that appends to the file instead of over writing it. Also when you echo "blaa" > or >> to file, this is know as redirect, the file is created for you if it  doesnt exist.

----------

## Deranger

There's still a typo. Only one "  :Wink: 

# echo ">=sys-boot/grub-0.95" >> /etc/portage/package.mask

----------

## -TooL

So, do we use the 2004.2 cd to boot smp?

The new 2004.3 miniman and live cd wont give the smp option.

----------

## Deranger

 *-TooL wrote:*   

> So, do we use the 2004.2 cd to boot smp?
> 
> The new 2004.3 miniman and live cd wont give the smp option.

 

2004.3 uses 2.6 (SMP) kernel as a default, so you don't have to worry about it.

----------

## rjw8703

Thanks. That was the trick. Iv'e been working on installing gentoo since Aug 04 and this is the furthest that I have gotten. Now on to the next step.

----------

## Imago

Hi

i just came across the same bug MoonWalker mentioned, when doing a stage1 installation of gentoo on my notebook yesterday.

 *MoonWalker wrote:*   

> 
> 
> ...
> 
> ```
> ...

 

i found another way then ali3nx' workound to prevent this bug. Before starting to bootstrap just make sure you get the latest gcc-config(1.3.7-r1 atm).

so simply do:

```

emerge --nodeps gcc-config

```

before executing the bootstrap script.

(remember to set ~x86 keyword for it if you're not doing a complete  ~x86 install)

With this gcc-config the bootstrap runs through completely for me. emerge system also just finished without an error. So it seems to work this way  :Wink: 

CU

 Imago

----------

## slycordinator

For the C-compiler problems... it could be that you are using CFLAGS extensions for the wrong version of gcc.

Like starting with 3.4 you used -march just to tell the architechure and -mtune to compile optimized for that arch.  But with versions before that one, -march alone does the optimization and it doesn't understand -mtune at all.

----------

## Deranger

YAY! I ran this before bootstrapping and it completed without any errors  :Cool: 

```
emerge --nodeps --oneshot gcc-config
```

However, gcc-config bug still exist...

Credits to [Imago]  :Wink: 

----------

## MoonWalker

 *hielvc wrote:*   

> MoonWalker wrote
> 
> ```
> 
> #echo ">=sys-boot/grub-0.95 > /etc/portage/package.mask
> ...

 

Well if you really read my posts you see I also gave the >> alternative and initially excluded > as it overwrite the file.  The > was only given later as I expect people to read the previous post first.

I have corrected the typo in my post, sorry for that. BUT ATTENTION, I left them in here or it wont be a quote. Can you correct your post and I will correct this, just in sanity for late commers.

----------

## MoonWalker

 *slycordinator wrote:*   

> For the C-compiler problems... it could be that you are using CFLAGS extensions for the wrong version of gcc.
> 
> Like starting with 3.4 you used -march just to tell the architechure and -mtune to compile optimized for that arch.  But with versions before that one, -march alone does the optimization and it doesn't understand -mtune at all.

 

I have

```
CFLAGS="-march=pentium4 -O2 -pipe"
```

 do you mean I instead need 

```
CFLAGS="-march=pentium4 -mtune=pentium4 -O2 -pipe"
```

?

gcc = 3.4.3

----------

## MoonWalker

 *Oktane wrote:*   

> YAY! I ran this before bootstrapping and it completed without any errors 
> 
> ```
> emerge --nodeps --oneshot gcc-config
> ```
> ...

 So basicly it doesn't change anything, gcc-config still is the "black cheap" here.

----------

## Deranger

 *MoonWalker wrote:*   

>  *Oktane wrote:*   YAY! I ran this before bootstrapping and it completed without any errors 
> 
> ```
> emerge --nodeps --oneshot gcc-config
> ```
> ...

 

Well, at least bootstrap passes fine  :Razz: 

----------

## MoonWalker

 *Oktane wrote:*   

>  *MoonWalker wrote:*    *Oktane wrote:*   YAY! I ran this before bootstrapping and it completed without any errors 
> 
> ```
> emerge --nodeps --oneshot gcc-config
> ```
> ...

 Yes, it's cleaner, I agree. But the base of the problem remains and who know when it pops up next time  :Confused: 

----------

## MoonWalker

 *slycordinator wrote:*   

> For the C-compiler problems... it could be that you are using CFLAGS extensions for the wrong version of gcc.
> 
> Like starting with 3.4 you used -march just to tell the architechure and -mtune to compile optimized for that arch.  But with versions before that one, -march alone does the optimization and it doesn't understand -mtune at all.

 Well this info isn't correct, reading the gcc manpage it says

```
Moreover, specifying -march=cpu-type implies -mtune=cpu-type

-mcpu=cpu-type

 A deprecated synonym for -mtune
```

 and I think one have to belive the man page or?

----------

## Deranger

I might have an workaround for GRUB. I cannot try it out because I'm not at  home right now, but how about re-emerging libstdc++-v3?

```

emerge libstdc++-v3

emerge grub

```

----------

## MoonWalker

 *Oktane wrote:*   

> I might have an workaround for GRUB. I cannot try it out because I'm not at  home right now, but how about re-emerging libstdc++-v3?
> 
> ```
> 
> emerge libstdc++-v3
> ...

 I haven't tested it as I'm compiling kernel right now, but wouldn't libstdc++-v3 have been (re)emerged when I did a #emerge -e system && emerge -e system ?

----------

## nase

hi dudes,

I currently running this tutorial on X86_64 (xeon!) and at the moment I'm at the bootstrapping and emerge system and I think it should work.

(I'm tryin since 1 week to make gentoo running on this workstation 32bit all fine 64bit a hell of compilling errors. Would be a nice story.)

g.

----------

## MoonWalker

WARNING!

module-init-tools-3.1 have a bug that hang (at least some boxes) on boot. The safe route is

```
echo ">=sys-apps/module-init-tools-3.1" >> /etc/portage/package.mask
```

Keep track of the bug here

----------

## flens

Hi everybody.

I am a little confused about all those bugs coming up since the 2004.3 release. I did a GentooHandbookStage3install -2004.2 via knoppix- a couple weeks ago on my notebook and it went beatifully. In about two weeks I will begin to reinstall Gentoo via this guide and gentoo liveCD but with the "stable" x86 arch.  As of now, will I have to deal with the same problems or are all these bugs just ~x86 specific?

thanks!

----------

## Imago

 *MoonWalker wrote:*   

>  *Oktane wrote:*    *MoonWalker wrote:*   So basicly it doesn't change anything, gcc-config still is the "black cheap" here. 
> 
> Well, at least bootstrap passes fine  Yes, it's cleaner, I agree. But the base of the problem remains and who know when it pops up next time 

 

Indeed the problem isnt resolved by the newer gcc-config version.Its still complaining about:

```

usr/bin/gcc-config: profile does not exist or invalid setting for /etc/env.d/gcc/i686-pc-linux-gnu-3.4.3 

```

I did some research in gcc-config/bugzilla and the forums and found out that they recently changed the path, where the gcc libs are installed,  from /use/lib/gcc-lib to /usr/lib/gcc.

The problem is that gcc-config doesnt seems to know that, so for gcc-3.4.3 (and 3.4.2) gcc-config fails to find the gcc libraries. That results in the error message about the non-existing profile. However gcc-config doesnt really depends on that library check, so it continues it work although the check failed. The problem with the older gcc-config version(1.3.6-r4) is that somehow during bootstrappingthe string that should set the current gcc profile contains the error message. Of course that breaks everything  :Wink: .

gcc-config-1.3.7 sets everything correctly so everything runs fine during bootstrap, but still complains about the missing profile.

I filed a bug for this:  #72557, and included a small patch.

(Note: patch applies to gcc-config 1.3.6-r3 not to 1.3.7, also it should be easy to make a similiar patch for 1.3.7)

With it gcc-config runs fine and bootstrap seems to be okay. I will start now another bootstrap to test it

(I cant remember how many bootstraps i started the last days *g*)

CU

 Imago

----------

## MoonWalker

Hurrey! yes, that's it. Thanks for your research Imago, now lets hope the devs go to work on this asap. It's almost an   :Embarassed:   for the devs, well it is.

----------

## MoonWalker

Well I'm now at the time for reboot, finally. But being new to 2.6 kernel, one thing puzzles me...  In the tutorial, I can't find anywere about copying the bzImage over to /boot, isn't this required anymore? I figure the last parameter in the #make oneliner, install, may take care of this, but want to be sure or reboot will be a dissapointment I guess.

----------

## Imago

yes, the make install for the kernel sources copies bzImage to /boot/vmlinuz and IIRC also the System.map.

But imho its always safe to doublecheck and take a look into /boot and  look if the kernel image is there and its also the same like the one you entered in grub.conf

CU

  Imago

----------

## UncleAelfrich

I have been trying (unsuccessfully) to get a gentoo box running using this tutorial with the 2004.3 miinimal install.  For my current attempt I emerged gcc-config (as suggested here) AND edited CFLAGS to include both -march=athlon-tbird AND -mtune=athlon-tbird.

My install stopped with this error:

 *Quote:*   

> configure: error: C compiler cannot create executables
> 
> configure: error: /bin/sh './configure' failed for autoconf-lib-link
> 
> ERROR: sys-devel/gettext-0.14.1 failed
> ...

 

I'm confused as to which "fix" should FIX this error ... or should I just wait a few days and hope (pray) this whole 2004.3 mess gets straightened out.

----------

## MoonWalker

 *[Imago] wrote:*   

> yes, the make install for the kernel sources copies bzImage to /boot/vmlinuz and IIRC also the System.map.
> 
> But imho its always safe to doublecheck and take a look into /boot and  look if the kernel image is there and its also the same like the one you entered in grub.conf
> 
> CU
> ...

 OK - booted ok, almost. A few minor issues which was more or less expected. I tried a nic module which possibly didn't match and it didn't  :Smile:  so I will go back to standard. But I have 2 questions:

As this is supposed to be a pure server, is there really any point in having ACPI support setup? 

Same thing with sound, there is a sound chip on the mobbo but it will hardly be used, at least not in this setup. It must be ok to exclude all sound support in the kernel or?

----------

## Imago

@UncleAelfrich

Hmm maybe you can post the config.log? Otherwise its relative hard to understand why the configure script actually failed.

Although there are quite a few threads here with emerge stopping at the gettext package, i think it was a perl issue. Maybe you can also look after that.

@MoonWalker

sound support doesnt really make sense  :Wink: 

For ACPI support im not sure. I normally include it in my kernel.

CU

 Imago

----------

## MoonWalker

 *[Imago] wrote:*   

> 
> 
> @MoonWalker
> 
> sound support doesnt really make sense 
> ...

  Ok, my "nightmare" is just that the server will go to sleep because noone have been hammering on the keyboard for the last 24 hours... :Smile:  if you see my point. But it maybe is a question of configuration as well.

----------

## comprookie2000

This; 

Selecting fast mirrors

-------------------------

# mirrorselect -a -s4 -o | grep 'GENTOO_MIRRORS=' >> /mnt/gentoo/etc/make.conf

Is a pain in the arce! some mirrors will go off line in the middle of a huge emerge!

----------

## slycordinator

 *comprookie2000 wrote:*   

> This; 
> 
> Selecting fast mirrors
> 
> -------------------------
> ...

 

Then you can make a new GENTOO_MIRRORS= line which doesn't have that mirror in it.

----------

## -TooL

Thanks Ali3n for the help!  Here is my nbench score for my linux box using this guide (and his help):

 *Quote:*   

> BYTEmark* Native Mode Benchmark ver. 2 (10/95)
> 
> Index-split by Andrew D. Balsa (11/97)
> 
> Linux/Unix* port by Uwe F. Mayer (12/96,11/97)
> ...

 

----------

## kimchi_sg

I tried to nptl-install using the tuorial, but when I run /lib/libc.so.6 it says:

...

Available extensions:

...

linuxthreads-0.10 by Xavier Leroy

...

which means my system is still not NPTL-enabled, I presume.

How do I enable NPTL now? Should I emerge glibc again? Or re-install?

I'm using ali3nx's make.conf (changed only CHOST and CFLAGS to match my sempron processor), and kernel .config.

P.S. Both the gcc-config bug and the gettext-perl dependency bug showed up during the install.  :Sad: 

----------

## slycordinator

 *kimchi_sg wrote:*   

> I tried to nptl-install using the tuorial, but when I run /lib/libc.so.6 it says:
> 
> ...
> 
> Available extensions:
> ...

 

Add nptlonly to your USE flag list and then remerge glibc.

edit: What it's doing is when you have USE="nptl" it compiles glibc twice, once with linuxthreads and once with nptl but it defaults to using the old linuxthreads version (this is the standard way that most linuxes do).

When you add nptlonly to the list (USE="nptl nptlonly") it compiles glibc once, and obviously only has the nptl version.

----------

## MoonWalker

 *slycordinator wrote:*   

> 
> 
> Add nptlonly to your USE flag list and then remerge glibc.
> 
> edit: What it's doing is when you have USE="nptl" it compiles glibc twice, once with linuxthreads and once with nptl but it defaults to using the old linuxthreads version (this is the standard way that most linuxes do).

 Are you sure about this, in the ebuild it says it will use nptl by default with just USE="nptl"?

----------

## Imago

I only used nptl in my use flags, but /lib/libc.so.6 shows my "Native POSIX Threads Library" as expected.

but another point:

i stumbled about two other questions in the bootstrap procedure. I posted them here, because i thougth they would get more attention there than in the middle of a 14-side-thread  :Wink: 

anyway maybe someone of "our bootstrap experienced" here can also take a look at it  :Wink: 

Last question:

Whats the reason why ali3nx put every available use flag in the USE Flag of his make.conf? I bet on a server you actually dont need 90% of them and even on a desktop most of them are only needed for special cases. So it only installs you a lot of unneeded stuff during emerge system and increases the danger of any strange packet get stucked during install.

So in my personal opinion its better du reduce use flags to the minimum during bootstrap and emerge system and then add them "as you need them" when configuring the rest of the system.

Luckily we have that nice --newuse option for emerge  :Wink: 

CU

 Imago

----------

## MoonWalker

 *[Imago] wrote:*   

> I only used nptl in my use flags, but /lib/libc.so.6 shows my "Native POSIX Threads Library" as expected.

 

Well for # /lib/libc.so.6 I got

```
merc2 ~ # /lib/libc.so.6

GNU C Library 20041102 release version 2.3.4, by Roland McGrath et al.

Copyright (C) 2004 Free Software Foundation, Inc.

This is free software; see the source for copying conditions.

There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A

PARTICULAR PURPOSE.

Compiled by GNU CC version 3.4.3  (Gentoo Linux 3.4.3, ssp-3.4.3-0, pie-8.7.6.6).

Compiled on a Linux 2.6.8 system on 2004-11-24.

Available extensions:

        GNU libio by Per Bothner

        crypt add-on version 2.1 by Michael Glad and others

        linuxthreads-0.10 by Xavier Leroy

        The C stubs add-on version 2.1.2.

        GNU Libidn by Simon Josefsson

        BIND-8.2.3-T5B

        libthread_db work sponsored by Alpha Processor Inc

        NIS(YP)/NIS+ NSS modules 0.19 by Thorsten Kukuk

Thread-local storage support included.
```

 but for # /lib/tls/libc.so.6 I got

```
GNU C Library 20041102 release version 2.3.4, by Roland McGrath et al.

Copyright (C) 2004 Free Software Foundation, Inc.

This is free software; see the source for copying conditions.

There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A

PARTICULAR PURPOSE.

Compiled by GNU CC version 3.4.3  (Gentoo Linux 3.4.3, ssp-3.4.3-0, pie-8.7.6.6).

Compiled on a Linux 2.6.8 system on 2004-11-24.

Available extensions:

        GNU libio by Per Bothner

        crypt add-on version 2.1 by Michael Glad and others

        Native POSIX Threads Library by Ulrich Drepper et al

        The C stubs add-on version 2.1.2.

        GNU Libidn by Simon Josefsson

        BIND-8.2.3-T5B

        NIS(YP)/NIS+ NSS modules 0.19 by Thorsten Kukuk

Thread-local storage support included.
```

 so I think that's right as bare use of 'nptl' also leave fallback support for old packages. But as soon as you compile a new package it's supposed to use the /lib/tls/libc.so.6 version. I don't know how to check if this really is happening though, and if there is packages that must use the old threeding model?.

 *[Imago] wrote:*   

> 
> 
> but another point:
> 
> i stumbled about two other questions in the bootstrap procedure. I posted them here, because i thougth they would get more attention there than in the middle of a 14-side-thread 
> ...

 I'm not that experiences, so can't really make any valid comments in the new threed, but it seam like you have found something there. I would suggest that you go ahead and file a bug, as I think devs doesn't read the forum that much.

 *[Imago] wrote:*   

> 
> 
> Last question:
> 
> Whats the reason why ali3nx put every available use flag in the USE Flag of his make.conf? I bet on a server you actually dont need 90% of them and even on a desktop most of them are only needed for special cases. So it only installs you a lot of unneeded stuff during emerge system and increases the danger of any strange packet get stucked during install.
> ...

 I think he's spoiled with big and fast boxes   :Laughing: 

I sure didn't use all his flags, bootstrapped with just USE="nptl" and then added my own set of of flags I have defined since before, which have a lot of -flag's as it's a server box and I don't want X and other bloat. Bottom line I think is, ali3nx expect us to use our own brains as well and some common sense  :Laughing: 

----------

## Imago

concerning the libc.so.6 questions, have look at this thread

to sum it up:

installing latest ~x86 glibc with "nptl": glibc is installed twice as MoonWalker mentioned in /lib and /lib/tls. while the one in /lib/tls with NPTL support is used by default(you can check that with "ldd `which $prog`")

installing latest ~x86 with "nptl nptlonyl": installs only the NPTL libc in /lib

installing the latest x86 glibc with "nptl": only the nptl libc is installed in /lib

Cu

 Imago

----------

## dazcon5

noob question...  I have tried several of the fixes in this topic but I can't get past a glibc error when bootstrapping even though I have installed the 2.6 headers.  I am installing from a knoppix 3.6 cd and have been following the tutorial to the letter.  I started with a 2004.3 stage 1.

>output

 * Checking gcc for __thread support ... yes

 * Checking kernel version (>=2.6.5) ... no

 * You need a kernel of at least version 2.6.5

 * for NPTL support!

!!! ERROR: sys-libs/glibc-2.3.4.20041102 failed.

!!! Function check_nptl_support, Line 170, Exitcode 0

!!! Kernel version too low!

----------

## Imago

hmm maybe the kernel you booted from the knoppix cd is not a 2.6.x kernel?

----------

## kimchi_sg

I'm quite sure I had nptl and nptlonly in my USE flag during install.

```
enoch@steelbox ~ $ cat /etc/make.conf | grep nptl

     nagios-ssh native net network nis nptl ntplonly ntlm nvidia nviz oav ocaml\
```

Dunno why emerge glibc appears to ignore nptlonly in my case, cos /lib/tls/libc.so.6 reports nptl extension as MoonWalker has posted.

Nvm... I'll leave this setup for a week then blow it away and redo with USE="nptl nptlonly" in make.conf.  :Wink: 

EDIT: Darn it! Relooking my post I discovered the "ntplonly" typo, instead of "nptlonly". Argh!

*narrowly resists urge to bang head against screen*

----------

## hielvc

dazcon5

When you boot with knoppix scroll through the boot options and see if they have an "smp" option. That should be a 2.6 kernel.

----------

## XyryX

/lib/libc.so.6 even after compiling with USE="nptl nptlonly" still always shows the normal threads message..

I also checked the /lib/tls/ directory and it also shows the same message..

This is after I bootstrap / emerge system btw..   If I compile it previously it works fine..

Actually.. the one question I really want answered..

How can some of us be getting all these errors yet others do not ???  Is it simply anybody after the 19/20th November is downloading bugged code ???

Personally I have used 5.5 GB of downloads in the last week..  And the only comps connected to that connection are the 2 I am attempting to get Gentoo running on..   Mind you I have done about 12 complete reinstalls trying to get this working..

----------

## geekporn

this rocks, just got through the bootstrap, something must have changed in the last two days, which is good.  Thanks to everyone for all the posts and the help! now lets see if emerge system will work!

----------

## slycordinator

 *MoonWalker wrote:*   

>  *slycordinator wrote:*   
> 
> Add nptlonly to your USE flag list and then remerge glibc.
> 
> edit: What it's doing is when you have USE="nptl" it compiles glibc twice, once with linuxthreads and once with nptl but it defaults to using the old linuxthreads version (this is the standard way that most linuxes do). Are you sure about this, in the ebuild it says it will use nptl by default with just USE="nptl"?

 

Yes.  I am sure.  That was the ONLY WAY I was able to get nptl to be used.

----------

## CompNerd

I have heard many complaints about gcc 3.4.3 breaking gcc-config.  The following is a pretty good fix if you are using ~x86 to bootstrap.

When bootstrap fails:

mkdir /usr/lib/gcc-lib/$CHOST

ln -s /usr/lib/gcc/$CHOST/3.4.3 /usr/lib/gcc-lib/$CHOST/3.4.3

You should replace $CHOST with the proper CHOST, although BASH should be smart enough to do the replacement for you (better safe than sorry...even though I am using a ~x86 system  :Rolling Eyes: )

CompNerd

----------

## Hobbit_HK

Great guide, but maybe you should add the /etc/locales.build file? So you can choose what locales you want to build... Saves times when installing glibc (the Gentoo Handbook does that)

----------

## Imago

@CompNerd

to avoid the annoying process of "starting bootstrap, bootstrap failed,fixing,bootstrop restart" its much easier to apply the patch to gcc-config i posted in bugzilla, before starting to bootstrap. See Bug: #72557

```

wget -O /root/gcc-config.patch http://bugs.gentoo.org/attachment.cgi?id=44780

cd /usr/bin

patch < /root/gcc-config.patch

```

@Hobbit_HK

i agree it should be added.But atm this doesnt work during bootstraping. See Bug #72596

[edited: fixed typo, thx to kimchi_sg]

Cu

  ImagoLast edited by Imago on Sun Nov 28, 2004 1:12 pm; edited 1 time in total

----------

## kimchi_sg

 *slycordinator wrote:*   

>  *MoonWalker wrote:*    *slycordinator wrote:*   
> 
> Add nptlonly to your USE flag list and then remerge glibc.
> 
> edit: What it's doing is when you have USE="nptl" it compiles glibc twice, once with linuxthreads and once with nptl but it defaults to using the old linuxthreads version (this is the standard way that most linuxes do). Are you sure about this, in the ebuild it says it will use nptl by default with just USE="nptl"? 
> ...

 

i solemnly echo that. after recompiling glibc with nptlonly set, only then did it default to nptl in libc.so.6.

now redoing install... see if i can get it right from the start. and slim down the set of USE flags that ali3nx provided us.

----------

## Bob P

 *[Imago] wrote:*   

> Last question:
> 
> Whats the reason why ali3nx put every available use flag in the USE Flag of his make.conf? I bet on a server you actually dont need 90% of them and even on a desktop most of them are only needed for special cases. So it only installs you a lot of unneeded stuff during emerge system and increases the danger of any strange packet get stucked during install.

 

in spite of how complete his listing of USE flags may appear at the casual glance, they are by no means exhaustive.  if you look closely, you won't find many important things for desktop installations like "alsa" or "ldap" or "samba".  i added those, and i also added "ithreads", which i think is particulary spongeworthy for NPTL.

maybe he used so many USE flags because of the name on this thread:  The Developer's Method.  Software developers have to worry about things like compatability, while people designing servers worry more about optimizing for speed in performing an extremely limited number of tasks.

----------

## Bob P

compnerd, every time i see your avatar, i mistakenly think that ali3nx is posting a valuable update to this thread!   :Embarassed:   i wish guys on this forum would all use unique avatars.

----------

## kimchi_sg

 *[Imago] wrote:*   

> @CompNerd
> 
> to avoid the annoying process of "starting bootstrap, bootstrap failed,fixing,bootstrop restart" its much easier to apply the patch to gcc-config i posted in bugzilla, before starting to bootstrap. See Bug: #72557
> 
> ```
> ...

 

a little typo there... the last line should read "patch < /root/gcc-config.patch"  :Wink: 

----------

## Imago

of course  :Wink: 

fixed that. Thx

CU

 Imago

----------

## thecrazyperson_ws

 *Oktane wrote:*   

>  *-TooL wrote:*   So, do we use the 2004.2 cd to boot smp?
> 
> The new 2004.3 miniman and live cd wont give the smp option. 
> 
> 2004.3 uses 2.6 (SMP) kernel as a default, so you don't have to worry about it.

 

Um... didn't I say that a while back?

dazcon5:  when booting knoppix, instead of just pushing enter at the boot prompt, type "knoppix26" then push enter.  You're greeted with kernel 2.6.6 or newer.  I also said this a long time ago in this thread.  

To all wondering if their boxes are NPTL enabled: YES.  instead of 

```
# /lib/libc.so.6
```

do

```
# /lib/tls/libc.so.6
```

.  the one installed in /lib/tls is the default.

Also, I don't understand why everybody's having so much trouble.  If you follow the tutorial to the letter (only changing architecture specific stuff) it should work the first time.  It did for me.  I'm using Gentoo 2004.3 which i compiled from stage 1 onward.  It has NPTL support, and it's running kernel 2.6.9-nitro4 and KDE 3.3.1, both compiled with GCC 3.4.3 (the default for ~x86 installations).  I daresay that this is the fastest I have ever seen my machine run.  It eats 50.00 loads for breakfast, and it's only a P3-450.  

Just my two cents.

----------

## kimchi_sg

Thought this bug had been squashed already. But my bootstrap / emerge system (can't tell which one exactly) is still aborting with the last few lines being:

```
>>> md5 src_uri ;-) gettext-1.03.tar.gz

/usr/portage/eclass/perl-module.eclass: line 168: perl: command not found

...(several similar lines)...

make: *** No targets specified and no makefile found. Stop.
```

 :Sad: 

EDIT: For those who don't want to scroll back several pages for the solution to this one, emerge libperl && emerge system does the trick.

But it shows that something is still b0rked.  :Sad: 

System: sempron 2200+, nforce2, with stock stage1 x86 tarball. USE flags are same as provided make.conf, except added alsa, cdr, ithreads and removed any that starts with dvd.  :Wink:  CFLAGS is that of athlon-xp.

----------

## CompNerd

Imago, I didnt know about the patch.  I will look into that.

CompNerd

PS.  Sorry for confusing you all the time Bob P   :Embarassed: 

----------

## Imago

@CompNerd

no need for my patch anymore. gcc-config 1.3.6-r4 fixes the problem  :Wink: 

CU

 Imago

----------

## Deranger

And so does 1.3.7-r2  :Wink: 

----------

## ali3nx

hehe... The bleeding edge has triumphed once again   :Cool: 

Thanx for the cvs fix Travis   :Very Happy: 

----------

## Deranger

...And newest GRUB compiles too  :Razz: 

[ EDIT ] ...or not  :Neutral: 

----------

## rjw8703

Are all of the problems solved?

----------

## hielvc

If your quick  :Laughing: 

----------

## XyryX

Woot..

Ok Finally got everything compiled and booted and working..

New Nitro box is working sweetly..   But I have noticed a few errors I probably need to fix sooner rather than later..

In my log I get the following: 

```

Nov 30 12:49:18 Fenix-Server evdev: version magic '2.6.9-nitro4 preempt PENTIUM4 gcc-3.3' should be '2.6.9-nitro4 preempt PENTIUM4 gcc-3.4'

Nov 30 12:49:18 Fenix-Server modprobe: FATAL: Error inserting evdev (/lib/modules/2.6.9-nitro4/kernel/drivers/input/evdev.ko): Invalid module format

Nov 30 12:49:19 Fenix-Server chipreg: version magic '2.6.9-nitro4 preempt PENTIUM4 gcc-3.3' should be '2.6.9-nitro4 preempt PENTIUM4 gcc-3.4'

Nov 30 12:49:19 Fenix-Server mtdcore: version magic '2.6.9-nitro4 preempt PENTIUM4 gcc-3.3' should be '2.6.9-nitro4 preempt PENTIUM4 gcc-3.4'

Nov 30 12:49:19 Fenix-Server ichxrom: version magic '2.6.9-nitro4 preempt PENTIUM4 gcc-3.3' should be '2.6.9-nitro4 preempt PENTIUM4 gcc-3.4'

Nov 30 12:49:19 Fenix-Server modprobe: WARNING: Error inserting chipreg (/lib/modules/2.6.9-nitro4/kernel/drivers/mtd/chips/chipreg.ko): Invalid module format

Nov 30 12:49:19 Fenix-Server modprobe: WARNING: Error inserting mtdcore (/lib/modules/2.6.9-nitro4/kernel/drivers/mtd/mtdcore.ko): Invalid module format

Nov 30 12:49:19 Fenix-Server modprobe: FATAL: Error inserting ichxrom (/lib/modules/2.6.9-nitro4/kernel/drivers/mtd/maps/ichxrom.ko): Invalid module format

Nov 30 12:49:19 Fenix-Server uhci_hcd: version magic '2.6.9-nitro4 preempt PENTIUM4 gcc-3.3' should be '2.6.9-nitro4 preempt PENTIUM4 gcc-3.4'

Nov 30 12:49:19 Fenix-Server modprobe: FATAL: Error inserting uhci_hcd (/lib/modules/2.6.9-nitro4/kernel/drivers/usb/host/uhci-hcd.ko): Invalid module format

Nov 30 12:49:20 Fenix-Server uhci_hcd: version magic '2.6.9-nitro4 preempt PENTIUM4 gcc-3.3' should be '2.6.9-nitro4 preempt PENTIUM4 gcc-3.4'

Nov 30 12:49:20 Fenix-Server modprobe: FATAL: Error inserting uhci_hcd (/lib/modules/2.6.9-nitro4/kernel/drivers/usb/host/uhci-hcd.ko): Invalid module format

Nov 30 12:49:20 Fenix-Server snd: version magic '2.6.9-nitro4 preempt PENTIUM4 gcc-3.3' should be '2.6.9-nitro4 preempt PENTIUM4 gcc-3.4'

Nov 30 12:49:20 Fenix-Server modprobe: WARNING: Error inserting snd (/lib/modules/2.6.9-nitro4/kernel/sound/core/snd.ko): Invalid module format

Nov 30 12:49:20 Fenix-Server snd_seq_device: version magic '2.6.9-nitro4 preempt PENTIUM4 gcc-3.3' should be '2.6.9-nitro4 preempt PENTIUM4 gcc-3.4'

Nov 30 12:49:20 Fenix-Server modprobe: WARNING: Error inserting snd_seq_device (/lib/modules/2.6.9-nitro4/kernel/sound/core/seq/snd-seq-device.ko): Invalid m$

Nov 30 12:49:20 Fenix-Server snd_rawmidi: version magic '2.6.9-nitro4 preempt PENTIUM4 gcc-3.3' should be '2.6.9-nitro4 preempt PENTIUM4 gcc-3.4'

Nov 30 12:49:20 Fenix-Server modprobe: WARNING: Error inserting snd_rawmidi (/lib/modules/2.6.9-nitro4/kernel/sound/core/snd-rawmidi.ko): Invalid module form$

Nov 30 12:49:20 Fenix-Server snd_mpu401_uart: version magic '2.6.9-nitro4 preempt PENTIUM4 gcc-3.3' should be '2.6.9-nitro4 preempt PENTIUM4 gcc-3.4'

Nov 30 12:49:20 Fenix-Server modprobe: WARNING: Error inserting snd_mpu401_uart (/lib/modules/2.6.9-nitro4/kernel/sound/drivers/mpu401/snd-mpu401-uart.ko): I$

Nov 30 12:49:20 Fenix-Server gameport: version magic '2.6.9-nitro4 preempt PENTIUM4 gcc-3.3' should be '2.6.9-nitro4 preempt PENTIUM4 gcc-3.4'

Nov 30 12:49:20 Fenix-Server modprobe: WARNING: Error inserting gameport (/lib/modules/2.6.9-nitro4/kernel/drivers/input/gameport/gameport.ko): Invalid modul$

Nov 30 12:49:20 Fenix-Server snd_page_alloc: version magic '2.6.9-nitro4 preempt PENTIUM4 gcc-3.3' should be '2.6.9-nitro4 preempt PENTIUM4 gcc-3.4'

Nov 30 12:49:20 Fenix-Server modprobe: WARNING: Error inserting snd_page_alloc (/lib/modules/2.6.9-nitro4/kernel/sound/core/snd-page-alloc.ko): Invalid modul$

Nov 30 12:49:20 Fenix-Server snd_timer: version magic '2.6.9-nitro4 preempt PENTIUM4 gcc-3.3' should be '2.6.9-nitro4 preempt PENTIUM4 gcc-3.4'

Nov 30 12:49:20 Fenix-Server modprobe: WARNING: Error inserting snd_timer (/lib/modules/2.6.9-nitro4/kernel/sound/core/snd-timer.ko): Invalid module format

Nov 30 12:49:20 Fenix-Server snd_pcm: version magic '2.6.9-nitro4 preempt PENTIUM4 gcc-3.3' should be '2.6.9-nitro4 preempt PENTIUM4 gcc-3.4'

Nov 30 12:49:20 Fenix-Server modprobe: WARNING: Error inserting snd_pcm (/lib/modules/2.6.9-nitro4/kernel/sound/core/snd-pcm.ko): Invalid module format

Nov 30 12:49:20 Fenix-Server snd_ac97_codec: version magic '2.6.9-nitro4 preempt PENTIUM4 gcc-3.3' should be '2.6.9-nitro4 preempt PENTIUM4 gcc-3.4'

Nov 30 12:49:20 Fenix-Server modprobe: WARNING: Error inserting snd_ac97_codec (/lib/modules/2.6.9-nitro4/kernel/sound/pci/ac97/snd-ac97-codec.ko): Invalid m$

Nov 30 12:49:20 Fenix-Server snd_intel8x0: version magic '2.6.9-nitro4 preempt PENTIUM4 gcc-3.3' should be '2.6.9-nitro4 preempt PENTIUM4 gcc-3.4'

Nov 30 12:49:20 Fenix-Server modprobe: FATAL: Error inserting snd_intel8x0 (/lib/modules/2.6.9-nitro4/kernel/sound/pci/snd-intel8x0.ko): Invalid module format

Nov 30 12:49:21 Fenix-Server parport: version magic '2.6.9-nitro4 preempt PENTIUM4 gcc-3.3' should be '2.6.9-nitro4 preempt PENTIUM4 gcc-3.4'

Nov 30 12:49:21 Fenix-Server modprobe: WARNING: Error inserting parport (/lib/modules/2.6.9-nitro4/kernel/drivers/parport/parport.ko): Invalid module format

Nov 30 12:49:21 Fenix-Server parport_pc: version magic '2.6.9-nitro4 preempt PENTIUM4 gcc-3.3' should be '2.6.9-nitro4 preempt PENTIUM4 gcc-3.4'

Nov 30 12:49:21 Fenix-Server modprobe: FATAL: Error inserting parport_pc (/lib/modules/2.6.9-nitro4/kernel/drivers/parport/parport_pc.ko): Invalid module for$

Nov 30 12:49:21 Fenix-Server gameport: version magic '2.6.9-nitro4 preempt PENTIUM4 gcc-3.3' should be '2.6.9-nitro4 preempt PENTIUM4 gcc-3.4'

Nov 30 12:49:21 Fenix-Server ns558: version magic '2.6.9-nitro4 preempt PENTIUM4 gcc-3.3' should be '2.6.9-nitro4 preempt PENTIUM4 gcc-3.4'

Nov 30 12:49:21 Fenix-Server modprobe: WARNING: Error inserting gameport (/lib/modules/2.6.9-nitro4/kernel/drivers/input/gameport/gameport.ko): Invalid modul$

Nov 30 12:49:21 Fenix-Server modprobe: FATAL: Error inserting ns558 (/lib/modules/2.6.9-nitro4/kernel/drivers/input/gameport/ns558.ko): Invalid module format

Nov 30 12:49:22 Fenix-Server gameport: version magic '2.6.9-nitro4 preempt PENTIUM4 gcc-3.3' should be '2.6.9-nitro4 preempt PENTIUM4 gcc-3.4'

Nov 30 12:49:22 Fenix-Server analog: version magic '2.6.9-nitro4 preempt PENTIUM4 gcc-3.3' should be '2.6.9-nitro4 preempt PENTIUM4 gcc-3.4'

Nov 30 12:49:22 Fenix-Server modprobe: WARNING: Error inserting gameport (/lib/modules/2.6.9-nitro4/kernel/drivers/input/gameport/gameport.ko): Invalid modul$

Nov 30 12:49:22 Fenix-Server modprobe: FATAL: Error inserting analog (/lib/modules/2.6.9-nitro4/kernel/drivers/input/joystick/analog.ko): Invalid module form$

Nov 30 12:49:22 Fenix-Server ehci_hcd: version magic '2.6.9-nitro4 preempt PENTIUM4 gcc-3.3' should be '2.6.9-nitro4 preempt PENTIUM4 gcc-3.4'

Nov 30 12:49:22 Fenix-Server uhci_hcd: version magic '2.6.9-nitro4 preempt PENTIUM4 gcc-3.3' should be '2.6.9-nitro4 preempt PENTIUM4 gcc-3.4'

Nov 30 12:49:25 Fenix-Server eth0: link up, 100Mbps, full-duplex, lpa 0x45E1

Nov 30 12:49:26 Fenix-Server dhcpcd[8650]: DHCP_NAK server response received

Nov 30 12:49:29 Fenix-Server sshd[8813]: Server listening on :: port 22.

Nov 30 12:49:29 Fenix-Server sshd[8813]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use.

```

Now its a web server so is any of that important ??

----------

## hielvc

Thats strange, taking a wild guess its like part of kernel was compiled with gcc-3.3 and the rest with gcc-3.4.3. Run " gcc-config -l " and then select gcc-3.4.3, " gcc-config < 3.4.3s number>"., mount /boot and "make clean && make && modules_install install" .

----------

## urfage

Fixing the GRUB problem:

Change lines 56 and 57 in /usr/portage/sys-boot/grub/grub-0.95.20040823.ebuild from:

```

    has_pie && CC="${tc-getCC} `test_flag -fno-pic` `test_flag -nopie`"

    has_ssp && CC="${tc-getCC} `test_flag -fno-stack-protector`"

```

to this:

```

    has_pie && CC="${CC} `test_flag -fno-pic` `test_flag -nopie`"

    has_ssp && CC="${CC} `test_flag -fno-stack-protector`"

```

For more commentary check out bug #70111.

----------

## Deranger

 *hielvc wrote:*   

> If your quick 

 

Haha, very true! FFS people, bootstrap, bootstrap ... while it passes!  :Laughing: 

----------

## XyryX

Ok..  I did the gcc-config fix where you create a link to /usr/lib/gcc and then recompiled the kernel..  That fixed 99% of the errors I posted above..

Now I get the following error..   Only in logs mind you..

```

Dec  1 06:11:09 Fenix-Server ichxrom ichxrom_init_one(): Unable to register resource 0xff000000-0xffffffff - kernel bug?

Dec  1 06:11:09 Fenix-Server CFI: Found no ichxrom device at location zero

Dec  1 06:11:09 Fenix-Server JEDEC: Found no ichxrom device at location zero

<<removed the other thousand repeats in here btw..  All done in less than a second at boot..>>

Dec  1 06:11:09 Fenix-Server modprobe: FATAL: Error inserting ichxrom (/lib/modules/2.6.9-nitro4/kernel/drivers/mtd/maps/ichxrom.ko): No such device

```

Anybody know what that message refers to ???

----------

## taskara

hey,

if this guide is supposed to be for 2004.3, then there is no linux-headers to remove (stage1 comes with no linux-headers).

Also, in your make.conf you have accept_keywords="~x86"

is it possible for you to include a list of apps that need to be ~x86 for package.keywords in the howto, so that people don't get a fully ~x86 system?

also, perhaps you can include gcc 3.4 in the howto for 2004.3?

good work

----------

## Deranger

 *taskara wrote:*   

> hey,
> 
> if this guide is supposed to be for 2004.3, then there is no linux-headers to remove (stage1 comes with no linux-headers).
> 
> Also, in your make.conf you have accept_keywords="~x86"
> ...

 

Yeah, this has been discussed but looks like ali3nx hasn't edited tutorial, maybe he should.

Well, this guide is meant to be for those who are building bleeding edge box and therefor ACCEPT_KEYWORDS="~arch" are default, so it pulls GCC 3.4.3 automatically.

----------

## taskara

 *Oktane wrote:*   

>  *taskara wrote:*   hey,
> 
> if this guide is supposed to be for 2004.3, then there is no linux-headers to remove (stage1 comes with no linux-headers).
> 
> Also, in your make.conf you have accept_keywords="~x86"
> ...

 

righto, fair enough.

cheers

----------

## Hobbit_HK

 *[Imago] wrote:*   

> @CompNerd
> 
> @Hobbit_HK
> 
> i agree it should be added.But atm this doesnt work during bootstraping. See Bug #72596
> ...

 

Weird.. Worked for me... I've enabled the locales flags in package.use and it worked...

```

echo "sys-libs/glibc userlocales" >> /etc/portage/package.use

nano -w /etc/locales.build

```

No mroe 100 locales... just my 4

----------

## D1g1talS0ul

My system was spitting out the following error during bootstrap.sh

 *Quote:*   

> 
> 
> checking sysdep dirs... sysdeps/i386/elf linuxthreads/sysdeps/unix/sysv/linux/i386 linuxthreads/sysdeps/unix/sysv/linux linuxthreads/sysdeps/pthread sysdeps/pthread linuxthreads/sysdeps/unix/sysv linuxthreads/sysdeps/unix linuxthreads/sysdeps/i386/i686 linuxthreads/sysdeps/i386 libidn/sysdeps/unix sysdeps/unix/sysv/linux/i386 sysdeps/unix/sysv/linux sysdeps/gnu sysdeps/unix/common sysdeps/unix/mman sysdeps/unix/inet sysdeps/unix/sysv/i386 sysdeps/unix/sysv sysdeps/unix/i386 sysdeps/unix sysdeps/posix sysdeps/i386/i686/fpu sysdeps/i386/i686 sysdeps/i386/i486 sysdeps/i386/fpu sysdeps/i386 sysdeps/wordsize-32 sysdeps/ieee754/ldbl-96 sysdeps/ieee754/dbl-64 sysdeps/ieee754/flt-32 sysdeps/ieee754 sysdeps/generic/elf sysdeps/generic
> 
> checking for a BSD-compatible install... /bin/install -c
> ...

 

I found another thread that helped me fix the problem by deleting /usr/bin/gcc and ln -s /usr/i686-pc-linux-gnu/gcc-bin/3.4/gcc /usr/bin/gcc

Does anyone know if this will cause adverse side affects or other errors as I progress further down ali3nx's "The sooper dooper spectacular bootstrap-bugfixed oneliner magic"?  I'm using an older boot CD that supports reiser4.  I figure I came across this issue because I didn't use a gentoo 2004.3 live CD.

----------

## ali3nx

i've decided it's time to come out of my mid winter hybernation and update the tut once again. onliner updated for the gcc-config bug.

----------

## ali3nx

Added a network config section, cleaned up lots of code examples to better reflect 2004.3 and more grammar and spelling edits  :Embarassed: 

----------

## sgtrock

ali3nx:

Is gentoo.eliteitminds.com supposed to be where the tutorial is kept?  DNS keeps complaining that it doesn't exist.

TIA,

----------

## ali3nx

 *sgtrock wrote:*   

> ali3nx:
> 
> Is gentoo.eliteitminds.com supposed to be where the tutorial is kept?  DNS keeps complaining that it doesn't exist.
> 
> TIA,

 

Thats my gentoo mirror subdomain which has been without a host for some time. I'm expecting a dual 3.0 xeon in the coming week for a mirror host. So with regards to your question.. no but you can replace that url with any other suitable official gentoo linux mirror.

----------

## hielvc

ali3nx for a very interesting read which negates doing a stage1 and bootstrap as buggy read rac's post here A more robust installation method also semi hinted at by robmoss here GCC 3.4.3 is upon us! on pg 3

To sumurise 

```

tar xjvpf stage3<your version>

<put in your USE flags and CFLAGS>

emerge -C linux-headers && emerge linux26-headers && emerge glibc binutils gcc && emerge -e system
```

----------

## Deranger

ali3nx, I am not sure if you are aware of this, but here it goes:

Within the new ~x86 baselayout, hostnames/domainnames are no longer set by /etc/hostname or /etc/{nis|dns}domainname. Proper way to set hostnames/domainnames are /etc/conf.d/hostname and /etc/conf.d/domainname...

----------

## rjw8703

To sumurise Code: 

tar xjvpf stage3<your version> 

<put in your USE flags and CFLAGS> 

emerge -C linux-headers && emerge linux26-headers && emerge glibc binutils gcc && emerge -e system 

Don't you need to do an emerge --sync in there someplace?

----------

## Deranger

 *rjw8703 wrote:*   

> To sumurise Code: 
> 
> tar xjvpf stage3<your version> 
> 
> <put in your USE flags and CFLAGS> 
> ...

 

Of course, after you have chrooted, just like handbook and this guide says...

I tried that rac's method and it works very well. I grabbed generic x86 stage3ball, boostrapped as usual, then did emerge -e system twice...

----------

## kimchi_sg

 *rjw8703 wrote:*   

> To sumurise Code: 
> 
> tar xjvpf stage3<your version> 
> 
> <put in your USE flags and CFLAGS> 
> ...

 

Expand the tarball and mount the proc filesystem into /mnt/gentoo/proc before chrooting into /mnt/gentoo and doing all the emerges.

If sticking more closely to the handbook, right before chrooting one would d/l the latest snapshot of the portage tree, expand it to /mnt/gentoo/usr, then do a emerge sync right after chrooting. It's supposed to save time doing emerge sync, i suppose.

Sounds like time for yet another tuitorial edit...  :Wink: 

----------

## l0tus_

 *Oktane wrote:*   

> ... I grabbed generic x86 stage3ball, boostrapped as usual, then did emerge -e system twice...

 

why do u emerge -e system twise?

----------

## Deranger

 *l0tus_ wrote:*   

>  *Oktane wrote:*   ... I grabbed generic x86 stage3ball, boostrapped as usual, then did emerge -e system twice... 
> 
> why do u emerge -e system twise?

 

To ensure toolchain's completeness  :Wink: 

----------

## hielvc

rac's point was that because of problems with some functions in portage

that bootstrapping and then emerge system left some packages in libo. And as most

observers here have noticed the constant battles with circular dependencies and 

broken ebuilds can drive you batty. So instead of doing a bootstrap you 

```

emerge --oneshot glibc binutils gcc    > for a regular, non ~x86

 <Do this for ~x86 if you want nptl>

emerge -C linux-headers && emerge --oneshot linux26-headers && emerge --oneshot glibc binutils gcc

 <Then both groups do this>

 emerge system -e
```

 The first line replaces bootstrap. Its is building your toolchain. Then by

 running "emerge -e system" rebuilds your toolchain and everything else to a

 twice built toolchain and your USE and CFLAGES. Now you can do it a third or

 fourth time like robmoss,  but rob is running total bleeding edge and

 testing each a every package he installs to see if it works as the manual says.

 So he has to make certain that there are no other fudge factors when something fails.

 So the new super duper one liner would look like this. 

```

 env-update && source /etc/profile && emerge --oneshot --nodeps gcc-config && emerge linux26-headers &&  emerge --oneshot glibc binutils gcc && emerge -e system && emerge syslog-ng xinetd grub hotplug coldplug vixie-cron reiserfsprogs reiser4progs  sysfsutils udev dhcpcd && emerge --nodeps acpid ntp && rc-update add syslog-ng default && rc-update add net.eth0 default && rc-update add vixie-cron default && rc-update add xinetd default && rc-update add sshd default && rc-update add hotplug default && rc-update add coldplug default && rc-update add acpid default
```

EDIT:1 FIxing my normal screw ups like leaving out -e 

2 As Oktane said USE="-* build bootstrap" is not needed..

----------

## kimchi_sg

 *hielvc wrote:*   

> ...
> 
> So instead of doing a bootstrap you 
> 
> ```
> ...

 

I noticed that emerge info for a athlon xp stage 3 says that linux 2.4 headers are installed. So you'll have to do 

```
emerge -C linux-headers
```

 before 

```
USE="-* build bootstrap" emerge linux26-headers
```

No problems so far... I'm now compiling gcc 3.4.3 as part of the emerge -e system.  :Wink: 

<OT question>I noticed "emerge -e system" emerges 97 packages in all compared to "emerge system" in a stage 1 install with the same USE flags, which emerges only about 70 packages max. Any ideas why?</OT question>

----------

## Deranger

 *kimchi_sg wrote:*   

> I noticed that emerge info for a athlon xp stage 3 says that linux 2.4 headers are installed. So you'll have to do 
> 
> ```
> emerge -C linux-headers
> ```
> ...

 

USE="-* build bootstrap" is reduntant in this case (as far as I know...), I just emerged linux26-headers without any cmdline USE-flags.

-e stands for --emptytree, it "forgets" all installed packages and installs them again  :Wink: 

----------

## kimchi_sg

 *Oktane wrote:*   

>  *kimchi_sg wrote:*   I noticed that emerge info for a athlon xp stage 3 says that linux 2.4 headers are installed. So you'll have to do 
> 
> ```
> emerge -C linux-headers
> ```
> ...

 

"emerge -e system" just emerged linux26-headers all over again for the 2nd time.  :Smile:  Maybe this is why the first "emerge linux26-headers" is unnecessary now.

<OT>I'm wondering where the tree for a stage 1 "emerge system" comes from... I thought it'd be empty and hence "emerge system" on stage 1 would be the same as "emerge -e system" on a stage 3.</OT>

----------

## Deranger

 *kimchi_sg wrote:*   

> 
> 
> "emerge -e system" just emerged linux26-headers all over again for the 2nd time.  Maybe this is why the first "emerge linux26-headers" is unnecessary now.
> 
> 

 

No, it's not unnecessary. You need to unmerge linux-headers and emerge linux26-headers before proceeding or NPTL build will fuck up.

Like I said, emerge -e system recompiles everything again...

 *kimchi_sg wrote:*   

> 
> 
> <OT>I'm wondering where the tree for a stage 1 "emerge system" comes from... I thought it'd be empty and hence "emerge system" on stage 1 would be the same as "emerge -e system" on a stage 3.</OT>

 

Read that "A more robust installation method" thread and you'll understand  :Wink: 

----------

## slycordinator

 *Oktane wrote:*   

> No, it's not unnecessary. You need to unmerge linux-headers and emerge linux26-headers before proceeding or NPTL build will fuck up.

 

Correct.

If you have no linux headers at all (don't have linux-headers or linux26-headers) when you do "emerge system" it will automatically install linux-headers.  And in an NPTL build you want linux26-headers, not linux-headers so this will screw everything up.

----------

## kimchi_sg

My 1.5th* stage3 install result so far (still compiling sysfsutils): no snafus, emerge -e system all went well.  :Wink: 

And as Oktane said, there's no need to specify USE="-* build bootstrap" right before emerge linux26-headers. What joy.  :Smile: 

*1.5th install: cos i messed up grub install on the first try.

----------

## carpman

ok just going through this on p3 that i am setting up as server, downloaded make.conf from 1st post which is helpful but bot does it have a lot of USE=" entries.

What ones do i need for this install method to work? I know i will need ones specific to what i want to server to do:

apache2

php

mysql

etc

and know i will need

ntpl

but do i really need all the other ones?

cheers

----------

## Deranger

 *carpman wrote:*   

> 
> 
> What ones do i need for this install method to work?
> 
> 

 

USE="nptl" and if you want pure NPTL system, USE="nptl nptlonly". Keep in mind, pure NPTL system doesn't have LinuxThreads as a fallback and may have some problems.

----------

## carpman

 *Oktane wrote:*   

>  *carpman wrote:*   
> 
> What ones do i need for this install method to work?
> 
>  
> ...

 

what about the gcj gcc notes about USE= in make.conf? anything i need for this issue?

----------

## slycordinator

 *carpman wrote:*   

> what about the gcj gcc notes about USE= in make.conf? anything i need for this issue?

 

This is "The Developers Method" so having USE flags related to something like gcc (which people will likely use if doing developing) makes perfect sense to me.

----------

## carpman

 *slycordinator wrote:*   

>  *carpman wrote:*   what about the gcj gcc notes about USE= in make.conf? anything i need for this issue? 
> 
> This is "The Developers Method" so having USE flags related to something like gcc (which people will likely use if doing developing) makes perfect sense to me.

 

Yep i understand this is developers method but quote from 1st post

```

Were after capacity servers that eat 200.00 loads and not choke.

```

Reading the notes in the downloaded make.conf it say that all the USE= flags are needed for boot strap to go smoothly, some of the flags are not even listed in gentoo USE list, but what it does not say is that they can be removed and a more realistec USE= list can be setup for server or other user specific machine.

So if i read the howto correctly use the very long list of USE=flags for boot strap but then change this your desired settings, however what if you do a system upgrade emerge -uD world, would this break system if you don't put that long list back in.

----------

## kimchi_sg

The USE flags do seem optimized for server usage. So if I were running a server, I'd really leave them as-is. Trust ali3nx to provide a nice "heterogeneous" set of USE flags, he set up a server that we'd all love to own in our dreams, what with 6GB RAM and 1TB SATA RAID. It's mentioned a few pages back.  :Very Happy: 

Some of the USE flags, such as the precious "nptlonly" and "ithreads", are not in the /usr/portage/profiles/use.desc file as they are not global USE flags. They're local flags, mentioned in the /usr/portage/profiles/use.local.desc file.

----------

## Deranger

There's no need or whatsoever to use tons of USE-flags, personally, I use pretty minimal USE-flags to cut down unwanted dependencies. Here's my USE from /etc/make.conf:

```

USE="-* 3dnow X aalib alsa avi cdr divx4linux dvdr encode gtk2 imlib jpeg mad mikmod mmx mpeg ncurses nls nptl oggvorbis opengl png python readline sdl slang sse truetype xml2 xv xvid zlib"

```

Note that this only covers global USE-flags...Here is my /etc/portage/package.use:

```

sys-devel/gcc fortran

sys-libs/glibc nptlonly userlocales

```

(I cutted down non-system packages...)

----------

## jj2f1

Hey ali3nx.  I tied the splashutils, and this is the error that I got.  I'm not sure what I am missing to emerge this.  

```
make[1]: Entering directory `/var/tmp/portage/splashutils-0.9_rc1/work/miscsplashutils-0.1.2/fbtruetype'

gcc -O2 -Wall -I/usr/include/freetype2   -c -o fbtruetype.o fbtruetype.c

gcc -O2 -Wall -I/usr/include/freetype2   -c -o messages.o messages.c

gcc -O2 -Wall -I/usr/include/freetype2   -c -o console.o console.c

gcc -O2 -Wall -I/usr/include/freetype2   -c -o ttf.o ttf.c

gcc -O2 -Wall -I/usr/include/freetype2   -c -o luxisri.o luxisri.c

gcc -O2 -Wall -I/usr/include/freetype2 -L/usr/lib -o fbtruetype -L/usr/lib fbtruetype.o messages.o console.o ttf.o luxisri.o -lfreetype -lm

gcc -O2 -Wall -I/usr/include/freetype2 -L/usr/lib -static -o fbtruetype.static -L/usr/lib fbtruetype.o messages.o console.o ttf.o luxisri.o /usr/lib/libfreetype.a /usr/lib/libz.a -lm

strip -s fbtruetype fbtruetype.static

make[1]: Leaving directory `/var/tmp/portage/splashutils-0.9_rc1/work/miscsplashutils-0.1.2/fbtruetype'

>>> Test phase [not enabled]: media-gfx/splashutils-0.9_rc1

>>> Install splashutils-0.9_rc1 into /var/tmp/portage/splashutils-0.9_rc1/image/ category media-gfx

install -D fbres /var/tmp/portage/splashutils-0.9_rc1/image//sbin/fbres

make[1]: Entering directory `/var/tmp/portage/splashutils-0.9_rc1/work/miscsplashutils-0.1.2/fbtruetype'

install -D fbtruetype /var/tmp/portage/splashutils-0.9_rc1/image//sbin/fbtruetype

install -D fbtruetype.static /var/tmp/portage/splashutils-0.9_rc1/image//sbin/fbtruetype.static

make[1]: Leaving directory `/var/tmp/portage/splashutils-0.9_rc1/work/miscsplashutils-0.1.2/fbtruetype'

  MAKE    klibc

tests/environ.o(.text+0x24): In function `main':

: undefined reference to `__guard'

tests/environ.o(.text+0xa7): In function `main':

: undefined reference to `__guard'

tests/environ.o(.text+0xc2): In function `main':

: undefined reference to `__stack_smash_handler'

libc.a(__static_init.o)(.text+0x7): In function `__libc_init':

: undefined reference to `__guard'

libc.a(printf.o)(.text+0xb): In function `printf':

: undefined reference to `__guard'

libc.a(printf.o)(.text+0xbc): In function `printf':

: undefined reference to `__stack_smash_handler'

libc.a(vfprintf.o)(.text+0x1a): In function `vfprintf':

: undefined reference to `__guard'

libc.a(vfprintf.o)(.text+0x56): In function `vfprintf':

: undefined reference to `__guard'

libc.a(vfprintf.o)(.text+0x77): In function `vfprintf':

: undefined reference to `__stack_smash_handler'

libc.a(fwrite.o)(.text+0x19): In function `_fwrite':

: undefined reference to `__guard'

libc.a(fwrite.o)(.text+0x5f): In function `_fwrite':

: undefined reference to `__guard'

libc.a(fwrite.o)(.text+0x7b): In function `_fwrite':

: undefined reference to `__stack_smash_handler'

libc.a(puts.o)(.text+0x7): In function `puts':

: undefined reference to `__guard'

libc.a(puts.o)(.text+0x40): In function `puts':

: undefined reference to `__guard'

libc.a(puts.o)(.text+0x59): In function `puts':

: undefined reference to `__stack_smash_handler'

libc.a(vsnprintf.o)(.text+0x1a): In function `vsnprintf':

: undefined reference to `__guard'

libc.a(vsnprintf.o)(.text+0xa36): In function `vsnprintf':

: undefined reference to `__stack_smash_handler'

libc.a(fputs.o)(.text+0x10): In function `fputs':

: undefined reference to `__guard'

libc.a(fputs.o)(.text+0x49): In function `fputs':

: undefined reference to `__stack_smash_handler'

make[1]: *** [tests/environ] Error 1

make: *** [klibc] Error 2

!!! ERROR: media-gfx/splashutils-0.9_rc1 failed.

!!! Function src_install, Line 81, Exitcode 2

!!! (no error message)

!!! If you need support, post the topmost build error, NOT this status message.

```

I am using an amd64, I don't know if that makes a difference.  Let me know if you have any suggestions.  I have mostly followed this tutorial and tied to make minimal modifications for amd64.  I would like to try this out, let me know what you think.

----------

## gabe-kai

Okay, perhaps this is the wrong place, but I'm totally lost. I just followed the directions on page one, and everything worked perfectly until I got to emerging grub, and here is the error I got:

```
Calculating dependencies ...done!

>>> emerge (1 of 1) sys-boot/grub-0.95.20040823 to /

>>> md5 src_uri ;-) grub-0.95.20040823.tar.gz

>>> md5 src_uri ;-) grub-0.95.20040823-splash.patch.bz2

>>> Unpacking source...

>>> Unpacking grub-0.95.20040823.tar.gz to /var/tmp/portage/grub-0.95.20040823/work

>>> Unpacking grub-0.95.20040823-splash.patch.bz2 to /var/tmp/portage/grub-0.95.20040823/work

 * Using GNU config files from /usr/share/libtool

 *  Updating config.sub                                                                                                                 [ ok ]

 *  Updating config.guess                                                                                                               [ ok ]

 * Applying grub-0.95.20040823-splash.patch ...                                                                                         [ ok ]

 * Applying grub-0.95.20040823-warnings.patch ...                                                                                       [ ok ]

>>> Source unpacked.

/usr/share/aclocal/libreiser4.m4:14: warning: underquoted definition of AC_CHECK_LIBREISER4

  run info '(automake)Extending aclocal'

  or see http://sources.redhat.com/automake/automake.html#Extending%20aclocal

/usr/share/aclocal/libaal.m4:14: warning: underquoted definition of AC_CHECK_LIBAAL

/usr/share/aclocal/glib.m4:8: warning: underquoted definition of AM_PATH_GLIB

configure.ac:19: version mismatch.  This is Automake 1.7.9,

configure.ac:19: but the definition used by this AM_INIT_AUTOMAKE

configure.ac:19: comes from Automake 1.8.5.  You should recreate

configure.ac:19: aclocal.m4 with aclocal and run automake again.

!!! ERROR: sys-boot/grub-0.95.20040823 failed.

!!! Function src_compile, Line 61, Exitcode 1

!!! automake failed

!!! If you need support, post the topmost build error, NOT this status message.
```

Okay, so I need to try rebuilding aclocal.m4 to include the three .m4 files listed in the error? libreiser4.m4, libaal.m4, and glib.m4

I don't know how to do this, I read the page referred to (the redhat page) and became totally lost. /usr/share/aclocal/ has several aclocal folders, all containing several .m4 files, but none contain an aclocal.m4, and the aclocal command tells me I need to find configure.ac or configure.in

Can somone help me figure out (or just tell me) what I need to do to extent my aclocal.m4, or if that is not even the solution to the problem I'm having?

Sorry for the trouble, and thanks in advance!

'Gabe

Edit: Oh, and is it safe to continue on with the rest of the instructions before installing and configuring grub (I know I obviously can't reboot until I've got that done...)

----------

## rjw8703

In bugzzilla look up grub-0.95.20040823 problems and at the end of the comments there is a procedure for allowing grub to be emerged. Make sure to 

follow *ALL* of the directions starting from the first sentence. I didn't and ended up repeating it several times. This should take care of your problem.

----------

## kimchi_sg

 *rjw8703 wrote:*   

> In bugzzilla look up grub-0.95.20040823 problems and at the end of the comments there is a procedure for allowing grub to be emerged. Make sure to 
> 
> follow *ALL* of the directions starting from the first sentence. I didn't and ended up repeating it several times. This should take care of your problem.

 

I'd rather save myself some brain cells by masking sys-boot/grub-0.95: 

```
echo ">=sys-boot/grub-0.95" >> /etc/portage/package.mask
```

This will force Portage to fetch grub 0.94 which will compile 100% fine everywhere AFAIK.

And before some n00b decides to ask the question for the nth time, the above line is 100% correct, it is /etc/portage/package.mask

----------

## kallamej

Unmount /mnt/gentoo problem split off. Follow ups to that problem go here.

----------

## gabe-kai

Thanks guys, I've got grub installed and am happily on my way through the rest of the guide on page one!

----------

## kimchi_sg

 *gabe-kai wrote:*   

> Thanks guys, I've got grub installed and am happily on my way through the rest of the guide on page one!

 Just out of curiosity: Did you install grub-0.95 as rjw suggested, or did you mask grub-0.95 and install grub-0.94 instead?

[EDIT]For a much more trouble-free install try the stage 3 install method spelt out a few posts earlier. I've done 2 such installs with absolutely no snafus at all. Whereas all the stage 1 installs I tried hit upon one glitch or another in the ebuild. Not a "blocker", but if you get glitches doing a stage 1 NPTL install check back here for remedies.  :Smile: 

----------

## Bob P

 *ali3nx wrote:*   

> Setting Up Hostnames and Domainnames
> 
> -------------------------------------------------
> 
> ```
> ...

 

just to keep the Tut up to date, i thought i'd point out that i've started to receive the following messages during bootup [2.6.9-r8]:

```
* You should stop using /etc/localhost and use  /etc/conf.d/hostname
```

and 

```
* Keymap: you should stop using  /etc/rc.conf and use   /etc/conf.d/keymaps
```

and

```
* You should stop using /etc/dnscomainname and use /etc/conf.d/domainname
```

Edit: typo

----------

## gabe-kai

 *kimchi_sg wrote:*   

> Just out of curiosity: Did you install grub-0.95 as rjw suggested, or did you mask grub-0.95 and install grub-0.94 instead?

 

Oh, sorry. I masked 0.95 and emerge 0.94, the directions in the bugzilla article looked like more hassle than simply waiting for the next release of grub.

Finished the tutorial and began installing programs... OMfreakingG I've never had xorg compile so fast... I was expecting to simply save a few seconds waiting for programs to open, not have a huge impact on how long it takes large programs to compile. Thanks Ali3nx, you're on my list of personal heros!

----------

## carpman

Hello, boot strap fails on gettext:

```

checking for C compiler default output... configure: error C compiler cannot create executables

See 'config.log' for more details.

configure; error: /bin/sh './configure' failed for autoconf-lib-link

!!! ERROR: sys-devel/gettest-0.12.1-r2 failed.

!!! Function econf, Line 449, Exitcode 1

!!! econf failed

```

I know there are lots of post for this but they are either realated to emerge system or should have been cured with latest stage1 tar, or so i thought.

----------

## StifflerStealth

This is a great guide, but I see one minor issue. linux26-heders are installed twice. I have a P4 2.0 GHz and it takes a while for the headers to unpack, configure, and then merge, so I modified your one-liner a bit, and you can use this if you want to. I replaced the part that goes:  *Quote:*   

> ... USE="-* build bootstrap" emerge linux26-headers ...

  with:  *Quote:*   

> ... mkdir /etc/portage/profile && echo "virtual/os-headers sys-kernel/linux26-headers" >> /etc/portage/profile/virtuals ...

  This is actually the way the developers would do it. I did a search in this thread for something like this suggestion, but I didn't see anything. I know that sytax is longer than the one you have now, but it saves some time and feels more offical. I can say that it worked. When I did the bootstrap, it used linux26-headers instead. I know this will save a lot of time for people with slower mchines.

-Stiff

----------

## ali3nx

I just wanted to provide a new nbench result from the 3200 amd64 i built last week. This is the same machine thats sucessfully running hardened gentoo linux with hardened xorg.  This system is pure nptl... no fallback whatsoever. heh dizzamn is it fast  :Wink: 

```
hardenedgentoo64 ~ # nbench

BYTEmark* Native Mode Benchmark ver. 2 (10/95)

Index-split by Andrew D. Balsa (11/97)

Linux/Unix* port by Uwe F. Mayer (12/96,11/97)

TEST                : Iterations/sec.  : Old Index   : New Index

                    :                  : Pentium 90* : AMD K6/233*

--------------------:------------------:-------------:------------

NUMERIC SORT        :          1611.6  :      41.33  :      13.57

STRING SORT         :          182.56  :      81.57  :      12.63

BITFIELD            :       4.757e+08  :      81.60  :      17.04

FP EMULATION        :          114.64  :      55.01  :      12.69

FOURIER             :           18603  :      21.16  :      11.88

ASSIGNMENT          :          23.754  :      90.39  :      23.44

IDEA                :          2849.7  :      43.59  :      12.94

HUFFMAN             :          1684.5  :      46.71  :      14.92

NEURAL NET          :          35.343  :      56.78  :      23.88

LU DECOMPOSITION    :          1125.6  :      58.31  :      42.11

==========================ORIGINAL BYTEMARK RESULTS==========================

INTEGER INDEX       : 59.956

FLOATING-POINT INDEX: 41.220

Baseline (MSDOS*)   : Pentium* 90, 256 KB L2-cache, Watcom* compiler 10.0

==============================LINUX DATA BELOW===============================

CPU                 : AuthenticAMD AMD Athlon(tm) 64 Processor 3200+ 2203MHz

L2 Cache            : 512 KB

OS                  : Linux 2.6.7-hardened-r16

C compiler          : 3.4.3

libc                :

MEMORY INDEX        : 17.151

INTEGER INDEX       : 13.504

FLOATING-POINT INDEX: 22.862

Baseline (LINUX)    : AMD K6/233*, 512 KB L2-cache, gcc 2.7.2.3, libc-5.4.38

* Trademarks are property of their respective holder.
```

----------

## nelix

I had issues with groff... so i emerged an older version then resumed merging system... so far so good.

Anyone else have any issues with groff?

[/code]

----------

## Saillord

Heyho,

with the hope that anybody can help me over this   :Idea: 

I am intalling via the stage3-solution (e.g. by kimchi_sg on the top of this page) having reduced the system-relevant use-flags to the ones mentionned by Oktane (~x86 and pentium-m) - no problems to the point of emerge -e system - but when trying to merge sysfsutils, I get following error: 

Gentoo sanity check failed

libtool.m4 and ltmail.sh have a version mismatch

(libtool.m4 = 1.5.10, ltmain.sh = 1.4.2)

please run: libtoolize --copy --force

ERROR: sys-fs/fsutils-1.2.0 failed

Does anybody now how to correct this missmatch - the libtool seems to be right-numbered, but what package the ltmain stands for? I reemerged libtool, glib, automake, autoconf - without succes - and the libtoolize --copy --force in the /usr/portage/sysfsutils-directory just says: configure.ac does not exist.

I know this is probably a general problem, but I am also guessing (and hoping after lots of days trying to finish installation now) this forum would be able to give me some hints   :Question: 

Cheers - saillord

----------

## ali3nx

 *Saillord wrote:*   

> Heyho,
> 
> with the hope that anybody can help me over this  
> 
> I am intalling via the stage3-solution (e.g. by kimchi_sg on the top of this page) having reduced the system-relevant use-flags to the ones mentionned by Oktane (~x86 and pentium-m) - no problems to the point of emerge -e system - but when trying to merge sysfsutils, I get following error: 
> ...

 

I'm experiencing the same problem aswell... looks like the offending package is gettext or libtool. I'm trying to fix it myself but it looks to me that a dev will need to look into it. I'll message one of the core system devs and see about having it fixed. In the meantime just skip that package.. Your system will boot without it.

----------

## Saillord

 *Quote:*   

> looks like the offending package is gettext or libtool

 

... is it then worth trying the procedure proposed by the emerge-gettext-message ? 

"emerge gentoolkit" and do: "revdep -rebuild --soname libintl.so.2"

(I don't want to try anything I where I do not understand what that does cause)

(btw: when emerging gettext we are informed that the relink-patch is not applied - possible error-reason ?)

Regards - Saillord

----------

## nelix

i seemed to have fixed mine?

I went to the work dir and did:

 libtoolize --copy --force

then ebuild compile install qmerge

and it seems to be installed fine..

----------

## tcostigl

If you are doing "~arch" with linux26-headers and nptl don't you have to do gcc-config [some number] to switch to the latest gcc?

To be more descriptive, after:

 emergre --oneshot linux36-headers && emerge --oneshot glibc binutils gcc ^^^shouldn't we now switch to the newest gcc before: emerge -e system     ?

----------

## linux_on_the_brain

I decided to upgrade the laptop with 2 7200rpm 60gb drives, and proceded to  follow these instructions again. I however used reiser4 this around after reading all the raves about how great and fast it is. Well after I bootstrapped and emerged system and all the rest I rebooted, and rebooted and rebooted. Finally got the system up, then I started to experience random lockups. Well I just had a lock up about an hour ago. Powered off and back on, guess what total filesystem corruption. Are there any special kernel options that need to be set for reiser4, is there anything not supported besides amd64, such as smp or hyperthreaded machines. Any help would be appreciated before I reinstall. I've searched around but didnt come up with any clear answers.

----------

## landon

I haven't had the time to read through all of the comments, so if anyone can summarize the differences between the last edit that the author made more than a week ago and now, that would be great.

----------

## tcostigl

HyperThreading is not supported in Reiser4. I think SMP in general is the problem though. Search the forums for answers.

----------

## Hobbit_HK

 *hielvc wrote:*   

> So the new super duper one liner would look like this. 
> 
> ```
> 
>  env-update && source /etc/profile && emerge --oneshot --nodeps gcc-config && emerge linux26-headers &&  emerge --oneshot glibc binutils gcc && emerge -e system && emerge syslog-ng xinetd grub hotplug coldplug vixie-cron reiserfsprogs reiser4progs  sysfsutils udev dhcpcd && emerge --nodeps acpid ntp && rc-update add syslog-ng default && rc-update add net.eth0 default && rc-update add vixie-cron default && rc-update add xinetd default && rc-update add sshd default && rc-update add hotplug default && rc-update add coldplug default && rc-update add acpid default
> ...

 

I think you can improve that.. First, having a oneliner makes it impossible to change CFLAGS to take advantage of new GCC features, etc.

I edited your onliner and made it a three-liner:

```

env-update && source /etc/profile && USE='nptl nptlonly' emerge --oneshot --nodeps gcc-config && emerge -C linux-headers && emerge linux26-headers &&  emerge glibc portage binutils gcc

```

I did the bootstrap thing twice to lock-down the toolchain, you can skip the second time if you want.

After that you edit /etc/make.conf to change CFLAGS and such, then you do:

```

emerge glibc binutils gcc && emerge -e system && emerge -e system && emerge syslog-ng xinetd grub vixie-cron reiserfsprogs reiser4progs  sysfsutils udev dhcpcd hotplug coldplug && emerge --nodeps acpid ntp

```

Again, emerge -e system twice for a lock-down (I think the second time is redundant though, because you already have an optimised toolchain... This time looks like a "build system with a system built with an optimised toolchain" time).

Now you edit some config files (most importantly /etc/conf.d/net.eth0) and then:

```

rc-update add syslog-ng default && rc-update add net.eth0 default && rc-update add vixie-cron default && rc-update add xinetd default && rc-update add sshd default && rc-update add hotplug default && rc-update add coldplug default && rc-update add acpid default

```

What do you think?

EDIT: And I think we should enter the userlocales USE flag to this manual... It saves a lot of time:

```

echo sys-libs/glibc userlocales >> /etc/portage/package.use

nano /etc/locales.build

```

----------

## landon

Does anybody elses ncurses build fail while doing emerge --oneshot glibc binutils gcc?

----------

## linux_on_the_brain

I found the following to work when getting errors about libtool.

After digging through bugzilla this is what I found

When getting the following

Gentoo sanity check failed

libtool.m4 and ltmail.sh have a version mismatch

(libtool.m4 = 1.5.10, ltmain.sh = 1.4.2)

please run: libtoolize --copy --force

ERROR: sys-fs/fsutils-1.2.0 failed

Do this

- edit the failing ebuild

- change elibtoolize to libtoolize --copy --force

----------

## jj2f1

Can someone take a look at this and give me a guess as to what I am doing wrong.  I got bootstrap, and emerge system to work but when I went to emerge the splash utils, as noted in previos post, I got a similar looking error.  I skipped the splash screen and started to emerge xorg.  A couple packages installed, but I got an error on ttmkfdir. 

```
root@slide ~ # emerge --pretend xorg-x11

These are the packages that I would merge, in order:

Calculating dependencies ...done!

[ebuild  N    ] x11-misc/ttmkfdir-3.0.9-r2

[ebuild  N    ] x11-base/xorg-x11-6.8.0-r3

[ebuild  N    ] x11-terms/xterm-196-r1

root@slide ~ # emerge xorg-x11

Calculating dependencies ...done!

>>> emerge (1 of 3) x11-misc/ttmkfdir-3.0.9-r2 to /

>>> md5 src_uri ;-) ttmkfdir-3.0.9.tar.bz2

>>> Unpacking source...

>>> Unpacking ttmkfdir-3.0.9.tar.bz2 to /var/tmp/portage/ttmkfdir-3.0.9-r2/work

 * Applying ttmkfdir-3.0.9-cpp.patch ...                                                 [ ok ]

 * Applying ttmkfdir-3.0.9-zlib.patch ...                                                [ ok ]

 * Applying ttmkfdir-3.0.9-gcc34.patch ...                                               [ ok ]

 * Applying ttmkfdir-3.0.9-encoding.patch ...                                            [ ok ]

>>> Source unpacked.

libtool --mode=compile x86_64-pc-linux-gnu-g++ -Wall -pedantic -I/usr/include/freetype2  -march

=athlon64 -pipe -o ttmkfdir.o -c ttmkfdir.cpp

libtool --mode=compile x86_64-pc-linux-gnu-g++ -Wall -pedantic -I/usr/include/freetype2  -march

=athlon64 -pipe -o directory.o -c directory.cpp

libtool: compile: unable to infer tagged configuration

libtool: compile: specify a tag with `--tag'

make: *** [ttmkfdir.o] Error 1

make: *** Waiting for unfinished jobs....

libtool: compile: unable to infer tagged configuration

libtool: compile: specify a tag with `--tag'

make: *** [directory.o] Error 1

!!! ERROR: x11-misc/ttmkfdir-3.0.9-r2 failed.

!!! Function src_compile, Line 39, Exitcode 2

!!! emake failed

!!! If you need support, post the topmost build error, NOT this status message.
```

This is my /etc/make.conf in case there is a problem with that.

```
# These settings were set by the catalyst build script that automatically built this stage

# Please consult /etc/make.conf.example for a more detailed example

CFLAGS="-march=athlon64 -pipe -O2"

CHOST="x86_64-pc-linux-gnu"

CXXFLAGS="${CFLAGS}"

MAKEOPTS="-j2"

USE="gtk gtk2 qt kde -gnome dvd alsa cdr nptl X"

ACCEPT_KEYWORDS="~amd64"
```

Does anyone see my problem?

----------

## Deranger

jj2f1: I had same problem, this will fix it:

```

emerge libtool xorg-x11

```

I have no idea why libtool has to be recompiled, but it'll fix it  :Razz: 

----------

## jj2f1

Oktane you the man.  

I am past that little problem.  Hopefully everything will go smothly from now on.

----------

## jj2f1

Here is another one that seems to be very similar.  I was able to install xorg.  I could not finish installing the third nvidia package nvidia-settings.  This is the error.

```
root@slide ~ # emerge nvidia-settings

Calculating dependencies ...done!

>>> emerge (1 of 1) media-video/nvidia-settings-1.0.6629 to /

>>> md5 src_uri ;-) nvidia-settings-1.0.6629.tar.gz

>>> Unpacking source...

>>> Unpacking nvidia-settings-1.0.6629.tar.gz to /var/tmp/portage/nvidia-settings-1.0.6629/work

>>> Source unpacked.

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/command-line.c -o .objs/comman

d-line.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/config-file.c -o .objs/config-

file.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/msg.c -o .objs/msg.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/nvidia-settings.c -o .objs/nvi

dia-settings.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/parse.c -o .objs/parse.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/query-assign.c -o .objs/query-

assign.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/nvgetopt.c -o .objs/nvgetopt.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/image_data/image.c -o .objs/im

age.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/gtk+-2.x/ctkxvideo.c -o .objs/

ctkxvideo.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/gtk+-2.x/ctkcursorshadow.c -o

.objs/ctkcursorshadow.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/gtk+-2.x/ctkui.c -o .objs/ctku

i.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/gtk+-2.x/ctkframelock.c -o .ob

js/ctkframelock.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/gtk+-2.x/ctkgauge.c -o .objs/c

tkgauge.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/gtk+-2.x/ctkcurve.c -o .objs/c

tkcurve.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/gtk+-2.x/ctkcolorcorrection.c

-o .objs/ctkcolorcorrection.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/gtk+-2.x/ctkscale.c -o .objs/c

tkscale.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/gtk+-2.x/ctkmultisample.c -o .

objs/ctkmultisample.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/gtk+-2.x/ctkconfig.c -o .objs/

ctkconfig.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/gtk+-2.x/ctkevent.c -o .objs/c

tkevent.o

src/gtk+-2.x/ctkconfig.c: In function `time_interval_edited':

src/gtk+-2.x/ctkconfig.c:646: warning: comparison is always false due to limited range of data

type

src/gtk+-2.x/ctkconfig.c:647: warning: comparison is always false due to limited range of data

type

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/gtk+-2.x/ctkwindow.c -o .objs/

ctkwindow.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/gtk+-2.x/ctkopengl.c -o .objs/

ctkopengl.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/gtk+-2.x/ctkdevice.c -o .objs/

ctkdevice.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/gtk+-2.x/ctkhelp.c -o .objs/ct

khelp.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/gtk+-2.x/ctkimagesliders.c -o

.objs/ctkimagesliders.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/gtk+-2.x/ctkdisplaydevice.c -o

 .objs/ctkdisplaydevice.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/gtk+-2.x/ctkdisplaydevice-crt.

c -o .objs/ctkdisplaydevice-crt.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/gtk+-2.x/ctkdisplaydevice-tv.c

 -o .objs/ctkdisplaydevice-tv.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/gtk+-2.x/ctkdisplaydevice-dfp.

c -o .objs/ctkdisplaydevice-dfp.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/gtk+-2.x/ctkthermal.c -o .objs

/ctkthermal.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/gtk+-2.x/ctkgvo.c -o .objs/ctk

gvo.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/gtk+-2.x/ctkdropdownmenu.c -o

.objs/ctkdropdownmenu.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/libXNVCtrlAttributes/NvCtrlAtt

ributes.c -o .objs/NvCtrlAttributes.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/libXNVCtrlAttributes/NvCtrlAtt

ributesNvControl.c -o .objs/NvCtrlAttributesNvControl.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/libXNVCtrlAttributes/NvCtrlAtt

ributesVidMode.c -o .objs/NvCtrlAttributesVidMode.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes src/libXNVCtrlAttributes/NvCtrlAtt

ributesXv.c -o .objs/NvCtrlAttributesXv.o

cc -c -march=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_

API -I/usr/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-

1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/in

clude/glib-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -

I src/gtk+-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes g_stamp.c -o .objs/g_stamp.o

cc .objs/command-line.o .objs/config-file.o .objs/msg.o .objs/nvidia-settings.o .objs/parse.o .

objs/query-assign.o .objs/nvgetopt.o .objs/image.o .objs/ctkxvideo.o .objs/ctkcursorshadow.o .o

bjs/ctkui.o .objs/ctkframelock.o .objs/ctkgauge.o .objs/ctkcurve.o .objs/ctkcolorcorrection.o .

objs/ctkscale.o .objs/ctkmultisample.o .objs/ctkconfig.o .objs/ctkevent.o .objs/ctkwindow.o .ob

js/ctkopengl.o .objs/ctkdevice.o .objs/ctkhelp.o .objs/ctkimagesliders.o .objs/ctkdisplaydevice

.o .objs/ctkdisplaydevice-crt.o .objs/ctkdisplaydevice-tv.o .objs/ctkdisplaydevice-dfp.o .objs/

ctkthermal.o .objs/ctkgvo.o .objs/ctkdropdownmenu.o .objs/NvCtrlAttributes.o .objs/NvCtrlAttrib

utesNvControl.o .objs/NvCtrlAttributesVidMode.o .objs/NvCtrlAttributesXv.o .objs/g_stamp.o -mar

ch=athlon64 -pipe -O2 -O -I /usr/X11R6/include -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_API -I/usr

/include/gtk-2.0 -I//usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-1.0 -I/usr

/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/freetype2/config -I/usr/include/glib

-2.0 -I//usr/lib/glib-2.0/include   -I doc -I src -I src/image_data -I src/xpm_data -I src/gtk+

-2.x -I src/libXNVCtrl -I src/libXNVCtrlAttributes  -Wl,--export-dynamic -L//usr/lib -lgtk-x11-

2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobj

ect-2.0 -lgmodule-2.0 -ldl -lglib-2.0   -L /usr/X11R6/lib -Wl,-Bstatic -lXxf86vm -lXv -Wl,-Bdyn

amic -lX11 -lXext src/libXNVCtrl/libXNVCtrl.a -o nvidia-settings

/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.3/../../../../x86_64-pc-linux-gnu/bin/ld: src/libXNVCtrl/l

ibXNVCtrl.a(NVCtrl.o): relocation R_X86_64_32 against `a local symbol' can not be used when mak

ing a shared object; recompile with -fPIC

src/libXNVCtrl/libXNVCtrl.a: could not read symbols: Bad value

collect2: ld returned 1 exit status

make: *** [nvidia-settings] Error 1

!!! ERROR: media-video/nvidia-settings-1.0.6629 failed.

!!! Function src_compile, Line 36, Exitcode 2

!!! Failed to build nvidia-settings

!!! If you need support, post the topmost build error, NOT this status message.
```

This seems to be similar so I tried installing libtools again, but that did not work either.  KDE also failed similarly on one of the first few packages.

----------

## PhilD

I too am having problems compiling the sysfsutils.  I have tried changing the elibtoolize to 

libtoolize --copy --force 

in the .ebuild script with no change.  I have also tried running it in the /var/tmp/portage/sysfsutils/work/sysfsutils-1.2.0/ directory and then emerging with no success.  I am not sure what nelix meant by

ebuild compile install qmerge

but I have hand no luck trying variations of this in different directories either.  Help here would be greatly appreciated!!!!

PhilD

----------

## linux_on_the_brain

Phild, its odd that it did not work for you. I emerged sysfsutils earlier today with no problem after modifying the ebuild.

----------

## linux_on_the_brain

after 2 days of frustration I'm giving up on reiser4, I cant even boot after a fresh install. Hangs/locks up during the boot process. back to reiser3

----------

## PhilD

linux_on_the_brain, yeah, I have that type of luck.  Then again, maybe I did something wrong.  I went into the /usr/portage/sys-fs/sysfsutils/ directory and changed the elibtoolize in the sysfsutils-1.2.0.ebuild file to libtoolize --copy --force.  I then went back to the /usr/portage directory and ran emerge sysfsutils again.  Nothing changed.  I also went back and verified the change was in the file.  I didn't change any other file.   If this is correct I will just assume it is my bad luck.

I am out of town for the next few days so it will just have to wait I guess.

PhilD

----------

## linux_on_the_brain

Phild, I wouldnt think it matters but I added the line as follows

libtoolize --force --copy, not sure how you modified the line but it might be something to look at.

Later

----------

## Macumba

```

src_unpack() {

        unpack ${A}

        cd ${S}

        aclocal

                libtoolize --force --copy

        autoconf

        automake

        elibtoolize

}

```

----------

## tcostigl

I am doing a "~x86" install. When doing 'emerge -e system' I had errors on sys-apps/groff and sys-apps/file. I manually downgraded them to unmasked versions and it worked. Just wanted to know I anyone else had the same problems?

----------

## ali3nx

 *nelix wrote:*   

> I had issues with groff... so i emerged an older version then resumed merging system... so far so good.
> 
> Anyone else have any issues with groff?
> 
> [/code]

 

I added emerge libperl && emerge libperl to the oneliner before emerge system. No more problems with missing perl in the installation.

----------

## landon

Out of curiosity, Ali3nx, how did you go about doing everything on reiser4?

I'm looking at several reiser4-enabled livecd's (other patches included,) and I was wondering which ones worked for you.

You don't need to write a detailed howto (unless you the time to add it,) it'd be great if you can tell me about any possible installation problems I might run into.

----------

## Deranger

lxnay's Reiser4 LiveCDs are excellent  :Wink: 

----------

## To

There's a new realease of libtool avaible on portage that fixes the bugs posted here.

Tó

----------

## To

After I've run into the libtool run error and that got fixed, but  got this today:

```
>>> Unpacking grub-0.95.20040823.tar.gz to /var/tmp/portage/grub-0.95.20040823/work

>>> Unpacking grub-0.95.20040823-splash.patch.bz2 to /var/tmp/portage/grub-0.95.20040823/work

 * Using GNU config files from /usr/share/libtool

 *  Updating config.sub                                                                                                       [ ok ]

 *  Updating config.guess                                                                                                     [ ok ]

 * Applying grub-0.95.20040823-splash.patch ...                                                                               [ ok ]

 * Applying grub-0.95.20040823-warnings.patch ...                                                                             [ ok ]

>>> Source unpacked.

/usr/share/aclocal/libreiser4.m4:14: warning: underquoted definition of AC_CHECK_LIBREISER4

  run info '(automake)Extending aclocal'

  or see http://sources.redhat.com/automake/automake.html#Extending%20aclocal

/usr/share/aclocal/libaal.m4:14: warning: underquoted definition of AC_CHECK_LIBAAL

configure.ac:19: version mismatch.  This is Automake 1.7.9,

configure.ac:19: but the definition used by this AM_INIT_AUTOMAKE

configure.ac:19: comes from Automake 1.8.5.  You should recreate

configure.ac:19: aclocal.m4 with aclocal and run automake again.

!!! ERROR: sys-boot/grub-0.95.20040823 failed.

!!! Function src_compile, Line 61, Exitcode 1

!!! automake failed

!!! If you need support, post the topmost build error, NOT this status message.
```

Anyone?

Tó

----------

## landon

which version of Automake are you running?

----------

## Hobbit_HK

Why won't you edit the grub ebuilld and change WANT_AUTOMAKE to 1.8? I think that should solve it...

----------

## hielvc

To see this  Bug 73156

----------

## nelix

Awsome tutorial, but i think it may be an idea to make 2 versions of the tutorial?

MAybe a one liner version and a line by line version

Line by line is far easer to debug i would say

with the one liner its kinda hard to work out what stoped

----------

## Deranger

 *nelix wrote:*   

> 
> 
> MAybe a one liner version and a line by line version
> 
> 

 

Well, here it is  :Smile: 

NOTE: I edited ali3nx's oneliner a bit, I putted -av (--ask --verbose) to emerge opts so it shows USE flags, what it's going to install, and then asks do you want to proceed...Then I cutted down commands chained with && to a single commands, so newbies might understand it better  :Razz: 

Allright, enough chit chat, we'll start right now!  :Wink: 

```

env-update

source /etc/profile

```

Let's emerge linux26-headers and gcc-config:

```

emerge -av --oneshot --nodeps gcc-config

USE="-* build bootstrap" emerge -av linux26-headers

```

Then the bootstrap process, I added env-update after bootstrap, it doesn't hurt, or does it?  :Wink: 

```

cd /usr/portage

scripts/bootstrap.sh

env-update && source /etc/profile

```

After bootstrap is done, we will install the base system, emerging libperl isn't needed, but just to be sure, we will compile it twice before running emerge system:

```

emerge -av libperl

emerge -av libperl

emerge -av system

```

Then we will install system logger, cron and various things:

```

emerge -av syslog-ng xinetd grub hotplug coldplug vixie-cron reiserfsprogs reiser4progs sysfsutils udev dhcpcd

emerge -av --nodeps acpid ntp

```

Then we will add syslog-ng, vixie-cron and some other daemons to default runlevel:

```

rc-update add syslog-ng default

rc-update add net.eth0 default

rc-update add vixie-cron default

rc-update add xinetd default 

rc-update add sshd default 

rc-update add hotplug default 

rc-update add coldplug default

rc-update add acpid default

```

----------

## kimchi_sg

 *Oktane wrote:*   

>  *nelix wrote:*   
> 
> MAybe a one liner version and a line by line version
> 
>  
> ...

 

Here's the stage 3 installation instructions broken down in similar fashion. Originally posted on page 17 of this thread. To re-iterate, you'll need a stage 3, not stage 1, tarball for these steps.

Start by telling Gentoo to re-read all environment variables.

```

env-update

source /etc/profile

```

Let's emerge linux26-headers and gcc-config. No need for modified USE flag before emerging linux 2.6 headers. --oneshot option tells Portage not to store the app being emerged into the world file (which is processed when doing a "emerge world").

```

emerge -av --oneshot --nodeps gcc-config

emerge -av linux26-headers

```

The stage 3 "bootstrap": rebuild glibc, binutils and gcc.

```

emerge -av --oneshot glibc binutils gcc

```

After "bootstrap" is done, we will install the base system but ignoring what's already built on the stage 3 (aka emerging with a "empty tree") with the --emptytree option.

```

emerge -av --emptytree system

```

Then we will install system logger, cron and various things.

```

emerge -av syslog-ng xinetd grub hotplug coldplug vixie-cron reiserfsprogs reiser4progs sysfsutils udev dhcpcd

emerge -av --nodeps acpid ntp

```

Then we will add syslog-ng, vixie-cron and some other daemons to default runlevel. The last command, to add ntpd daemon, is not in the original one-liner but i've included it for convenience's sake as it is the very next step in the setup. Ntp-client for me fails on reboot complaining that it can't find the ntp client command so ntpd is suggested as a substitute.

```

rc-update add syslog-ng default

rc-update add net.eth0 default

rc-update add vixie-cron default

rc-update add xinetd default 

rc-update add sshd default 

rc-update add hotplug default 

rc-update add coldplug default

rc-update add acpid default

rc-update add ntpd default

```

Set up ntpd by editing /etc/conf.d/ntpd, /etc/ntp.conf and /etc/conf.d/net as per instructions in the Gentoo Wiki

----------

## linux_on_the_brain

After much trouble,  I finally got my laptop up and running, with reiser4, stage1, nptl and all the other little extras. It appears that the problem I was having revolved around using one of my kernel configs that had smp and ht enabled. Even though I de-selected these items, I still had problems. After starting with a fresh .config, I was rockin and rollin.

----------

## hanta2

 *ali3nx wrote:*   

> 
> 
> To get the kernel config skel file do the following
> 
> ```
> ...

 

that link isn't working anymore and i wouldn't like to wait until the traffic quota gets reseted next year  :Razz: 

does anybody have a copy he could give me a link to or email me?

thx in advance - hanta

ps: hanta@gmx.ch

----------

## linux_on_the_brain

hanta2 I can email it in a few hours, I'm on my way out right now.

----------

## hanta2

thx!

and np, i just started compiling xorg and stuff. this will take some time  :Very Happy: 

----------

## hanta2

thx to everybody!

a nice guy called "stressed_bar" contacted me over icq and did send me the configs.

a merry xmas and a happy new year to all of you.

----------

## ali3nx

I would just like to inform everyone what has transpired with my domain for this tutorials config files. I recently started hosting lxnay's RR4 livecd and it never crossed my mind that my "unlimited" hosting package still had the bandwidth limit applied. My collegue Davetha from exovian left for christmas holidays to toronto and I havent been able to reach him to have the issue rectified. It will be fixed as soon as possible. My aplologies for any inconvieniences. Happy Holidays to all.   :Embarassed: 

----------

## hq4ever

 *hanta2 wrote:*   

>  *ali3nx wrote:*   
> 
> To get the kernel config skel file do the following
> 
> ```
> ...

 

Same here

Maybe someone could just post it here & be done with it ?

----------

## C001JU135

i would like a link or something tho, ill be able to host it for the rest of us  :Smile: 

----------

## C001JU135

i would like a link or something tho, ill be able to host it for the rest of us  :Smile: 

/edit

Email/msn @ cj AT ct-multisoft DOT nl

//edit

hmm, that was the quote button instead of edit   :Embarassed: 

----------

## thecrazyperson_ws

got these from ali3n hisself on the irc channel:

.config skel file:

http://www.eliteitminds.com/.config

make.conf skel file:

http://www.eliteitminds.com/make.conf

got stuck, decided to ask him for help.

edit: OOPS   :Embarassed: 

----------

## hq4ever

Hey thnx.

You did how ever missed a "s" in the second link, it should be :

make.conf skel file:

http://www.eliteitminds.com/make.conf

And thank you ali3n, your work is much appreciated by me.

----------

## cynric

First off, many thanks to Ali3nx and everyone else who has contributed.

I'm attempting an amd64 install. I see where a few have posted an interest in how other amd64 installs went, but few have actually said what things to watch out for or change. I haven't begun to bootstrap yet, but have picked up two bits of [possibly] useful info:

1) Using cool-sounding LiveCDs like lxnay's stuff will fail at the 'chroot' part. Supposedly one can't change from a 32bit environment to a 64.

2) Reiserfs4 won't work on amd64 architectures.

Granted, neither of these are directly mentioned in the tutorial on the first page, but they are mentioned throughout here. If these two warnings are invalid, please correct. Happy installs.

EDIT:

Whee. Slick install with no problems. Only added maybe two things from the amd64 manual such as the userlocales and grub-static, etc. Fussing with GRUB not wanting to mount / right now and getting an error about mtabs. I noticed that the Gentoo manual "cp /proc/mounts /etc/mtab" but not here; maybe it should be?

----------

## Coz

Shouldn't the urls in the tutorial be changed while things are problematic? That way people wouldn't have to check the last page to see if someone else got the same problem :p

Also.. is it just me, or you should select the fast mirrors after the make.conf is downloaded and edited? Otherwise you would be deleting the fast mirror you just put in the make.conf XD

----------

## slycordinator

Yes.  You should download the make.conf THEN do the mirrorselect line.

----------

## krazyyzark

Quick question, I followed this install tutorial and everything is working fine, but I noticed that I edited my make.conf file to say ACCEPT_KEYWORDS="~x86" instead of ACCEPT_KEYWORDS="x86" I looked back at the tutorial and I am not sure which way it should be. If I change to just x86 and then try to "emerge world" it wants to downgrade almost everything on my system. Should I have ~x86 or just x86 in my make.conf?

Thanks!!!

----------

## kimchi_sg

 *krazyyzark wrote:*   

> I edited my make.conf file to say ACCEPT_KEYWORDS="~x86" instead of ACCEPT_KEYWORDS="x86" I looked back at the tutorial and I am not sure which way it should be. If I change to just x86 and then try to "emerge world" it wants to downgrade almost everything on my system. Should I have ~x86 or just x86 in my make.conf?

 

You should leave the ACCEPT_KEYWORDS variable unchanged. Don't be afraid of using so-called unstable packages. They are merely less well-tested, and in case of trouble, well, you can always refer to the gentoo wiki or here.

----------

## krazyyzark

 *kimchi_sg wrote:*   

>  *krazyyzark wrote:*   I edited my make.conf file to say ACCEPT_KEYWORDS="~x86" instead of ACCEPT_KEYWORDS="x86" I looked back at the tutorial and I am not sure which way it should be. If I change to just x86 and then try to "emerge world" it wants to downgrade almost everything on my system. Should I have ~x86 or just x86 in my make.conf? 
> 
> You should leave the ACCEPT_KEYWORDS variable unchanged. Don't be afraid of using so-called unstable packages. They are merely less well-tested, and in case of trouble, well, you can always refer to the gentoo wiki or here.

 

Thanks kimchi_sg!!!

----------

## ali3nx

Updated .config for gentoo-dev-sources-2.6.10-r1 now available here  Merry Christmas and  Happy New Year to all

----------

## kimchi_sg

@ali3nx: Your new make.conf as downloaded from eliteitminds.com has very aggressive CFLAGS as default. I changed the -march and -mtune options to pentium4, and b0rked the binutils install. Emerge complained that the "C compiler cannot create executables".  :Sad: 

I'm using the stage3 "safe" install, on a pentium4 1.7ghz. Removing -mtune, -fweb, and -fomit-frame-pointer and downgrading -O3 to -O2 (i.e, CFLAGS="-march=pentium4 -O2 -pipe) got me past binutils.

----------

## ali3nx

I'm sad to report that over the christmas holidays the owner of Exovian in his infiite wisdom deleted the entire directory my ali3nx.info domain was hosted in on thier server. The entire domain's files were lost without regard to the use of space of the largest file in the site. The iso the i was hosting for lxnay. Thanks goes out to Ben of Exovian for deleting the entire domain in one command. Way to go buddie... I'm sure people love you

----------

## 3nd3r

 *ali3nx wrote:*   

> I'm sad to report that over the christmas holidays the owner of Exovian in his infiite wisdom deleted the entire directory my ali3nx.info domain was hosted in on thier server. The entire domain's files were lost without regard to the use of space of the largest file in the site. The iso the i was hosting for lxnay. Thanks goes out to Ben of Exovian for deleting the entire domain in one command. Way to go buddie... I'm sure people love you

 He did the same to my backup folder... so i know how you feel....

----------

## Coz

I just finished with the guide, and tought I didn't found even 1 problem in the middle, when I was going to boot I found 2 weird problems, one of them solved by itself but I don't know how XD and the second was that ntp wouldn't work :S the /etc/conf.d/ntp-client file was wrong, instead of settings it was a script but it might have been a faulty ebuild :s

----------

## kimchi_sg

 *Coz wrote:*   

> ntp wouldn't work :S the /etc/conf.d/ntp-client file was wrong, instead of settings it was a script but it might have been a faulty ebuild :s

 

No its intentional, I think. The /etc/conf.d/ntp-client file does not exist by default.

My preferred alternative is to use ntpdate once to set the clock:

```
ntpdate -b -u pool.ntp.org
```

Then I add ntpd, not ntp-client, to the default runlevel:

```
rc-update add ntpd default
```

Lastly, edit the /etc/ntpd.conf file if you wish to change the time server from the default of pool.ntp.org.

----------

## slycordinator

 *kimchi_sg wrote:*   

> Then I add ntpd, not ntp-client, to the default runlevel:
> 
> ```
> rc-update add ntpd default
> ```
> ...

 

Or you could just add both.

/etc/init.d/ntp-client sets the clock using ntpdate and /etc/init.d/ntpd runs as the daemon, keeping your clock at the right time.  Using both together is better, imo.

----------

## kimchi_sg

 *slycordinator wrote:*   

> /etc/init.d/ntp-client sets the clock using ntpdate and /etc/init.d/ntpd runs as the daemon, keeping your clock at the right time.  Using both together is better, imo.

 

But the /etc/conf.d/ntp-client file does not even exist after the install, and i couldn't find any instruction anywhere on how to fill it out.  :Sad:  That's why i use ntpd only.

----------

## slycordinator

 *kimchi_sg wrote:*   

>  *slycordinator wrote:*   /etc/init.d/ntp-client sets the clock using ntpdate and /etc/init.d/ntpd runs as the daemon, keeping your clock at the right time.  Using both together is better, imo. 
> 
> But the /etc/conf.d/ntp-client file does not even exist after the install, and i couldn't find any instruction anywhere on how to fill it out.  That's why i use ntpd only.

 

Oh ok.  Strange, the file used to be created whenever you merged ntp.

Here's my copy of the /etc/conf.d/ntp-client

```

# Copyright 1999-2004 Gentoo Foundation

# Distributed under the terms of the GNU General Public License v2

# $Header: /var/cvsroot/gentoo-x86/net-misc/ntp/files/ntp-client.confd,v 1.9 2004/10/28 12:25:34 vapier Exp $

# Command to run to set the clock initially

# Most people should just leave this line alone ...

# however, if you know what you're doing, and you

# want to use ntpd to set the clock, change this to 'ntpd'

NTPCLIENT_CMD="ntpdate"

# Options to pass to the above command

# Most people should just uncomment this variable and

# change 'someserver' to a valid hostname which you

# can aquire from the URL's below

NTPCLIENT_OPTS=" -b -u bigben.cac.washington.edu tick.ucla.edu montpelier.caltech.edu"

# How long to wait (in seconds) before giving up.

# Useful for when you boot and DNS/internet isn't

# really available but you have your net interface

# come up with say a static IP.

NTPCLIENT_TIMEOUT=30

##

# A list of available servers can be found here:

# http://www.pool.ntp.org/

# A good way to get servers for your machine is:

# netselect -s 3 pool.ntp.org

##

```

You'll have to edit the servers in the NTPCLIENT_OPTS line to ones closer to your location.

----------

## Hobbit_HK

I remember seeing some error about the /etc/conf.d/ntp-client file creation during the merging and the file wan't created afterwards... And I also remember that when I emerged ntp sometime ago this error didn't occur.. Faulty ebuild perhaps?

----------

## JDGBOLT

Does anybody happen to have a backup of that make.conf file, I was hoping to at least use that configuration file as a template for a new gentoo installation that I plan on doing. 

Thanks,

JDGBOLT

----------

## kimchi_sg

 *JDGBOLT wrote:*   

> Does anybody happen to have a backup of that make.conf file

 

It is downloadable from ali3nx's alternate site, http://www.eliteitminds.com/make.conf

EDIT: sorry for the typo in the URL.

----------

## Deranger

 *kimchi_sg wrote:*   

>  *JDGBOLT wrote:*   Does anybody happen to have a backup of that make.conf file 
> 
> It is downloadable from ali3nx's alternate site, http://www.aliteitminds.com/make.conf

 

http://www.eliteitminds.com/make.conf is the correct one...  :Wink: 

----------

## kowal

My bootstraping would fail by following any steps listed in this forum. I've been using lxnay Gentoo RR4 LiveCD 2.10 

I came accross post about  exporting AR=ar, not sure what AR is but strangly got my bootstrap going again.

----------

## Coz

I dared to try to make a reiserfs4 install, using mm-sources (couldn't find a kernel patch for reiserfs4 on namesys or I just didn't looked well enough), had a couple of after install problems here and there, but just to warn you, mm-sources won't detect a ps2 mouse if ACPI support is enabled.

Maybe it's better not to do that reiserfs4 tutorial until that problem is fixed.

EDIT: Seems like I will have to take mm-sources out XD current release doesn't works with nvidia-kernel. I will try harder now to find a patch for reiserfs4.

----------

## -TooL

Can bootstrap break because of perl issues?  I did the updated one-liner and woke up to a perl dependency issue, tho I had emerge lib-perl twice.. as copyed and pasted from the one liner.. 

Is there a way to tell if your system was/has been bootstrapped? because i did the emerge perl thing again, then emerge system.. but if its a broken bootstrap.. its all in vein..

----------

## hielvc

Just do an "emerge system -e"  instead of dorking around with bootstrap.

----------

## Coz

Hehe I just found out that Redeeman has a patch to fix the nvidia problem   :Very Happy: 

----------

## -TooL

Not sure what happened, seems to work now.. im a n00b

Even the splash worked.. im like omgzzz

Toshiba A10 notebook dual booted with winblows xp sp2 and gentoo linux following this guide.  Ill post a nbench benchmark once I get to that point.

----------

## Deranger

 *Coz wrote:*   

> I will try harder now to find a patch for reiserfs4.

 

Here are Reiser4 patches from Namesys...

Here are mm-sources broken-outs...

----------

## thecrazyperson_ws

well, it's about that time again.  i broke another bootstrap.  go ahead and laugh if you will, because i'm laughing at myself.  Oh well, time to try again...

----------

## ali3nx

Okay... after becoming inspired by Oktane's latest post i deceided to try --dry-run patching reiser4's 2.6.10 patch against gentoo-dev-sources. Results? hehe.... not one failed hunk. I've opened a bug requesting inclusion of reiser4 in gentoo-dev-sources which you all can monitor to your hearts content here

----------

## ali3nx

Just a brief update on the tuitorial files. I'll host them on my own webserver for the meantime. If anyone has a copy of the make.conf from my old file stash on ali3nx.info email me a copy. I've allready hosted one but the use flags have varied to some degree and i would like to maintain some margin of consistancy with the use flags. My email address is available in my profile. Happy new year to all and thanks

----------

## Coz

 *Oktane wrote:*   

>  *Coz wrote:*   I will try harder now to find a patch for reiserfs4. 
> 
> Here are Reiser4 patches from Namesys...
> 
> Here are mm-sources broken-outs...

 

Thanks XD

----------

## kowal

 *ali3nx wrote:*   

> Just a brief update on the tuitorial files. I'll host them on my own webserver for the meantime. If anyone has a copy of the make.conf from my old file stash on ali3nx.info email me a copy. I've allready hosted one but the use flags have varied to some degree and i would like to maintain some margin of consistancy with the use flags. My email address is available in my profile. Happy new year to all and thanks

 

How about hosting tutorial on http://gentoo-wiki.com

----------

## ali3nx

 *kowal wrote:*   

>  *ali3nx wrote:*   Just a brief update on the tuitorial files. I'll host them on my own webserver for the meantime. If anyone has a copy of the make.conf from my old file stash on ali3nx.info email me a copy. I've allready hosted one but the use flags have varied to some degree and i would like to maintain some margin of consistancy with the use flags. My email address is available in my profile. Happy new year to all and thanks 
> 
> How about hosting tutorial on http://gentoo-wiki.com

 

*drumroll* 

http://gentoo-wiki.com/Installing_Gentoo_-_The_Gentoo_Developers_Method_with_NPTL_and_2.6_from_Stage1

*/drumroll*

 :Wink:  Much thanks to bsodmike for getting it started.

----------

## kowal

 *Oktane wrote:*   

>  *Coz wrote:*   I will try harder now to find a patch for reiserfs4. 
> 
> Here are Reiser4 patches from Namesys...
> 
> Here are mm-sources broken-outs...

 

Is any one unable  to access namesys.com or it's just my end?

----------

## Bob P

 *hielvc wrote:*   

> ... So instead of doing a bootstrap you 
> 
> ```
> 
> emerge --oneshot glibc binutils gcc    > for a regular, non ~x86
> ...

 

I've been tinkering with Rac's robust installation method.  I'm a little confused by a couple of things in your post.

first, the first code listing includes, but the second code listing (one-liner) doesn't include the "emerge -C linux-headers" step.  IME with a 2004.3 Stage 3 tarball, you have to emerge -C the linux headers, as failing to do so results in a failed emerge of linux26-headers with linux-headers acting as a blocker.  (this step isn't necessary if you start with a Stage 1 tarball). hasn't anyone else noticed this, or is nobody else using a Stage 3 tarball?

second, I see in the first code snippet above that you've replaced the bootstrapping script with equivalent toolchain building steps.  These make sense.  In the second code listing, the super-duper one-liner adds "emerge --oneshot --nodeps gcc-config" before the toolchain is built.  i'm not sure why this step exists in the second code listing but not in the first, and i'm hoping someone can explain why its being used in the second code listing.  thx.

----------

## kimchi_sg

 *Bob P wrote:*   

> the second code listing (one-liner) doesn't include the "emerge -C linux-headers" step.  IME with a 2004.3 Stage 3 tarball, you have to emerge -C the linux headers. hasn't anyone else noticed this, or is nobody else using a Stage 3 tarball?

 

Yes, I'm sure some people out there have noticed, but they're all lurkers who don't comment at all on the difference.  :Sad: 

 *Bob P wrote:*   

> In the second code listing, the super-duper one-liner adds "emerge --oneshot --nodeps gcc-config" before the toolchain is built.  i'm not sure why this step exists in the second code listing but not in the first, and i'm hoping someone can explain why its being used in the second code listing.  thx.

 

It's to get around a long-standing bug in gcc way back from october - the sanity check errors: https://forums.gentoo.org/viewtopic.php?p=1691306#1691306 But no one knows if it has been bugfixed yet.  :Sad: 

An additional insertion i've only just thought of now, but is mentioned in rac's thread: emerge portage along with the toolchain in the first pass. I got sick and tired of seeing 4 NPTL installs restart the package count 23 packages into "emerge -e system", after portage was emerged. I can't tell if this will work, but I'm installing with this insertion into the one-liner now.

The new stage 3 reduced hassle no bootstrap super-duper one-liner  :Wink: 

```
env-update && source /etc/profile && emerge -C linux-headers && emerge linux26-headers && emerge --nodeps --oneshot gcc-config && emerge --oneshot glibc binutils gcc portage && emerge -e system && emerge syslog-ng xinetd grub hotplug coldplug vixie-cron reiserfsprogs reiser4progs sysfsutils udev dhcpcd && emerge --nodeps acpid ntp && rc-update add syslog-ng default && rc-update add net.eth0 default && rc-update add vixie-cron default && rc-update add xinetd default && rc-update add sshd default && rc-update add coldplug default && rc-update add hotplug default && rc-update acpid default
```

----------

## Bob P

 *kimchi_sg wrote:*   

>  *Bob P wrote:*   the second code listing (one-liner) doesn't include the "emerge -C linux-headers" step.  IME with a 2004.3 Stage 3 tarball, you have to emerge -C the linux headers. hasn't anyone else noticed this, or is nobody else using a Stage 3 tarball? 
> 
> Yes, I'm sure some people out there have noticed, but they're all lurkers who don't comment at all on the difference. 

 

that's one of the differences between the Stage 1 and Stage 3 tarballs with this guide -- AFAIK the Stage 1 tarballs for 2004.3 come with linux26-headers, while the Stage 3 tarball doesn't.

because ali3nx's guide is using the Stage 1 tarball, we've reached a point of divergence when we start talking about Rac's methods.

 *kimchi_sg wrote:*   

> It's to get around a long-standing bug in gcc way back from october - the sanity check errors: https://forums.gentoo.org/viewtopic.php?p=1691306#1691306 But no one knows if it has been bugfixed yet. 
> 
> ...
> 
> The new stage 3 reduced hassle no bootstrap super-duper one-liner 
> ...

 

after emerging gcc aren't we supposed to do another mandatory "etc-update && source /etc/profile"?  i notice that this has never appeared after emerging gcc in the one-liner...

----------

## Hobbit_HK

I remember posting a 3-liner so you could actually use the new CFLAGS gcc3.4 has before rebuilding your system.. It's here somewhere, I think after the first supr-duper-oneliner

----------

## kimchi_sg

 *Bob P wrote:*   

> AFAIK the Stage 1 tarballs for 2004.3 come with linux26-headers, while the Stage 3 tarball doesn't.

 

No, the stage 1 tarballs do not come with any form of kernel header files at all. Just extract a stage 1 to a temp directory, chroot into it and env-update, then do an emerge info and you will see what i mean. The headers will be shown as not installed, I verified it myself.

----------

## Bob P

ah, that explains it.  thanks.

----------

## Bob P

 *Hobbit_HK wrote:*   

> I remember posting a 3-liner so you could actually use the new CFLAGS gcc3.4 has before rebuilding your system.. It's here somewhere, I think after the first supr-duper-oneliner

 

while i've been building my base layout i've been i've been sifting through the volume of posts on this thread, and i've found your 3-liner.  it looks like a very good approach, and its very similar to the approach i have been taking.  thanks for pointing it out.

----------

## Deranger

 *kowal wrote:*   

>  *Oktane wrote:*    *Coz wrote:*   I will try harder now to find a patch for reiserfs4. 
> 
> Here are Reiser4 patches from Namesys...
> 
> Here are mm-sources broken-outs... 
> ...

 

I can't connect either.

----------

## hielvc

There were a couple of reasons why I pointed out rac's post. For those of you who are newer rac is one very bright bulb. I saw his post and I didnt want it to just disapear. The point of his post concerns this thread. This Howto is is one of the better ones around for ending up with a bleeding edge system. Before I found this thread I had stoped doing stage1s and with a homebrew  of experince, magic, three or four other threads and a stage3 I was doing what ali3n so straight forwardly put togather. 

The point of this Howto is to get your system built and going the fastest way possible. Most of us have seen a whole bunch of problems recently starting from a stage1 and bootstrap. Some of them could have been avoided by starting with a stage3 and according to rac even when we dont have probs there are  *Quote:*   

> 
> 
> There are some 80+ packages in a stage1ball that are not listed in /var/db/pkg. Why? When you do your "emerge system", you would want your new toolchain to be used to compile all software. If portage sees that a particular version from the stageball is still current, it will omit it. The solution that somebody apparently chose was to make portage forget that most of this software is installed at all, which has the unfortunate side effect of making portage be unable to clean it when your "emerge system" finishes. 

 

This can be avoided and there are usually less problems by " emerge system -e" from a statge3. So why not go this route? 

As to kimchi_sg's new super dupper one liner looks good.  :Wink: 

EDIT puttin words that escaped

----------

## Deranger

Namesys still down, but if somebody needs that Reiser4 patch against 2.6.10, you can get it from here.

Namesys is probably running their servers on Reiser4 (j/k)  :Laughing: 

----------

## ag_x

 *Oktane wrote:*   

> Namesys still down, but if somebody needs that Reiser4 patch against 2.6.10, you can get it from here.
> 
> 

 

Or from this tucows miror,i found it with google yesterday.

----------

## eyoussef

hi all, thanks for the great tutorial. I follow all steps in this tutorial and evrything went well, but after I reboot  my system start and did all the  loading well ,when it comes to the login I got a blank screen with only the cursor. 

I did emerge ati-drivers ,emerge x11-xorg. still the same problem .

Any idea guys? please help

----------

## Bob P

 *hielvc wrote:*   

> This can be avoided and there are usually less problems by " emerge system -e" from a statge3. So why not go this route? 
> 
> As to kimchi_sg's new super dupper one liner looks good. 

 

unfortunately, the process of performing a Stage 1 Install on a Stage 3 Tarball is more complicated that it appears at first glance.  I mentioned this in rac's thread that gave birth to this idea.

the one flaw that i see in every take on the whole Stage 1 on 3 approach that we've seen so far is that they're all performed from a Stage 1 mindset.  the contents of a Stage 3 tarball are different.  in addition to changing the way you bootstrap the system, you also have to consider where you're going with the newly emerged version of GCC.  

Hobbit-HK made a tremendously important point that nobody seems to have picked up on -- that you have to break the one-liner apart when you install a new version of GCC.   He made some good points about taking pause to think about the CFLAGS statements in /etc/make.conf before getting carried away with the one liner.  there are definitely some worthwhile benefits to be gained in that respect.

one other thing that nobody else seems to have noticed is that all of the one liners i've seen to date fail to actually install the GCC 3.4.3 compiler after emerging it!  if you follow the one-liner as it is written, the entire "emerge -e system" et.seq. is executed using GCC 3.3.4, even though we're all assuming that its being done with 3.4.3.  if you have any doubts about this, do a real Stage 3 install on a blank HD and see what i mean -- if you look at the output of "gcc-config -l" after emerging 3.4.3 you'll see something that looks like this:

```
#gcc-config -l

[1] i386-pc-linux-gnu-3.3.4 *

[2] i386-pc-linux-gnu-3.4.3

[3] i386-pc-linux-gnu-3.4.3-hardened

[4] i386-pc-linux-gnu-3.4.3-hardenednopie

[5] i386-pc-linux-gnu-3.4.3-hardenednossp
```

its absolutely essential to insert a statement like

```
gcc-config 2
```

into the one-liner to change the default compiler before getting carried away with "emerge -e system".  its probably a good idea to recompile all of the compiler tooklit components before going there too.  what do you think?

----------

## kimchi_sg

Bob P: Thanks for alerting us to that!

But i've just d/led the stage 1 for bootstrapping my pentium 3 laptop. And i dun want to re-d/l stage 3 again.  :Smile: 

Btw, thanks for mentioning me in the credits in your new 'stage 1 from stage 3' tutorial.  :Smile: 

Do u know if the extra 'gcc-config 2' step is required for a stage 1 tarball bootstrap as well?

----------

## Hobbit_HK

I don't think so.. Because when you install from stage1, you don't have GCC3.3 to begin with... You emerge 3.4 from the start..

PS

Thanks Bob P for mentioning me in our tut  :Smile: 

----------

## kimchi_sg

 *Hobbit_HK wrote:*   

> I don't think so.. Because when you install from stage1, you don't have GCC3.3 to begin with... You emerge 3.4 from the start..

 

you are correct... i turned on portage's log feature and checked the logs and lo and behold, no traces of gcc-3.3.x being emerged.  :Smile: 

----------

## Bob P

 *kimchi_sg wrote:*   

> Bob P: Thanks for alerting us to that!
> 
> But i've just d/led the stage 1 for bootstrapping my pentium 3 laptop. And i dun want to re-d/l stage 3 again. 
> 
> Btw, thanks for mentioning me in the credits in your new 'stage 1 from stage 3' tutorial. 
> ...

 

you know, i'd been reading through rac's thread  it seemed that in that thread and in this one, we were all tweaking ali3nx's methods to adapt them to the Stage 3 install from the Stage 1 mindset.  that is to say, i don't think that you have to do the "gcc-config 2" step in a Stage 1 install because (has Hobbit pointed out) you emerge GCC onto a blank system.  at least that's how i remember it.  because we're all used to doing Stage 1 installs, we've been biased by the lack of necessity for this step.  as a result, the need for replacing GCC 3.3.4 with 3.4.3 when doing the 1 on 3 wasn't intuitively obvious to us.  it had totally escaped me until i actually decided to quit reading about "virtual installs" and perform a real install on a real PC.  in getting ready to do that, i re-read all 21 pages of this post from beginning to end, and then it hit me -- alot of things have to be different to get the Stage 1 on 3 install right.

the differences became significant enough that i kept track of them on a notepad as i went through everything over the New Year's holiday.   because there were enough differences, it seemed only logical to put the revised method in its own thread.  to me at least, it seemed better to keep this thread about doing a real Stage 1, and to create the other thread for doing a Stage 1 on 3.  hopefully, both processes will be less confusing if we don't have crossover in the instructions.

in regard to mentioning you guys in the tut -- most of the answers to how to do a Stage 1 on 3 the right way were already posted here, so i thought it was only fair to give credit to the guys who came up with the ideas.   :Wink: 

Btw, i don't know if anyone has actually tried a Stage 1 on 3 following my directions yet, but so far the results have been great --  but because i did it on a Pentium 133 (yikes!) its still doing the emerge -e world and it will probably be stuck there for a couple of more days...  :Embarassed:   i need to hit a computer show later this month and pick up a couple of more boxes for testbeds.

----------

## mudrii

I use diferent tipe of instalation  of nptl with gcc 3.4

```

...

..

mirrorselect -a -s4 -o |grep 'GENTOO_MIRRORS=' >> /mnt/gentoo/etc/make.conf

cp -L /etc/resolv.conf /mnt/gentoo/etc/resolv.conf

mount -t proc none /mnt/gentoo/proc

chroot /mnt/gentoo /bin/bash

env-update

source /etc/profile

emerge --sync

nano -w /etc/make.conf

##Edit after change to new profile 2005.0

rm -f /etc/make.profile

ln -sf /usr/portage/profiles/default-linux/x86/2005.0 /etc/make.profile

mkdir /etc/portage

nano -w /etc/portage/package.keywords

echo "sys-devel/gcc ~x86" >> /etc/portage/package.keywords

echo "sys-libs/glibc ~x86" >> /etc/portage/package.keywords

echo "sys-libs/libstdc++-v3 ~x86" >> /etc/portage/package.keywords

echo "sys-kernel/linux26-headers ~x86" >> /etc/portage/package.keywords

emerge -C linux-headers 

emerge --oneshot --nodeps linux26-headers

## and bootstrap 

cd /usr/portage

scripts/bootstrap.sh

## check gcc 

gcc-config -l

## and emerge system

emerge system

ls /usr/share/zoneinfo

ln -sf /usr/share/zoneinfo/GMT /etc/localtime

etc ....
```

emerge libperl

----------

## hielvc

I was trying a stage3 using this howto in regards to some minor points  :Embarassed:   pointed out by Bob_Ping on my parade  :Laughing:  and I noticed that the USE flags dont have nptl in them. ali3nx I think thats a booboo.

EDIT I kaint spill schmit sigh

----------

## Bob P

ithreads is a pretty helpful USE flag too.  IIRC, emerging libperl with the nptl flag set, but no ithreads flag set, results in a warning message that specifically asks for the ithreads USE flag to be set, and then recompiling libperl.  of course, you won't see this message scroll away if "emerge libperl" is buried in a one-liner.    :Wink: 

----------

## Deranger

 *kimchi_sg wrote:*   

> 
> 
> Btw, thanks for mentioning me in the credits in your new 'stage 1 from stage 3' tutorial. 
> 
> 

 

I have to thank Bob P too  :Wink: 

----------

## Bob P

 *Oktane wrote:*   

>  *kimchi_sg wrote:*   
> 
> Btw, thanks for mentioning me in the credits in your new 'stage 1 from stage 3' tutorial. 
> 
>  
> ...

 

i was only giving credit where credit is due.   :Wink: 

BTW -- congrats on becoming a Veteran!    :Cool: 

----------

## Deranger

 *Bob P wrote:*   

>  *Oktane wrote:*    *kimchi_sg wrote:*   
> 
> Btw, thanks for mentioning me in the credits in your new 'stage 1 from stage 3' tutorial. 
> 
>  
> ...

 

Hehe, thanks. Actually, this is the second time I became Veteran (OTW posts no longer count total posts)  :Wink: 

----------

## PhilD

Well, I guess I should be happy that i have a working Gentoo system.  It took a while but I think everything major is installed and I can load into Xfce4.  There are still some bugs to work out but I will figure them out eventually.

One that I am working on and failing at is the nvidia drivers.  the gentoo-dev-source installed the linux-2.6.10-gentoo-r2 kernel.  I have checked that the /usr/src/linux is correctly linked to this directory.  I have emerged both nvidia-kernel and nvidia-glx without problems.  However, the nvidia module won't load.  I get "FATAL: Error inserting nvidia (/lib/modules/2.6.10-gentoo-r2/video/nvidia.ko): Invalid module format"  How can I fix this?

Thanks for the help.  Hopefully one of these days I will actually know what I am doing.

PhilD

----------

## Bob P

i don't have any nvidia experience, but i bet that you'd find an answer if you posted this question about kernels & hardware in the Kernel & Hardware. forum.  :Wink: 

----------

## PhilD

I spent some time on IRC and got it working.  I ended up having to recompile my kernel and remerge the nvidia module.  Still not sure why.

Thanks for the suggestions!!

PhilD

----------

## bibl4

 :Very Happy:  Thx a lot for this howto. It's a fantastic work!

 :Question:  Absolute no way to get material from ali3nx.info. Just falling in an almost empty dir. As a gentoo newbe i would realy have appreciate to see the commented make.conf mentionned here before posting further comments.

----------

## bibl4

Previous request solved.

I've got the wiki link on the 22th page as I posted my first msg   :Razz: 

----------

## gen2slackhat

here is my prob after gentoo install: cant create lock file /etc/mtab : Read-only file system (use -n flag to override) : failed to open device /dev/hda3: no such file or directory : warning... fsck.reiserfs for device /dev/hda3 exited with signal 6 : /sbin/rc: line 250: rc_splash: command not found  * filesystem couldnt be fixed : (

                                any help greatly welcomed!

----------

## Freso

I'm currently having the same issue as gen2slackhat.

I'm running a Compaq Armada 110 with Intel Celeron Coppermine processor. I'm also currently fiddling around with getting it work - will keep you posted if I succeed before someone else can provide a solution =)

----------

## gen2slackhat

boot up with livecd again... mount /dev/hda3  /mnt/gentoo...  then do a "touch /etc/mtab" ... and it fixed for me... peeps are slow to help sometimes here... lol

----------

## Bob P

 *gen2slackhat wrote:*   

> boot up with livecd again... mount /dev/hda3  /mnt/gentoo...  then do a "touch /etc/mtab" ... and it fixed for me... peeps are slow to help sometimes here... lol

 

the reason that people appear slow to respond in this forum is multifactorial.  first, this is not a support forum, its a documentation forum.  so support requests don't normally get filed here.  those of us who do scan the support forums on an hourly basis look in the support forums for people that need help -- we don't look here.  so the reason that you didn't get an answer as quickly as you might have liked was probably becasuse you didn't post in the best place to get a quick answer.   :Wink: 

----------

## Freso

They are :p But, thanks, I'll go and try that right away =)

----------

## Bob P

another good place to go for a quick answer are the IRC channels mentioned in the the first post.  you can get live, real-time help there.

----------

## Freso

Well, I often find my questions being drowned out by other people there, plus my (wireless) network isn't working optimally under Linux and I also tend to get distracted with other things and might miss an answer there if I'm out in the kitchen or reading an article or recreationally rolling some D20'ies ;)

Edit: Btw, I was also still fiddling around, trying to figure it out myself, when I said that I too, had the exact same problem. Once I would be able to admit defeat, I'd probably go to one or more of the IRC rooms, ask on gentoo-user@ and/or ask more directly for support here. ;)

But gen2slackhat's solution worked, so, yay! Thank you :)

Now to enable framebuffering and get the PCMCIA card working properly, and then back to finding out how to get the USB one to work so the PCMCIA can get back to its rightful master... and then to X.org and other, heavier, stuff... Whee! Fun times are yet ahead! :D

----------

## jsrlepage

success report :

Developers method under amd64 architecture...  :Very Happy: 

Bugs : i lost compatibility with grub-static, which seems not-nptl-friendly, and since I can't use grub-current...  :Sad: 

----------

## footloose

one million thankyou's to gen2slackhat for the "touch /etc/mtab" trick. my new laptop just booted . . . finally!

xoxo,

  footloose

----------

## tgriffiths

I have tried this method today (in the past it has worked on a identical system) and it fails on gettext... Anyway, after many attempts I went back to the beginning with only nptl in the USE flags and only using the standard gentoo install docs.

The bootstrapping installed both the 2.6 kernel headers and the standard kernel headers without complaints. Is this bad? At least it got past configuring gettext!

----------

## tgriffiths

IMHO if you want to do a stage 1 install with NPTL with the portage tree in its current state, you should *not* use this HOWTO. It simply did not work for me (where as, in the past it has).

I went back to the install documentation and did what the handbook said  *Quote:*   

> When you have set the nptl USE flag, running bootstrap.sh might fail with a message that linux-headers blocks linux26-headers. When you receive this error, remove linux-headers and retry

 

```
# emerge -C linux-headers

# emerge --oneshot --nodeps linux26-headers

# scripts/bootstrap.sh
```

<speculation>Perhaps there is something in portage today that makes gettext fail to build when following this HOWTO. I don't know. I'm just a n00b.

----------

## Deranger

Like it's been already said, 2004.3 stage1ball doesn't include linux-headers. You need to emerge linux26-headers and then run bootstrap script...

Please post some output of failed gettext compile if you want help  :Wink: 

----------

## Bob P

 *Oktane wrote:*   

> Like it's been already said, 2004.3 stage1ball doesn't include linux-headers. You need to emerge linux26-headers and then run bootstrap script...
> 
> Please post some output of failed gettext compile if you want help 

 

indeed, with the advent of the 2004.3 Stage 1 ball, you don't need to remove the linux-headers before you emerge the linux26-headers.  this is just another example of how tuts like this one tend to be more up to date than the GIH.  The GIH was right when it was written, and it stayed right until 2004.2, but its no longer up to date.  IMHO, this tut is much better if you want to do a 2004.3 Stage 1 install.  :Cool: 

removing the linux headers is still something that you need to do if you're doing the Stage 1 install with a Stage 3 tarball, but that's a different story altogether.  :Idea: 

if i had to take a wild guess at it, i'd bet that his gettext problem is a circular dependancy issue, but that's just a shot in the dark.   :Wink: 

EDIT: circular dependancy.  why do i keep typing redundancy?!?   :Wink: 

----------

## tgriffiths

 *Bob P wrote:*   

> 
> 
> if i had to take a wild guess at it, i'd bet that his gettext problem is a circular redundancy issue, but that's just a shot in the dark.  :wink:

 

I'd take a guess at that too. I am unable to post the exact error now though. The bootstrapping completed gettext with both linux-headers and linux26-headers emerged. Then it failed (on glibc I think) and said it couldn't build with both headers installed. So I unmerge'ed linux-headers, ran bootstrap again and it kept going (had already merged gettext so it didn't have to again).

So my advice is simply to follow the gentoo documentation while doing a stage 1 install from the 2004.3 live CD (I used the minimal version).

----------

## temporary lemon

Props for a great guide. I've been through many Gentoo installations and this one was by far the smoothest. My 400mhz workstation that was previously running Windows 2000 thanks you. I've never seen it with so much pep. It took a while to complete but boy was it worth it.

----------

## Deranger

 *tgriffiths wrote:*   

> 
> 
> So my advice is simply to follow the gentoo documentation while doing a stage 1 install from the 2004.3 live CD (I used the minimal version).

 

God damn, this is alternative installation guide, which works as well as the one from Gentoo Handbook.

 *tgriffiths wrote:*   

> 
> 
> Then it failed (on glibc I think) and said it couldn't build with both headers installed. So I unmerge'ed linux-headers, ran bootstrap again and it kept going (had already merged gettext so it didn't have to again). 
> 
> 

 

I highly doubt that you didn't use 2004.3 stage1ball.

----------

## Bob P

Oktane, its frustrating.  I've been suppressing my own dammits for a while now.   :Wink:  After writing that 1 on 3 howto I found that there are quite a few people who think that its a good idea to "blend" installation methods, taking pieces from the GIH and pieces from the alternative installation howtos.  I can't begin to tell you how many PMs i've received from people who thought my howto was b0rked because they only followed part of it.  AARGH!!!   :Mad:   we all know that you can't get linux-headers from a 2004.3 Stage 1 tarball.  it appears that some people just lose track of what they were doing and what they were reading when they did it.   :Confused:   the really annoying thing is that they insist that they are right and that the tuts are wrong.  this tut is proven and tested.  it works great, and it won't give you linux-headers.   :Cool: 

----------

## Deranger

 *Bob P wrote:*   

> Oktane, its frustrating.  I've been suppressing my own dammits for a while now.   After writing that 1 on 3 howto I found that there are quite a few people who think that its a good idea to "blend" installation methods, taking pieces from the GIH and pieces from the alternative installation howtos.  I can't begin to tell you how many PMs i've received from people who thought my howto was b0rked because they only followed part of it.  AARGH!!!    we all know that you can't get linux-headers from a 2004.3 Stage 1 tarball.  it appears that some people just lose track of what they were doing and what they were reading when they did it.    the really annoying thing is that they insist that they are right and that the tuts are wrong.  this tut is proven and tested.  it works great, and it won't give you linux-headers.  

 

Indeed. If you don't know what you are doing, follow the tutorial step by step  :Wink: 

----------

## tgriffiths

 *Quote:*   

> I highly doubt that you didn't use 2004.3 stage1ball

 

That's right. I did use 2004.3 stage 1 tarball booting using a 2004.3 minimal CD. As I said before, this tutorial has worked for me in the past, but for this system (identical to another that it was sucessful on but installed weeks earlier), it just didn't work. What more can I say?

Doesn't matter anyway. The gentoo docs have been updated to make people aware of what to do when installing with nptl in the USE flag. That worked for me.

----------

## kox

While doing stage1 bootstrap I get following error:

./libtool: line 1: g++: command not found

make: *** [cxx_db.lo] Error 1

!!! Error: sys-libs/db-4.1.25_p1-r4 failed.

!!! Function src_compile, Line 96, Exitcode 2

Can somebody help me plz?

I just found thread in german about exactly this problem but still have no functional solution:

https://forums.gentoo.org/viewtopic.php?t=278895

Just use:

USE="static" emerge --nodeps gcc 

and than bootstrap.

----------

## 3nd3r

welll, ill try this way on the lappy. hopefully i can keep gentoo up on it longer than a week this time  :Razz: 

----------

## Kaddy

ali3n, thanks for all of your help that you have managed to throw into that little tutorial

lucky for you, I am trying to learn more about it so that everyone isn't hanging all over you asking questions on IRC  :Wink: 

as well, a slight mdoification to your one-liner, and, I know that this might seem really annoying with me always letting you know things, however, the addition of etc-update would be nice, just so that they don't have to freak out about it saying that there is one file to be updated. 

just a thought

----------

## househead

Is it worth you including the userlocales flag for building glibc? It cuts the compile time down. Taken from the stage 1 on 3 howto

 *Quote:*   

> 6.7 Activate User Locales
> 
> When compiling glibc (we'll do this in an upcoming step), Gentoo's default behavior is to compile a full set of all of the available user locales. We will activate the userlocales local USE flag to limit the compilation of userlocales to those that we specify. Limiting the scope of userlocales will save us a tremendous amount of time while compiling glibc.
> 
> 6.7.1 Activate the userlocales USE flag for glibc
> ...

 

I'm in the UK and using

 *Quote:*   

> 
> 
> en_GB/ISO-8859-1
> 
> en_GB/ISO-8859-15
> ...

 

----------

## Bob P

 *househead wrote:*   

> Is it worth you including the userlocales flag for building glibc? It cuts the compile time down. Taken from the stage 1 on 3 howto
> 
>  *Quote:*   [code]6.7 Activate User Locales
> 
> When compiling glibc (we'll do this in an upcoming step), Gentoo's default behavior is to compile a full set of all of the available user locales. We will activate the userlocales local USE flag to limit the compilation of userlocales to those that we specify. Limiting the scope of userlocales will save us a tremendous amount of time while compiling glibc.
> ...

 

Gza, Oktane and Hobbit discussed the idea of implementing userlocales on on Pages 11 and 18 of this thread back in November:

https://forums.gentoo.org/viewtopic.php?t=189250&postdays=0&postorder=asc&start=256

but the topic seems to have died off without any fanfare.

technically, you don't have to go to the trouble of creating a local (package-specific) use flag statement by creating the /etc/portage/package.use file as i did in the Stage 1 on 3  guide.  

if you want to configure userlocales support using this tut using a global use flag, all that you need to do is to add "userlocales" to your global use flags in make.conf, and edit /etc/locales.build to have the appropriate values for your location.  then when you compile glibc you'll be all set.

the only reason that i used package-specific use flags the way that i did in the Stage 1 on 3  guide was to use it as an example for configuration of /etc/portage/package.use, and because it makes your make.conf file a bit "cleaner" by "hiding" one use flag.  you don't need to do it that way if you don't want to.    :Wink: 

----------

## househead

 *Bob P wrote:*   

> 
> 
> if you want to configure userlocales support using this tut using a global use flag, all that you need to do is to add "userlocales" to your global use flags in make.conf, and edit /etc/locales.build to have the appropriate values for your location.  then when you compile glibc you'll be all set.
> 
> the only reason that i used package-specific use flags the way that i did in the Stage 1 on 3  guide was to use it as an example for configuration of /etc/portage/package.use, and because it makes your make.conf file a bit "cleaner" by "hiding" one use flag.  you don't need to do it that way if you don't want to.   

 

Is "userlocales" used in any other package compiles, or is there a command I can run to find out?

apologies if this is off-topic

----------

## kimchi_sg

 *househead wrote:*   

> Is "userlocales" used in any other package compiles, or is there a command I can run to find out?

 

Read /usr/portage/profiles/use.local.desc

----------

## househead

 *kimchi_sg wrote:*   

>  *househead wrote:*   Is "userlocales" used in any other package compiles, or is there a command I can run to find out? 
> 
> Read /usr/portage/profiles/use.local.desc

 

Thanks.

Thats a no then for interested parties.

BobP > I recently did your stage 1 on 3 howto, system was tip top, I did a few "emerge -uD --newuse world"s and now when I try and emerge certain packages (such as xfce4 and Ooo), and sometimes also when using the cdrom, the kernel would panic and reboot.

I'm not asking for support, as I know your head is pecked, and I doubt very much it has anything to do with your install guide (which was v good IMO). In fact I'm currently rebuilding using this very howto as a guide (which is also very good). I have done this install a few times, and it has come off well in the past.

I am like many people on these kinda topics, I build a speed-demon of a system, then optimise and update until I break it! Ya gotta love gentoo for that, the possibilities are endless!

----------

## Bob P

i've never thought that it was a good idea to over-update a stable working gentoo system, as b0rkage typically results.  if your system is stable and the packages that you need to work properly are working properly, its kind of pointless to continually update.  in doing that sort of thing, you are putting a perfectly functional system at risk of breakage, to gain what?  if your packages already work, all that you gain is "bragging rights" about having the most up to date gentoo system on your block.  in contrast, i'd rather brag about having a gentoo system that never breaks.  you won't find any sort of emerge updates in my cron files -- other than emerge --sync.

----------

## househead

 *Bob P wrote:*   

> i've never thought that it was a good idea to over-update a stable working gentoo system, as b0rkage typically results.  if your system is stable and the packages that you need to work properly are working properly, its kind of pointless to continually update.  in doing that sort of thing, you are putting a perfectly functional system at risk of breakage, to gain what?  if your packages already work, all that you gain is "bragging rights" about having the most up to date gentoo system on your block.  in contrast, i'd rather brag about having a gentoo system that never breaks.  you won't find any sort of emerge updates in my cron files -- other than emerge --sync.

 

I guess we live and learn! Since my recent nightmare, I am much more inclined to update individual packages for more features or bugfixes, rather than just because there is a newer version. I wouldn't dream of updating through a cron-job, that's just silly!

----------

## kimchi_sg

 *househead wrote:*   

> I wouldn't dream of updating through a cron-job, that's just silly!

 

Not if you are a server admin who is too busy with other things and cannot remember to update, or even to check for updates.  :Razz: 

----------

## househead

 *kimchi_sg wrote:*   

>  *househead wrote:*   I wouldn't dream of updating through a cron-job, that's just silly! 
> 
> Not if you are a server admin who is too busy with other things and cannot remember to update, or even to check for updates. 

 

You'd really have to mask the toolchain elements in that situation then surely!?

----------

## iverasp

heres my mirror of the .config file, if anyone would like one

http://asperud.net/gentoo/.config

----------

## LunarFault

I just want to say to all those who doubt this is great.  I have noticed around 50% preformance gain from bootstraping this way.  Thanks Ali3nx.

Lunar Fault

----------

## ProtectionFault

Great Howto!

I've only a short addition: as of 2005.0 there is no linux26-headers merge needed, as the headers are allready incorporated into the new release...

----------

## apberzerk

Should I be using linux-headers ~x86 or linux-headers -* in my package.keywords if I want to use nptl?  I can't remember what -* means....

----------

## ali3nx

well after a long time it's 2005.0! Updates to this toturial are underway for the new release. I've just updated the hostnames and domainnames section with new code examples. More to come shortly!  :Smile: 

----------

## ali3nx

Completely updated for current installation methods. 118,000 views and growing says to me that people using this deserve to have it updated. To those i promised i would update it "now" my apologies. Some monolithic things are best left to brood. 

Added: lxnay RR4 series installation media information.

Added : Bush sucks flame out to georgie

Updated: oneliner install technique to reflect current use flag filtering in stage1 installations

Added: ??? hmmm i'll brood on it some more =]

Results: Slowly growing to one of the most ever used tutorials on gentoo forums. Inspirational!

----------

## ali3nx

Updated for 2005.1! Enjoy  :Smile: 

----------

## Jedidiah

Hey this is my first shot at a stage one install, i started the "one liner" runnning last night, and it ran most of it (i think) but when i woke up it had errored out while trying to install aspell (the exact error message is bellow). I am not entirely sure how much of the one liner i need to run to have it do the rest of the install, and i am not sure exactly what the problem is. is it due to bad USE Flags on my part? did my c compiller not compile correctly?

thanks

jedidiah

```

>>> emerge (11 of 84) app-text/aspell-0.60.3 to /

>>> md5 files   ;-) aspell-0.60.2.ebuild

>>> md5 files   ;-) aspell-0.50.5-r4.ebuild

>>> md5 files   ;-) aspell-0.60.3.ebuild

>>> md5 files   ;-) files/digest-aspell-0.60.2

>>> md5 files   ;-) files/digest-aspell-0.60.3

>>> md5 files   ;-) files/01-gcc3.3-assert.patch

>>> md5 files   ;-) files/aspell-quotechar-fix.patch

>>> md5 files   ;-) files/digest-aspell-0.50.5-r4

>>> md5 files   ;-) files/aspell-buffer-fix.patch

>>> md5 files   ;-) files/aspell-0.50.5-charcount.patch

>>> md5 files   ;-) files/aspell-0.60.3-templateinstantiations.patch

>>> md5 files   ;-) files/02-gcc3.3-constcast.patch

>>> md5 src_uri ;-) aspell-0.60.3.tar.gz

>>> Unpacking source...

>>> Unpacking aspell-0.60.3.tar.gz to /var/tmp/portage/aspell-0.60.3/work

 * Applying aspell-0.60.3-templateinstantiations.patch ...                [ ok ]

>>> Source unpacked.

 * Patching ${S}/ltmain.sh ...

 *   Applying portage-1.5.10.patch ...

 *   Applying sed-1.5.6.patch ...

 *   Applying fix-relink-1.5.0.patch ...

 * Applying uClibc/libtool patches ...

 * econf: updating aspell-0.60.3/config.guess with /usr/share/gnuconfig/config.guess

 * econf: updating aspell-0.60.3/config.sub with /usr/share/gnuconfig/config.sub

./configure --prefix=/usr --host=i686-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --build=i686-pc-linux-gnu --disable-static --sysconfdir=/etc/aspell --enable-docdir=/usr/share/doc/aspell-0.60.3

checking build system type... i686-pc-linux-gnu

checking host system type... i686-pc-linux-gnu

checking target system type... i686-pc-linux-gnu

checking for a BSD-compatible install... /bin/install -c

checking whether build environment is sane... yes

checking for gawk... gawk

checking whether make sets $(MAKE)... yes

checking whether to enable maintainer-specific portions of Makefiles... no

checking for i686-pc-linux-gnu-g++... i686-pc-linux-gnu-g++

checking for C++ compiler default output file name... configure: error: C++ compiler cannot create executables

See `config.log' for more details.

!!! Please attach the config.log to your bug report:

!!! /var/tmp/portage/aspell-0.60.3/work/aspell-0.60.3/config.log

!!! ERROR: app-text/aspell-0.60.3 failed.

!!! Function econf, Line 485, Exitcode 0

!!! econf failed

!!! If you need support, post the topmost build error, NOT this status message.

```

----------

## ali3nx

 *Jedidiah wrote:*   

> Hey this is my first shot at a stage one install, i started the "one liner" runnning last night, and it ran most of it (i think) but when i woke up it had errored out while trying to install aspell (the exact error message is bellow). I am not entirely sure how much of the one liner i need to run to have it do the rest of the install, and i am not sure exactly what the problem is. is it due to bad USE Flags on my part? did my c compiller not compile correctly?
> 
> thanks
> 
> jedidiah
> ...

 

Unfortunately the current aspell build has a problem. remove spell and gpm from your use flags and then emerge --newuse -uD system. Ncurses and it's dependancies in the make.conf i've not edited properly depend on aspell and gpm which ends up becoming a circular problem. I currently have a bad chest cold but i've made a note to fix the use flags on my local copy.

----------

## Jedidiah

Thanks for the tip, i ended up finding another post in the forum that said to strip the use flags down to next to nothing, so i did that, and it seems to have worked, i am emergeing the kernel sources as we speak. 

from a newbie (to stage 1 installs) your guide is excellent, though you may consider listing somewhere, what the bare minimum use flags are that one needs for an ntpl build (aka nptl and ntplonly, and any others), and then instructing the user to add program specific use flags, after the initial stage1 compile

good job & thanks, i'll make that change for the next computer i stage1 and give it another shot

jedidiah

----------

## vipernicus

I can't seem to get your LDFLAGS from your make.conf to compile Glibc, any ideas?

----------

## vfox

HIYA! first post  :Smile: 

I have a similar error to Jedidiah's but it's not quite the same. I'm using ali3nx's make.conf ALMOST to a T (I didn't change any of the USE flags). I ran the one liner last night and woke up to this:

```

* Applying uClibc/libtool pathces ...

* Fixing ${S}/ltconfig ...

>>> Source unpacked.

* econf: updating file-4.15/config.guess with /usr/share/gnuconfig/config.guess

* econf: updating file-4.15/config.sub with /usr/share/gnuconfig/sub.guess

.configure --prefix=/usr --host=i686-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --build=i686-pc-linux-gnu --datadir=/usr/share/misc

checking for a BSD-compatibale install... /bin/install -c

checking whether build environment is sane... configure: error: newly created file is older than distributed files!

Check your system clock
```

I've narrowed it down to the emerge --newuse -uD system command. (Still got 140 packages to go.....) Any clue?

----------

## vfox

HA! Figured it out. Apparently I didn't set a time zone last night. As soon as I set it and reset the time to the REAL time, the configure went through perfectly. 

By the way, very nice guide ali3nx.

----------

## pr3d

i`ve got a similar error, i dont have gcc 3.4 installed, just 3.3

lirc_dev: version magic '2.6.11-gentoo-r9 SMP preempt 586 4KSTACKS gcc-3.4' should be '2.6.11-gentoo-r9 486 gcc-3.3'

lirc_dev: no version magic, tainting kernel. 

and the error comes up with all the modules i want to emerge,

what do you suggest me?

should i try roc's code?

regards pr3d

----------

## ali3nx

 *pr3d wrote:*   

> i`ve got a similar error, i dont have gcc 3.4 installed, just 3.3
> 
> lirc_dev: version magic '2.6.11-gentoo-r9 SMP preempt 586 4KSTACKS gcc-3.4' should be '2.6.11-gentoo-r9 486 gcc-3.3'
> 
> lirc_dev: no version magic, tainting kernel. 
> ...

 

This appears to be somehow related to lirc in your system configuration. possibly due to lirc being added in your kernel config. Maybe check it out

----------

## pr3d

no, lirc support is no more availabl in the kernel config

the modules are compiled during install of lirc

but every other modules dont work too, if i install nvidia kernel

the nvidia.ko doesnt work. I have now almost every thing i need

of drivers compiled into the kernel, so i cant start my pc anyway.

the strange is i didnt have gcc 3.4 installed just the gcc3.3.5 which 

i emerged.

----------

## pr3d

i've made an own topic 

it's located here:

https://forums.gentoo.org/viewtopic-t-371848.html

there is some more information about my problem, maybe you could help

----------

## Rukie

Everything worked great except for one thing... the splash image! I get several errors. I followed everything step for step, but I still get the following errors.

"Cannot open config file /etc/splash/livecd-2005.1/640x480.cf"

"No 8bpp verbose silent picure specified in theme config"

"No 8bpp verbose picture specified in theme config"

"Failed to get 8bpp picture in theme config"

I've tried adjusting the grub.conf in a few different ways, and nothign really seems to make any headway.

----------

## ali3nx

Few edit's and code example cleanups. I removed all the hostnames from various servers and workstations i used while making the tutorial. I'll be adding more content this fall time permitting. kde, gnome, and xorg setup with gdm. and an optional sections on using hardened gentoo linux  :Twisted Evil:  More to come Stay tuned

----------

## ycUygB1

Well, I spent all day following the instructions, rebooted and after the initrd finished,

I got:

VFS:  Cannot open root device "sda8" or unknown-block(0,0)

Please append a correct "root=" boot option

Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)

My setup is:

  ASUS A8N-SLI Premium Motherboard.

  AMD64 x2

  1 sata drive attached to the Nvidia controller.

  there is also an SiI SATA controller, which has no drives attached.

  /boot is on /dev/sda4, type ext2

  / is on /dev/sda8, type reiserfs (3.6)

grub.conf says:

   root (hd0,4)

   kernel /vmlinuz root=/dev/sda8 video=vesafb:ywrap,pmipal,1024x768-32@65 splash=silent,fadein,theme:livecd-2005.1 quiet

   initrd (hd0,4)/fbsplash-livecd-2005.1-1024x768

OK, so I scoured the internet, and quite a few people have had the same problem.

Here are all the things I've tried which haven't worked:

1)  Disabling advanced partition selection in the kernel.  This worked for a lot of people, apparently.

2)  Compiling ext2, ext3, reiserfs, squashfs and cramfs into the kernel not as modules.

3)  Make sure that Nvidia SATA support is in the kernel, not as a module.

The 2005.1 live cd works fine by loading libata followed by sata_nv, but I don't know if you can do that with an initrd.

EDIT  -- I solved this problem by enabling Advanced Partition selection and the MSDOS Partitions suboption.

This is apparently new in the .config.  /dev/sda1 is a Windows setup, so the kernel got confused and needed

these two options to be enabled in the .config.

----------

## xchric

I got this error when I was doing 

```
emerge --newuse -uD system
```

This is the second time I follow this guide and I got the same error last time. I followed the guide step by step. It seems that this is not a random error.

Any idea

Thanks for your help

```
checking for a BSD-compatible install... /bin/install -c

checking whether build environment is sane... yes

checking for gawk... gawk

checking whether make sets $(MAKE)... yes

checking whether to enable maintainer-specific portions of Makefiles... no

checking for i686-pc-linux-gnu-g++... i686-pc-linux-gnu-g++

checking for C++ compiler default output file name... configure: error: C++ compiler cannot create executables

See `config.log' for more details.

!!! Please attach the config.log to your bug report:

!!! /var/tmp/portage/aspell-0.50.5-r4/work/aspell-0.50.5/config.log

!!! ERROR: app-text/aspell-0.50.5-r4 failed.

!!! Function econf, Line 485, Exitcode 0

!!! econf failed

```

----------

## erezny

I wanted to point out that the link 

http://mirror.datapipe.net/gentoo/releases/x86/2005.1/livecd/install-x86-minimal-2005.1.iso  doesn't work, but the file has a bittorent at http://tracker.netdomination.org/. Also, the lxnay dvd has one very slow server atm, and if there is anybody who has it who could share it for a while, i wouldnt mind being a seed for it as soon as i can download a copy.

----------

## CapnLoogie

I have a K6-3-400 that Im trying to install Gentoo on.  It says in your make.conf to avoid using the flag for these processors.  I cant seem to find the bug that it points to.  If Im not supposed to use them what should I set the CFLAGS to?

Thanks

The Cap'n

----------

## slycordinator

 *xchric wrote:*   

> I got this error when I was doing 
> 
> ```
> emerge --newuse -uD system
> ```
> ...

 

Since it says your C++ compiler cannot create executables then that leads me to believe that either:

1) Something is borked in your gcc install

or

2) Your your CFLAGS/CXXFLAGS has a typo in it.

So please post your CFLAGS and CXXFLAGS from make.conf

----------

## xchric

 *slycordinator wrote:*   

>  *xchric wrote:*   I got this error when I was doing 
> 
> ```
> emerge --newuse -uD system
> ```
> ...

 

I think I use the make.conf provided in this how-to.

```

CHOST="i686-pc-linux-gnu"

CFLAGS="-march=pentium3 -O2 -fomit-frame-pointer -pipe"

CXXFLAGS="${CFLAGS}"

```

My machine is IBM thinkpad T40 and the CPU is pentium-m

I first used 

```
-march=pentium4
```

 to perform the bootstrap, I failed in the middle and I changed the CFLAGS to

```
-march=pentium3 
```

 and I passed the bootstrap. then I encounted the error above when was trying the emerge system

----------

## ericx

I've been trying to follow the tutorial, and I've gotten as far as this component of the build one-liner:

emerge --newuse -uD system

I can't really follow the emerge script; but the build of pango fails when it tries to include Xlib.h: 

```

include/cairo -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/freetype2 -march=pentium4 -O3 -fomit-frame-pointer -pipe -Wall -c pango-scan.c  -fPIC -DPIC -o .libs/pango-scan.o

In file included from ../pango/pangoxft.h:30,

                 from pango-scan.c:10:

../pango/pangoxft-render.h:31:22: X11/Xlib.h: No such file or directory

../pango/pangoxft-render.h:32:25: X11/Xft/Xft.h: No such file or directory

../pango/pangoxft-render.h:35:2: #error "must have Xft version 2 or newer" 

```

Xlib.h is part of xorg's X11, but if I try to emerge x11-base/xorg-x11, it requires pango (actually giflib too with the exact same problem).  So... You can't build xorg because it requires pango while pango requires xorg.

---

Out of frustration, I just downloaded X11R6.8.6-src.tar.gz and installed it without the emerge.  Now the pango build goes further; but now it fails because for some unknown reason it is not including fontconfig.h.  This is trivially fixed if I blow off the emerge again and just build it from source; but I'm trying to give Gentoo a real shot here and I really don't want to be burdened with an endless sequence of hand builds.

Thanks for your time.

----------

## ali3nx

 *ericx wrote:*   

> I've been trying to follow the tutorial, and I've gotten as far as this component of the build one-liner:
> 
> emerge --newuse -uD system
> 
> I can't really follow the emerge script; but the build of pango fails when it tries to include Xlib.h: 
> ...

 

I have a vague hunch here that you may need to addd Xaw3d to your use flags. There's another ebuild i recall having a similar issue with. Hope it helps.

----------

## ericx

 *Quote:*   

> I have a vague hunch here that you may need to addd Xaw3d to your use flags. There's another ebuild i recall having a similar issue with. Hope it helps.

 

Thanks, but that doesn't seem to have any effect (good or bad).  "emerge system" dives into emerging pango which fails because xorg isn't already built. (I know I'm new to this, but why does the xorg port insist that pango be built first? That just seems really dumb. Isn't there a flag I can set to insist that I don't want pango?)

----------

## ali3nx

 *ericx wrote:*   

>  *Quote:*   I have a vague hunch here that you may need to addd Xaw3d to your use flags. There's another ebuild i recall having a similar issue with. Hope it helps. 
> 
> Thanks, but that doesn't seem to have any effect (good or bad).  "emerge system" dives into emerging pango which fails because xorg isn't already built. (I know I'm new to this, but why does the xorg port insist that pango be built first? That just seems really dumb. Isn't there a flag I can set to insist that I don't want pango?)

 

If you still have your source tree for xorg that you used to build your xorg i highly suggect you make uninstall because there's about 100 patches gentoo adds to xorg's src tree before autotools starts making the Makefiles. also all of your xorg libs and such will be in an incorrect location and not managed by portage which could create breakage due to stray shared objects and such being overinstalled when emerge updates xorg. As for fontconfig.h is a dependancy of xorg provided by fontconfig and pango is absolutely needed for some gtk based graphical applications. You may have a pesky problem with circular dependancies which creates a state where dependancies arent installed before some package or group of packages due to more than one parent package needing similar applications.

----------

## ericx

 *Quote:*   

> If you still have your source tree for xorg that you used to build your xorg i highly suggect you make uninstall

 

I hoped it was obvious that I was trying to do that.  However, the xorg emerge requires giflib and pango, while giflib and pango won't build until after you have installed xorg...  If there is a way to do this with emerge, clearly that is the way to do it.  

This is particularly frustrating because xorg in no way actually requires giflib and pango in order to build.

Are the nuts and bolts of emerge documented anywhere (other than the --help and man pages)? Or do I have to start wading thru code?

Thanks.

----------

## wschalk

Hi,

I try to install a Gentoo system remotely on my friends' laptop (currently running Debian 3.0 with a 2.4.x kernel) and I am getting those "no space left on device" errors. Here's what I did:

/dev/hda1 was my friends' swap partition, and is no an ext3 one:

# mount /dev/hda1 /mnt

Afterwards I downloaded stage 1 for x86 and extracted it, modified make.conf

# mount -t proc proc /mnt/proc

# mount -o bind /dev /mnt/dev

# cp /etc/resolv.conf /mnt/etc/resolv.conf 

# chroot /mnt /bin/bash 

# env-update && source /etc/profile

(I have to do the following step to make "df" work, otherwise, it will come up with strange error messages)

# cp /proc/mounts /etc/mtab

Downloaded and extraced a portage snapshort. Now running "emerge sync" leads to

# emerge sync

>>> starting rsync with rsync://134.68.220.97/gentoo-portage...

>>> checking server timestamp ...

Welcome to hawk.gentoo.org

Server Address : 134.68.220.97

Contact Name   : mirror-admin@gentoo.org

Hardware       : 1 x Intel(R) Pentium(R) 4 CPU 2.40GHz, 2176MB RAM

Please note: common gentoo-netiquette says you should not sync more

than once a day.  Users who abuse the rsync.gentoo.org rotation

may be added to a temporary ban list.

MOTD brought to you by motd-o-matic, version 0.3

receiving file list ...

1 file to consider

mkstemp "/var/tmp/.timestamp.chk.VaX9k9" failed: No space left on device

          32 100%    0.00kB/s    0:00:00

However there should be space on the harddisk:

# df -h

Filesystem            Size  Used Avail Use% Mounted on

rootfs                950M  538M  402M  58% /

/dev/root             950M  538M  402M  58% /

devpts                146G  448M  138G   1% /dev/pts

tmpfs                 146G  448M  138G   1% /dev/shm

/dev/hda1             950M  538M  402M  58% /

/dev/root             146G  448M  138G   1% /dev

Interestingly "df -i" says something different:

# df -i

Filesystem            Inodes   IUsed   IFree IUse% Mounted on

rootfs                123648  123648       0  100% /

/dev/root             123648  123648       0  100% /

devpts               19415040   21834 19393206    1% /dev/pts

tmpfs                19415040   21834 19393206    1% /dev/shm

/dev/hda1             123648  123648       0  100% /

/dev/root            19415040   21834 19393206    1% /dev

Any ideas what might cause this?

Thanks a lot and bye,

Werner.

----------

## Bob P

Yikes!  Has Hell Frozen Over?  The Gentoo Stage 1 Install is Now Officially  UNSUPPORTED!

 *Gentoo Installation Handbook 2005.1, Nov 12, 2005, Section 5.c wrote:*   

> 
> 
> Make sure you download a stage3 tarball - installations using a stage1 or stage2 tarball are not supported anymore.

 

congrats ali3nx, you should be inspired by the fact that you're now an even more extreme member of the extreme lunatic fringe.    :Cool: 

i think that this means that even more people are going to be using this excellent installation method.  keep up the good work!

----------

## slycordinator

 *ericx wrote:*   

>  *Quote:*   If you still have your source tree for xorg that you used to build your xorg i highly suggect you make uninstall 
> 
> I hoped it was obvious that I was trying to do that.  However, the xorg emerge requires giflib and pango, while giflib and pango won't build until after you have installed xorg...  If there is a way to do this with emerge, clearly that is the way to do it.  
> 
> This is particularly frustrating because xorg in no way actually requires giflib and pango in order to build.
> ...

 

Something must be very strange in your USE flags for xorg to depend on pango. Try posting the output of "emerge -pv xorg-x11"

----------

## krizz

Hi there,

I really dig this installation method, isn't it cool to deviate from the 'normal' way  :Smile: 

But, I spotted some 'errors':

If I emerge gcc-config (the first thing to emerge); emerge complaints about non-existence of /var/log/portage, I just manually created it.

emerge libperl is there twice (I mean the loooong instruction).

My 0.02$  :Smile: 

/* EDIT

Also, I'd like to point at the fact that just after the bootstrap, gcc-3.4 is installed, but not used to compile yet. This will only work after a env-update and source /etc/profile. Try it yourself.

*/

----------

## slycordinator

 *krizz wrote:*   

> [*]emerge libperl is there twice (I mean the loooong instruction).

 

That's not an "error" really. It's just no longer needed. There was a time when there were ebuilds that had circular dependencies with perl when doing "emerge -e system" and the way you fixed that was doing "emerge libperl" and you did it twice just to be very safe.

----------

## ericx

 *slycordinator wrote:*   

>  *ericx wrote:*   
> 
> I hoped it was obvious that I was trying to do that.  However, the xorg emerge requires giflib and pango, while giflib and pango won't build until after you have installed xorg...  If there is a way to do this with emerge, clearly that is the way to do it.  
> 
> This is particularly frustrating because xorg in no way actually requires giflib and pango in order to build.
> ...

 

I've since lost the scenario.  I started with ali3nx's list of USE flags, and then tried to pare it down.  Subsequently, I just used that entire mondo list and it built. 

I got this from an archive, I'm pretty sure it is what I was using:

```

USE="aac aalib acl acpi alsa apache2 -arts \

     audiofile bash-completion \

     bcmath bzip2 bzlib cddb cdinstall \

     cdparanoia cdrom chroot \

     cpdflib css ctype -cups curl curlwrappers dba dio \

     divx4linux doc droproot dts dv dvdr dvdread edl \

     emacs emacs-w3 encode erandom exif extensions \

     fastcgi fbcon ffmpeg fluidsynth fmod \

     fpx freetype ftp gd geoip \

     glade glut gmp gnuplot graphviz gs \

     hal hardenedphp hdf iconv \

     imap imlib2 innodb ipv6 irda irmc jabber \

     jbig jp2 jpeg2k \

     kerberos krb4 lcms leim \

     libgd libsamplerate lirc live \

     lzo mcal memlimit \

     mime mmap mng \

     mp3 mpeg mpeg4 mpi mplayer mysql \

     mythtv \

     netcdf network nptl nptlonly \

     offensive openal opie \

     pcntl pcre pda perl \

     php posix qt samba \

     session \

     sftplogging sharedmem simplexml smime sndfile \

     sockets sox sse ssl \

     struts sysvipc tidy transcode \

     truetype-fonts type1-fonts unicode v4l v4l2 vcd \

     X509 xanim \

     xine \

     xpm xvid \

     zvbi"

```

---

Edit:  Looks like 'X' might be missing?

----------

## radyvix

Wanted to say thanks.  This is the install guide that I was looking for.  Everything on my system is running much smoother than my past installs and it only took one shot.  I now have a working linux desktop/server computer and look forward to performing this install on some more boxes.

----------

## mr2600

What a nice tutorial... I decided to re-roll a test on some new hardware we obtained at work.

Pentium 4 630 with 2mb cache and EMT64.

CHOST="x86_64-pc-linux-gnu"

CFLAGS="-march=nocona -O2 -fomit-frame-pointer -mmmx -msse2 -mfpmath=sse -pipe"

However at "USE="-* build bootstrap" emerge linux-headers" I got this problem...

```
* Library routines

*

CRC-CCITT functions (CRC_CCITT) [N/m/y/?] n

CRC32 functions (CRC32) [Y/?] y

CRC32c (Castagnoli, et al) Cyclic Redundancy-Check (LIBCRC32C) [N/m/y/?] n

  SPLIT   include/linux/autoconf.h -> include/config/*

  CC      scripts/mod/empty.o

cc1: error: code model `kernel' not supported in the 32 bit mode

make[2]: *** [scripts/mod/empty.o] Error 1

make[1]: *** [scripts/mod] Error 2

make: *** [scripts] Error 2

!!! ERROR: sys-kernel/linux-headers-2.6.11-r3 failed.

!!! Function compile_headers, Line 415, Exitcode 2

!!! prepare failed

!!! If you need support, post the topmost build error, NOT this status message.

```

Is this related to trying to run as 64-bit linux?

----------

## ali3nx

This tutorial is officially retired. see new addition to the top of the thread.

----------

