Gentoo: Mengapa saya memilih untuk menyusun program saya sendiri?

Baiklah, memandangkan sambutan yang sangat baik dari catatan saya yang lalu, saya ingin memberitahu anda sedikit lebih banyak mengenai pengedaran kegemaran saya, Gentoo Linux. Saya berjanji bahawa catatan ini akan mempunyai maklumat yang menghiburkan yang akan membantu anda memahami sedikit tentang mitos yang timbul di hadapan yang menakutkan kompilasi perisian. Saya juga berjanji bahawa maklumat ini akan berguna untuk panduan pemasangan Gentoo Linux seterusnya dalam ~ 20 langkah (saya belum menghitungnya dengan baik, tetapi saya rasa mereka kurang). Tanpa basa-basi lagi, mari kita mulakan:

Apa yang menyusun?

Ini adalah proses yang dijalankan oleh sebuah program (biasanya disebut penyusun) untuk menukar kod yang ditulis dalam bahasa manusia (C, C ++, fail, dll.) Menjadi kod yang dapat difahami oleh mesin (kod binari). Mari lihat contoh berikut:

Reka bentuknya sendiri, Christopher Díaz Riveros

Ini adalah program C kecil kami (jika anda mahu tutorial C yang lain kemudian, saya juga akan dengan senang hati menunjukkan apa yang telah saya pelajari pada masa ini). Sekarang mari kita lihat bagaimana outputnya setelah disusun.

Reka bentuknya sendiri, Chrirstopher Díaz Riveros

Cantik, bukan? 🙂 Inilah yang difahami oleh mesin kami untuk dapat menulis "Hello" kecil itu di terminal kami setiap kali program dijalankan.

Proses membina:

Tidak ada gunanya mempunyai program yang mencetak "Hello" sederhana di layar, kerana fail .c dan .h berlimpah dalam projek (seperti dalam semua bahasa pengaturcaraan). Untuk membuat proses penyusunan sedikit lebih mudah, alat baru muncul, yang paling mewakili semuanya adalah perintah membuat.

Make ambil fail Makefile sebagai titik permulaan dan menyusun apa yang diperlukan untuk membuat akhir yang dapat dilaksanakan, dalam beberapa kes langkah ini memerlukan pelaksanaan fail yang disebut configure untuk dapat menetapkan beberapa pemboleh ubah yang diperlukan untuk penyusun untuk menyusun (maafkan redundansi) fail yang berguna.

Inilah sebabnya mengapa dalam banyak tutorial kita akan menemui langkah-langkah berikut:

Milik. Christopher Diaz Riveros

Keajaiban ./configure:

Untuk menunjukkan salah satu rahsia kod sumber yang paling tersembunyi dan menghiburkan, kami akan pergi ke kod sumber program yang kita semua tahu dengan sempurna, sudo. Mula-mula langkah biasa, tapi saya akan berhenti . / Konfigurasi  untuk menunjukkan kepada mereka sesuatu yang istimewa.

Milik. Christopher Diaz Riveros

Ini akan mengembalikan senarai pilihan yang panjang, antaranya saya akan menunjukkan kepada anda pilihan yang paling menarik perhatian saya.

Milik. Christopher Diaz Riveros

--with-insults... seperti namanya, menyusun sudo dengan penyalahgunaan Feature adalah ciri yang menyeronokkan yang membolehkan anda menghantar penghinaan kepada pengguna setiap kali mereka membuat kesalahan dalam kata laluan mereka. Untuk apa itu? Baiklah, tidak lama dahulu 😛 tetapi menjelaskan satu perkara. Terdapat beribu-ribu pilihan yang tidak tersedia secara lalai dalam sebilangan besar pengedaran.

Seperti anda, ada banyak lagi yang mungkin aktif dalam pengedaran kod binari dan yang tidak akan anda gunakan, atau akan ada beberapa yang anda perlukan, tetapi tidak akan disertakan dengan binari diedarkan rasmi anda, yang menunjukkan bahawa setiap kemas kini akan manual.

Dapatkan keseronokan di Gentoo:

Kami telah melihat berapa banyak pilihan yang boleh hilang atau diseret dengan program yang dikompilasi. Tetapi sekarang mari kita fokus sedikit pada masalah yang telah disusun sebelumnya.

Prestasi:

Pernahkah anda terfikir mengapa mesin baru hanya kelihatan lebih pantas berbanding yang tidak moden? Sekiranya pemproses lebih baik, ada lebih banyak RAM, semuanya lebih baik, mengapa tidak berjalan lebih cepat? Jawapannya mudah ... penyusunan.

Mari kita ambil contoh yang sangat praktikal.

Program saya disusun dengan pilihan --march=broadwell... ini kerana pemproses saya adalah broadwell (intel i7). Kelemahan ke ini? tiada pemproses sebelum broadwell mampu mengenali binari ini. Pada ketika ini anda harus melihatnya dengan jelas, jika saya menyusun dengan a –March  khusus, semua perkara di atas tidak akan berfungsi ... jadi bagaimana pakej binari menyokong begitu banyak jenis perkakasan? Mudah, mereka menyusun dengan pilihan yang paling mungkin 🙂 ini menjamin bahawa semua jenis perkakasan akan dapat membacanya (sekurang-kurangnya untuk keserasian).

Masalah sebenarnya ... jika anda menggunakan program yang disusun untuk i3 ... Semua kekuatan i7 anda (atau analogi AMD masing-masing) sia-sia !! Tidakkah itu menyedihkan? 🙁

Fleksibiliti:

Oleh kerana pembangun Gentoo sangat pintar, keseluruhan proses tar, ./configure, make, etc ... telah diganti dengan kekuatan Portage. Semua tetapan ingin tahu ini telah dinamakan semula bendera USE, jadi jika anda mahukan tetapan tertentu, anda tidak perlu memasukkan kod sumber, cukup tetapkan pemboleh ubah. Berikut adalah contoh cara melakukannya dengan sudo di portage. Mula-mula kita akan melihat pilihan apa yang kita ada dalam konfigurasi semasa kita persamaan.

Milik. Christopher Diaz Riveros

Seperti yang kita lihat, pilihan merah diaktifkan, yang biru tidak, baik ... semua orang boleh membaca legenda 🙂

katakan saya mahu menambah pilihan ...

Milik. Christopher Diaz Riveros

Semudah menambahkan baris dalam fail yang dipanggil sudo (nama itu merujuk) dalam /etc/portage/package.use/. Dengan ini, lain kali kita memasang sudo akan memberitahu kita bahawa ia akan dikompilasi ulang dengan pilihan diaktifkan.

Milik. Christopher Diaz Riveros

Sekiranya kita memberi, YA, yang perlu anda buat hanyalah menunggu sebentar dan voila simple semudah ini.

Pemikiran terakhir:

Kita telah melihat betapa mudahnya menangani fungsi tambahan di Gentoo, yang membolehkan kita menambah, membuang atau mengubah pilihan dalam program kegemaran kita. Kami juga telah melihat bagaimana prestasi program kami banyak bergantung pada pemboleh ubah yang digunakan untuk menyusunnya. Sekiranya anda mempunyai mesin yang sangat baru, Gentoo adalah pilihan terbaik anda. Sekiranya anda mempunyai mesin yang sangat lama, Gentoo juga menjadi pilihan anda (walaupun memerlukan beberapa saat untuk menyusunnya, program akhir akan jauh lebih ringan).

Saya akan segera menulis panduan pemasangan Gentoo saya, baik untuk pencinta SystemD dan pengembara OpenRC (saya menggunakan systemd dengan GNOME). Ngomong-ngomong, kelebihan lain dari Gentoo adalah kemampuan untuk pilih semua yang ada di dalam sistem anda, dan apabila saya katakan semuanya ada SEMUA.

Sekiranya anda terlepas catatan pertama saya, berikut adalah pautan:

Gentoo Linux: Kisah Perjalanan

Regards,


Tinggalkan komen anda

Alamat email anda tidak akan disiarkan. Ruangan yang diperlukan ditanda dengan *

*

*

  1. Bertanggungjawab atas data: Miguel Ángel Gatón
  2. Tujuan data: Mengendalikan SPAM, pengurusan komen.
  3. Perundangan: Persetujuan anda
  4. Komunikasi data: Data tidak akan disampaikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Pangkalan data yang dihoskan oleh Occentus Networks (EU)
  6. Hak: Pada bila-bila masa anda boleh menghadkan, memulihkan dan menghapus maklumat anda.

  1.   Mart kata

    Hebat! Saya akan menunggu panduan pemasangan Gentoo with Gnome. Mungkin saya digalakkan untuk berhijrah ke Gentoo walaupun saya masih mempunyai PC yang agak lama (intel core i5 3rd gen.). Ceria!

    1.    chrisadr kata

      Tidak lama kemudian, Mart ganó memenangkan saya untuk berkongsi lebih banyak perkara, jadi saya menulis catatan lain yang sedang menunggu untuk diterbitkan, tetapi tidak lama lagi 🙂 Saya berjanji

  2.   njord kata

    Saya rasa saya akan mula melihat banyak catatan di sini mengenai pengedaran linux kegemaran saya o!!
    Saya telah berada di Gentoo sejak tahun 2005 di mana saya menggunakannya untuk menubuhkan Mail Server di universiti tempat saya belajar (dan tempat saya bekerja sekarang) dan walaupun saya mengalami serangan sporadis, saya selalu kembali dengan Gertroodis tersayang (pertama dengan Gnome2, kemudian Xfce dan sekarang kotak terbuka), dan seperti yang anda komen di catatan sebelumnya, dengan peningkatan kemahiran dan pengetahuan untuk memperbaikinya 😉
    Saya akan menantikan sumbangan, ucapan selamat dan terima kasih anda yang seterusnya kerana membuat hari saya = D!

    1.    chrisadr kata

      Baiklah, yang seterusnya akan keluar 🙂 seperti mengadakan perbualan yang menghiburkan mengenai topik kegemaran saya, yang seterusnya akan segera hadir, dan yang seterusnya, dan yang seterusnya 😛 Salam dan terima kasih banyak atas komen anda 🙂

  3.   Victor kata

    Saya telah bertahun-tahun melompat antara distro dan berfikir untuk menyusun tambang…. panduan itu akan menjadi langkah yang saya hilang…. sementara saya akan menghiburkan diri dengan buku panduan. Terima kasih untuk segalanya……

    1.    chrisadr kata

      Baiklah, buku panduan itu adalah syurga maklumat, hanya ada segalanya 🙂 Saya hanya dapat menyumbang sedikit butir pasir saya 🙂 tetapi tidak lama lagi, catatan seterusnya akan keluar, dan tidak lama lagi (saya dapat melihat bahawa ia sangat diharapkan) ~ Panduan pemasangan 20 langkah. Bersorak,

      1.    Victor kata

        Tuan puan yang belum anda beri saya masa sejak awal yang membincangkan mengenai mikropemproses yang berbeza dan panduannya ada di sini !!!! Hujung saya ini merosakkan PERTAMA! !!! Jutaan terima kasih !!!!

  4.   sebutan kata

    Knoppix, Mandrake, Ubuntu dan Debian ... Dan selalu memikirkan Gentoo ...

    Menunggu 20 langkah itu!

    1.    chrisadr kata

      Hahaha baik, seperti mimpi bukan? 🙂 Saya katakan sudah tiba masanya untuk mewujudkannya 😉 salam

  5.   Cool As Ice kata

    Hai ChrisADR, pertama saya ingin memberitahu anda bahawa saya tidak tidur dengan baik sejak artikel pertama anda mengenai Gentoo, dan berkaitan dengan artikel baru ini, impian saya adalah berdasarkan penyusunan Gentoo di Netbook Aspire One lama saya. Dalam mimpi saya, sistem memberitahu saya bahawa netbook saya sangat lama sehingga tidak mengenali perkakasan.
    Sebaliknya, setelah saya melihat Gentoo dan menarik perhatian saya, mereka menyebutkan kekuatan yang ditawarkannya kepada komputer (komputer). Sejak hari itu saya mengatakan kepada diri sendiri bahawa suatu hari saya akan memasangnya, lebih dari 10 tahun telah berlalu dan saya belum melakukannya, mungkin kerana mereka memberitahu bahawa sangat sukar untuk memasangnya, pada masa itu saya hampir anti-linux jadi mereka meningkatkan rungutan saya terhadapnya. Namun rasa ingin tahu tetap ada. Suatu ketika saya cuba memasang BSD di netbook saya tanpa kejayaan, dan diberitahu bahawa Gentoo adalah linux yang sangat mirip dengan BSD.
    Apa yang anda cadangkan saya untuk memasang Gentoo pada Aspire One lama saya dengan penyusun Atom lama?

    dan terima kasih banyak untuk artikel anda, saya terus menunggu lebih banyak lagi

    1.    ChrisADR kata

      Baiklah, saya cadangkan anda ... LAKUKAN! Dan akhirnya, jika pada akhirnya ia gagal (yang saya ragu-ragu kerana kernel dibuat untuk menyokong semua jenis perkakasan) anda akan mempunyai pengalaman yang sangat memperkaya dalam dunia Linux 🙂 anda akan menyusun kernel anda, anda akan mempunyai memasang sistem fail anda dari awal, anda akan membuat konfigurasi yang tidak banyak dilakukan dalam hidup mereka 🙂 ia akan memberi anda perspektif baru mengenai dunia hahaha Sekiranya anda tidak dapat melihat profil Unix & StackExchange saya answers jawapan saya merangkumi pelbagai linux di sana kerana mengetahui Gentoo telah membolehkan saya mempelajari banyak perkara mengenai semua Linux 😉 Saya meninggalkan pautan profil saya di sini

      https://unix.stackexchange.com/users/246185/christopher-d%C3%ADaz-riveros?tab=profile

      Jangan takut, dan pada akhirnya, jika semuanya berjalan lancar (pastinya harganya sedikit) ia akan menjadi pencapaian untuk buku anda 😉 Salam

  6.   Esteban kata

    Saya juga berfikir untuk berhijrah ke Gentoo, tetapi saya mempunyai keraguan. Pertama sekali, seberapa terkini pakej-pakej berkenaan dengan Arch? Sebaliknya, komputer riba saya mempunyai bateri terbina dalam, dan kita semua tahu apa yang berterusan terhadap haba berlebihan terhadap bateri. Dan kerana saya akan menghabiskan banyak masa untuk menyusun ...

    1.    ChrisADR kata

      Sebenarnya tidak dapat memberitahu anda dengan pasti mana yang lebih banyak Rolling Release 😛 apa yang dapat saya sampaikan dengan pasti ialah Gentoo mempunyai dua cabang: "stabil" dan "tidak stabil", walaupun "tidak stabil" mesti mempunyai sebilangan besar bungkusan di pinggir teknologi, saya mempunyai banyak pembangun terkenal yang menggunakannya pada hari ke hari tanpa komplikasi. Sebilangan besar ini dibuat untuk bekerja dengan git repositori projek, jadi tidak ada yang lebih terkini 🙂 Saya secara peribadi menggunakan cawangan "stabil", tetapi ini terutama kerana kerja saya dalam komuniti sebagai penyelaras keselamatan dan sebagai pasukan ujian (Arch Tester). Sekiranya anda tidak perlu mempunyai versi "stabil" untuk pekerjaan itu, anda pasti akan berada di pinggir teknologi dengan "tidak stabil."
      Saya tidak tahu sama ada ia menjawab soalan anda, tetapi sekurang-kurangnya saya harap ini cukup menarik perhatian anda untuk mencubanya 😛 Salam

  7.   Quixote Percuma kata

    Yang benar adalah bahawa anda membuat saya mahu 😉
    Saya sangat berminat dengan apa yang telah anda nyatakan mengenai tutorial C, begitu juga Python dan saya sangat menghargai jika anda mempunyai permata tersembunyi di luar sana untuk datuk dan nenek yang ceroboh.
    Kerana meletakkan beberapa tongkat pada anda dan dengan segala hormatnya kerana saya fikir kandungannya lebih penting daripada benua, tetapi bagaimana saya agak pemilih dengan bahasa saya akan mengulas sedikit perkara.
    Anda katakan pada awal:
    "Kompilasi adalah proses yang dilakukan oleh penyusun untuk menggunakan kod yang ditulis dalam bahasa manusia dan mengubahnya menjadi kod yang dapat difahami oleh mesin."
    Pada pendapat saya adalah tidak betul untuk memasukkan apa yang dinyatakan dalam definisi, kerana untuk menentukan kompilasi anda memasukkan istilah penyusun, jadi sesuatu seperti ini pasti lebih tepat:
    Penyusunan adalah proses di mana program memperoleh dari fail teks yang ditulis dalam bahasa (C, C ++) fail yang dapat dilaksanakan oleh komputer.

    1.    ChrisADR kata

      Sumbangan anda nampak betul bagi saya, saya menolongnya untuk terus menyimpan intinya dan menambahkan maklumat itu 😉 terima kasih.

  8.   Berganda D kata

    Saya menggunakan ubuntu 16.04, adakah anda fikir saya harus beralih ke gentoo? Apa kelebihan gentoo berbanding ubuntu?

    1.    ChrisADR kata

      Saya tidak tahu depends ia bergantung kepada apa yang akan anda lakukan dengan peralatan anda, atau perkakasan yang anda miliki, atau jika anda mempunyai masa (dan keinginan) untuk belajar bagaimana menggunakan Gentoo. Saya akan memberitahu anda bahawa jika anda mempunyai masa, dan anda merasa seperti itu, anda boleh terus maju! dan anda akan melihat bahawa anda akan banyak belajar sepanjang perjalanan 😉
      salam

  9.   fernan kata

    Hello:
    Sekiranya benar bahawa gentoo banyak membaca, contohnya anda membuat pakej emerge -pv dan anda akan menggunakan warna merah, biru dan hijau, ditambah kemungkinan kunci yang memerlukan perubahan penggunaan, membuka pakej, perubahan slot sangat berbeza dengan apa yang dipaparkan oleh pengurus pakej yang lain.
    Saya rasa gentoo perlu dikemas kini setiap hari, jika anda membiarkannya selama 1 bulan, anda perlu memikirkan cara memperbaikinya.
    Greetings.

    1.    ChrisADR kata

      Ya, hehe, pada awalnya ia sedikit 🙂 tetapi lama-kelamaan anda menjadi biasa dan bahkan sampai ke tahap berfikir mengapa tidak ada pengurus pakej lain yang anda mempunyai begitu banyak fleksibiliti 🙂 dari segi masa, saya tahu orang yang mempunyai pelayan yang sama berjalan selama bertahun-tahun tanpa mengemas kini dan tetap teguh seperti hari pertama, dan bagi mereka yang selama bertahun-tahun (bukan bulan) terdapat bahagian khas wiki yang menerangkan kemungkinan penyelesaian untuk masalah tersebut:

      https://wiki.gentoo.org/wiki/Upgrading_Gentoo/es#Actualizar_sistemas_antiguos

      Dan dari segi kemas kini, mungkin melihat masalah keselamatan secara langsung telah membuat saya mengambil perspektif baru, tetapi mengemas kini setiap hari adalah sesuatu yang tanpa mengira pengedarannya, biasanya tidak mengambil lebih dari dua arahan dalam semua pengedaran, dan dalam gentoo di samping menghasilkan tabiat yang baik, elakkan menunggu lama apabila semua bungkusan terkumpul.
      salam

  10.   fernan kata

    Hello:
    Di distro binari, saya menggunakan manjaro dan sebelum saya menggunakan ubuntu, senang untuk dikemas kini, saya periksa setiap hari jika ada kemas kini, itu adalah perkara pertama yang saya perhatikan, tetapi dalam pengemaskinian manjaro tidak memberi saya masalah yang relevan, saya biasanya beritahu pacman bahawa ya untuk semuanya dan paling banyak perlu mengemas kini tandatangan atau bahkan memadam fail. Tetapi dari apa yang saya baca di gentoo istilahnya kadang-kadang sukar untuk memahami apa yang dikatakan oleh portage.
    Greetings.

    1.    ChrisADR kata

      Katakan ya untuk semua perkara tidak pernah baik ern jika anda telah mencapai GNU / Linux anda harus mengetahui dan memahaminya. Tidak ada yang dapat dilihat, itu adalah kebiasaan, lama-kelamaan anda menyedari bahawa merah adalah apa yang anda miliki, biru apa yang anda tidak, hijau apa yang akan anda tambahkan dan itu sahaja :). Saya tidak perlu mengubah apa-apa untuk dikemas kini jika saya telah mengkonfigurasi dengan betul untuk memulakan, kadang-kadang saya menambah atau mengeluarkan bendera USE, tetapi perkara biasa adalah memberi Y ya setelah membaca senarai untuk mengetahui apa yang sedang dilakukan 🙂
      PS: pacman -Syy sama dengan emerge -sync
      Pacman -Suy sama dengan emerge -uD @world (-av hanya untuk bersikap verbal dan bertanya sebelum meneruskan, yang tidak perlu jika anda tahu pasukan anda dan anda tahu apa yang anda lakukan, tetapi saya meletakkannya untuk mengelakkan masalah nanti 😉) Saya tidak begitu sukar untuk diingat 🙂

      salam

  11.   Mauricio Lopez kata

    Hebatlah artikel anda, baik yang sebelumnya maupun yang ini. Saya mempunyai keraguan dan berapa banyak kelajuan yang anda dapat antara Arch atau Manjaro dan Gentoo. Terlepas dari penyesuaian dan pembelajaran itu sendiri, ia menjadikannya layak untuk dipasang.
    Soalan lain yang saya ada ialah bagaimana menangani pemandu, ini adalah masalah yang memberi saya masalah di Arch.

    1.    ChrisADR kata

      Helo Mauricio,
      Baiklah, saya tidak pernah berhenti untuk membuat penanda aras antara keduanya, dan pada hakikatnya ia adalah persoalan yang sangat samar-samar, bergantung pada perisian yang anda gunakan, dan peralatan yang anda miliki, ini boleh berbeza dari sedikit atau tidak banyak. Sekurang-kurangnya untuk hari ini kedua-dua sistem berfungsi dengan baik untuk saya dalam apa yang saya perlukan untuk menggunakannya. (Saya mempunyai Gentoo utama dan Arch yang saya gunakan dari semasa ke semasa) Biasanya saya menggunakannya dalam virtualisasi dan penyuntingan program (tetapi biasanya melalui terminal sehingga tidak menggunakan banyak memori dalam IDE. Chrome menyokong saya dengan tenang lebih daripada 40 tab (saya telah mencuba berulang kali, walaupun secara umum saya hanya mempunyai maksimum 5 terbuka untuk jangka masa panjang.
      Sekiranya suatu hari anda berani mencuba, beritahu saya bagaimana keadaannya 🙂

      Bagi pemacu, kerana anda mengendalikan kernel sesuka hati, biasanya kebanyakan pemacu "biasa" boleh dipasang, atau sekurang-kurangnya dapat dikendalikan. Dalam kes perkakasan yang sangat khusus (terutama yang sedikit serasi dengan Linux pada umumnya), saya rasa ia adalah pekerjaan yang sama seperti di distro lain, saya tidak mempunyai banyak perkakasan khusus sehingga saya tidak dapat mengulas banyak tentangnya 🙂

      Salam dan selamat sejahtera

  12.   Subero Jeanpier kata

    apa rangkaian sosial anda ChirsADR?