2.11 2006-05-27
Menginstal sebuah Stage Set Tanggal/Waktu yang Benar

Sebelum anda melanjutkan, anda perlu memeriksa tanggal/waktu anda dan memperbaharuinya. Jam yang tidak terkonfigurasi dengan benar dapat menyebabkan hasil yang aneh nantinya!

Untuk memastikan tanggal/waktu saat ini, jalankan date:

# date
Fri Mar 29 16:21:18 UTC 2005

Jika tanggal/waktu yang ditampilkan salah, update-lah menggunakan sintaks date MMDDhhmmYYYY (Month, Day, hour, minute, dan Year). Untuk saat ini anda harus menggunakan waktu UTS. Anda dapat menentukan zona waktu anda nanti. Misalnya, untuk men-set tanggal menjadi 29 Maret, 16:21 di tahun 2005:

# date 032916212005
Memutuskan Pilihan Anda

Langkah selanjutnya yang perlu anda lakukan adalah menginstal tarbal stage3 ke sistem anda. Anda memiliki pilihan untuk mendownload tarbal yang diperlukan lewat internet atau, jika anda boot dari salah satu CD Instalasi Universal Gentoo, copy stage tersebut dari CD. Jika anda memiliki sebuah CD Universal dan stage yang anda inginkan tersedia di CD, download lagi melalui internet hanya menyia-nyiakan bandwidth karena file stage tersebut biasanya sama. Perintah uname -m dapat digunakan untuk membantu anda memutuskan stage mana yang harus didownload.

  • Default: Menggunakan Stage dari Internet
  • Alternatif: Menggunakan Stage dari CD Instalasi
Default: Menggunakan Stage dari Internet Mendownload Tarbal Stage

Masuklah ke mountpoint Gentoo tempat anda me-mount filesystem anda (kemungkinan besar /mnt/gentoo):

# cd /mnt/gentoo

Tergantung pada media instalasi anda, tersedia beberapa tool untuk mendownload sebuah stage. Jika program links tersedia, maka anda dapat langsung masuk ke daftar mirror Gentoo dan memilih sebuah mirror yang dekat dengan anda.

Jika links tidak tersedia, anda seharusnya memiliki lynx. Jika anda harus melewati proxy, export-lah variabel http_proxy dan ftp_proxy:

# export http_proxy="http://proxy.server.com:port"
# export ftp_proxy="http://proxy.server.com:port"

Sekarang kami anggap anda telah memiliki links.

Masuk ke direktori releases/, diikuti oleh arsitektur anda (mis. x86/) dan versi Gentoo (2006.0), dan terakhir masuk ke direktori stages/. Di sana, anda seharusnya akan melihat semua file stage yang tersedia bagi arsitektur anda (mungkin disimpan di dalam subdirektori tiap sub arsitektur). Pilih satu dan tekan D untuk mendownloadnya. Setelah selesai, tekan Q untuk keluar dari browser.

# links http://www.gentoo.org/main/en/mirrors.xml
  
 (Jika anda butuh dukungan proxy dengan links:)
# links -http-proxy proxy.server.com:8080 http://www.gentoo.org/main/en/mirrors.xml

Pastikan anda mendownload sebuah tarbal stage3 - instalasi dengan tarbal stage1 atau stage2 sudah tidak lagi didukung.

Jika anda ingin memeriksa keadaan tarbal stage yang anda download, gunakan program md5sum dan bandingkan tampilannya dengan checksum MD5 yang disediakan di mirror. Sebagai contoh, untuk memeriksa keadaan tarbal stage x86:

# md5sum -c stage3-x86-2006.0.tar.bz2.DIGESTS
stage3-x86-2006.0.tar.bz2: OK
Mengekstrak Tarbal Stage

Sekarang ekstrak stage yang telah anda download ke sistem anda. Kita akan menggunakan tar, karena metode ini paling mudah:

# tar xvjpf stage3-*.tar.bz2

Pastikan anda menggunakan opsi-opsi yang sama (xvjpf). Opsi x merupakan singkatan dari Extract, opsi v adalah verbose untuk melihat apa saja yang sedang terjadi ketika proses ekstrak berlangsung (opsional), opsi j adalah Decompress with bz2, opsi p adalah Preserve permissions dan opsi f artinya ekstrak sebuah file, bukan standard input.

CD Instalasi dan imej boot untuk beberapa arsitektur (mis. MIPS) bergantung pada tar yang di-built di dalam BusyBox yang untuk saat ini belum mendukung opsi v. Untuk itu gunakan opsi xjpf.

Setelah stage terinstal, lanjutkan ke Menginstal Portage.

Alternatif: Menggunakan Stage dari CD Instalasi Ekstrak Tarbal Stage Jika anda menggunakan Installer LiveCD pada x86, anda tidak akan memiliki stage di CD anda. Anda harus mengikuti petunjuk di Menggunakan sebuah tarbal stage dari Internet.

Stage-stage di CD berada di direktori /mnt/cdrom/stages. Untuk menampilkan daftar stage-stage yang tersedia, gunakan perintah ls:

# ls /mnt/cdrom/stages

Jika sistem anda menampilkan pesan error, anda mungkin perlu me-mount CD-ROM anda dahulu:

# ls /mnt/cdrom/stages
ls: /mnt/cdrom/stages: No such file or directory
# mount /dev/cdroms/cdrom0 /mnt/cdrom
# ls /mnt/cdrom/stages

Sekarang masuklah ke mountpoint Gentoo (biasanya /mnt/gentoo):

# cd /mnt/gentoo

Sekarang kita akan mengekstrak tarbal stage pilihan anda menggunakan tar. Pastikan anda menggunakan opsi-opsi yang sama (-xvjpf). Argumen v merupakan opsional dan tidak didukung di beberapa versi tar. Pada contoh berikut ini, kita mengekstrak tarbal stage stage3-<subarch>-2006.0.tar.bz2. Pastikan unuk mengganti nama tarbal tersebut dengan stage anda.

# tar xvjpf /mnt/cdrom/stages/stage3-<subarch>-2006.0.tar.bz2

Setelah stage terinstal, lanjutkan ke Menginstal Portage.

Menginstal Portage Menginstal Snapshot Portage

Sekarang anda harus menginstal sebuah snapshot Portage, yaitu sebuah kumpulan file yang menginformasikan Portage software apa saja yang dapat anda instal, profile apa saja yang tersedia,dll

Download dan Instal Snapshot Portage

Masuklah ke mountpoint tempat anda me-mount filesystem anda. (biasanya di /mnt/gentoo):

# cd /mnt/gentoo

Jalankan links (atau lynx) kemudian masuk ke daftar mirror Gentoo. Pilih sebuah mirror yang dekat dengan anda kemudian masuk ke direktori snapshots/. Dari sana, download-lah snapshot Portage terbaru dengan memilih, kemudian menekan D.

# links http://www.gentoo.org/main/en/mirrors.xml

Sekarang keluar dari browser dengan menekan Q. Anda telah memiliki snapshot Portage di /mnt/gentoo.

Jika anda ingin memeriksa integritas snapshot yang baru di-download, gunakan md5sum kemudian bandingkan output-nya dengan MD5 checksum yang tersedia di mirror.

# md5sum -c portage-latest.tar.bz2.md5sum
portage-latest.tar.bz2: OK

Di langkah selanjutnya, kita akan mengekstrak snapshot Portage ke filesystem anda. Pastikan anda menggunakan perintah yang sama; opsi terakhir merupakan huruf kapital C, bukan c.

(Ganti <date> dengan datestamp yang ada pada snapshot)
# tar xvjf /mnt/gentoo/portage-<date>.tar.bz2 -C /mnt/gentoo/usr
Mengkonfigurasi Opsi Kompilasi Pendahuluan

Untuk mengoptimasi Gentoo, anda dapat mengeset beberapa variabel yang mengendalikan tingkah laku Portage. Variabel-variabel tersebut dapat diset sebagai variabel environment (menggunakan perintah export) tetapi tidak permanen. Untuk menyimpan setting anda, Portage menyediakan file /etc/make.conf, yaitu file konfigurasi Portage. File inilah yang akan kita edit sekarang.

Daftar variabel-variabel lengkap yang ter-comment dapat ditemukan di file /mnt/gentoo/etc/make.conf.example. Agar proses instalasi Gentoo anda sukses, anda hanya perlu mengeset variabel-variabel yang dijelaskan di bawah ini.

Jalankan editor favorit anda (di dokumentasi ini, kita menggunakan nano) agar kita dapat mengubah variabel-variabel optimasi yang akan kita jelaskan.

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

Seperti yang anda lihat, file make.conf.example diurutkan dengan cara yang umum: baris-baris yang ter-comment mulai dengan tanda "#", baris-baris lain mendefenisikan variabel menggunakan sintaks VARIABLE="content". File make.conf menggunakan sintaks yang sama. Beberapa dari variabel tersebut akan kita diskusikan nanti.

CHOST

Variabel CHOST mendefenisikan untuk arsitektur apa gcc harus mengkompilasi program. Variabel ini seharusnya telah diset dengan nilai yang benar.Jangan diedit karena bisa menrusak sistem anda. Jika menurut anda variabel CHOST tidak benar, anda mungkin menggunakan tarbal stage3 yang salah.

CFLAGS dan CXXFLAGS

Variabel CFLAGS dan CXXFLAGS mendefenisikan flag-flag optimasi untuk compiler C dan C++ gcc berturut-turut. Walaupun kita mendefenisikan variabel tersebut secara umum di sini, anda hanya akan mendapatkan performa maksimal jika anda mengoptimasi flag-flag ini untuk setiap program secara terpisah. Alasannya adalah karena setiap program berbeda.

Di file make.conf, anda sebaiknya mendefenisikan flag-flag optimasi yang anda rasa akan membuat sistem anda lebih responsif secara umum. Jangan menggunakan setting-setting percobaan ke variabel ini; optimasi yang terlalu tinggi dapat membuat program bertingkah laku aneh (crash, atau bahkan, tidak dapat berfungsi).

Kami tidak akan menjelaskan semua opsi-opsi optimasi. Jika anda ingin mengetahui opsi-opsi tersebut, baca Manual Online GNU atau halaman info gcc (info gcc -- hanya berfungsi di sistem Linux). File make.conf.example sendiri memiliki banyak contoh dan informasi; jangan lupa untuk membaca file ini juga.

Setting pertama adalah flag -march=, yang mendefenisikan nama arsitektur. Opsi-opsi yang mungkin dipakai dijelaskan di file make.conf.example (sebagai komentar). Sebagai contoh, untuk arsitektur x86 Athlon XP:

# Pengguna AMD64 yang ingin menggunakan sistem asli 64 bit sebaiknya menggunakan -march=k8
# Pengguna EM64T sebaiknya menggunakan -march=nocona
-march=athlon-xp

Yang kedua adalah flag -O (O adalah huruf besar O, bukan nol), yang mendefenisikan kelas optimasi gcc. Kelas-kelas yang tersedia adalah s (optimasi size/ukuran), 0 (nol - tidak dioptimasi), 1, 2 atau 3 untuk optimasi kecepatan (setiap kelas memiliki flag-flag yang sama dari kelas sebelumnya, ditambah beberapa tambahan). Sebagai contoh, untuk optimasi kelas 2:

-O2

Flag-flag optimasi populer lainnya adalah -pipe (gunakan pipe daripada file-file sementara untuk berkomunikasi antara berbagai stage sewaktu kompilasi).

Kami ingatkan anda bahwa penggunaan -fomit-frame-pointer (tidak menyimpan pointer frame di register untuk function-function yang tidak memerlukannya) kemungkinan bisa berakibat serius ketika melakukan debugging pada beberapa aplikasi!

Sewaktu anda mendefenisikan variabel CFLAGS dan CXXFLAGS, anda sebaiknya mengkombinasikan beberapa flag-flag optimasi, misalnya:

CFLAGS="-march=athlon-xp -pipe -O2"   # Pengguna AMD64 sebaiknya menggunakan -march=k8
                                      # Pengguna EM64T sebaiknya menggunakan -march=nocona
CXXFLAGS="${CFLAGS}"                  # Gunakan setting yang sama untuk kedua variabel
MAKEOPTS

Di variabel MAKEOPTS, anda dapat mendefenisikan berapa banyak kompilasi paralel yang berjalan sewaktu anda menginstal sebuah paket. Pilihan yang bagus adalah banyak CPU di sistem anda tambah satu, tetapi aturan ini tidaklah selalu sempurna.

MAKEOPTS="-j2"
Ready, Set, Go!

Update file /mnt/gentoo/etc/make.conf sesuai keinginan anda dan simpan (pengguna nano akan menekan Ctrl-X). Anda sekarang dapat melanjutkan ke Menginstal Sistem Dasar Gentoo.