Dystrybucje obsługujące kompilację ze źródła


21

Dawno, dawno temu używałem FreeBSD z systemem portów, a potem Gentoo do portage w celu instalowania aplikacji poprzez kompilację ze źródła. Zrobiłem to, aby bezpośrednio celować w mój system.

Czy są jeszcze jakieś dystrybucje, które obsługują taką konfigurację? Wydaje mi się, że pamiętam, że Slackware ma coś podobnego.


pytanie, czy chodzi o kompilację całego systemu ze źródła, czy też o kompilację poszczególnych pakietów, nie jest jasne. Czy przez dystrybucje masz na myśli systemy operacyjne oparte na Linuksie, wszystkie wolne systemy uniksopodobne, czy coś innego? Jeśli twoje pytanie ogranicza się do darmowych dystrybucji uniksopodobnych, to z definicji wszyscy mogą instalować pakiety, kompilując je ze źródła, ale stosunkowo niewiele (Gentoo i bardziej niejasni krewni, tacy jak Sourcemage dla systemów operacyjnych opartych na Linuksie) i prawdopodobnie niektóre BSD ( Nie jestem z nimi tak znany), jeśli chodzi o kompilację całego systemu.
Faheem Mitha

Wszystkie dystrybucje Linuksa pozwalają na kompilowanie rzeczy, a także można budować własne pakiety binarne i instalować je. To jest właśnie to, co robią pakiety dystrybucyjne, aby tworzyć nowe wersje dystrybucji.
vonbrand,

Odpowiedzi:



8

Istnieje kilka dystrybucji, które obsługują zarówno pakiety binarne, jak i skompilowane - teoretycznie Gentoo to obsługuje, ale nie sądzę, że istnieje zbyt wiele pakietów binarnych. Arch obsługuje także budowanie ze źródła oprócz pakietów binarnych za pośrednictwem Arch Build System (ABS), chociaż nie mam z tym żadnego doświadczenia.


+1 za Arch (choć możesz podać link do pierwszej strony Arch i może AUR)
ksenoterracid

Gentoo to moja ulubiona dystrybucja +1
Chris Huang-Leaver,

Dałbym więcej linków, ale pomyślałem, że muszę mieć więcej niż <x> powtórzeń (w każdym razie więcej niż 100), aby dodać więcej niż 1 link, tak było w przypadku StackOverflow. Widzę, że tak nie jest, więc linki są dodawane!
BR

3

Gentoo jest tutaj najlepszym wyborem, co jest złego w korzystaniu z niego do własnych potrzeb?


1
Jestem tylko maniakiem dystrybucji i lubię instalować i wypróbowywać różne. Gentoo zawsze było moim ulubionym, ale wraz z żoną, dziećmi i biznesem, aby spędzić czas, który muszę poświęcić dbając o instalację Gentoo, znacznie się zmniejszyło.
żebrak


3

Większość dystrybucji Linuksa obsługuje budowanie pakietów z kodu źródłowego. Musisz po prostu zainstalować niezbędne pakiety programistyczne z repozytoriów dystrybucyjnych wraz ze szczegółowymi wymaganiami budowanego pakietu. Jeśli chcesz zbudować system tak blisko zera, jak to możliwe, Linux od podstaw jest modelem, ale ponosisz większą odpowiedzialność za śledzenie aktualizacji zabezpieczeń, poprawek itp. Arch Linux był dystrybucją, którą wybrałem, ponieważ pozwala na budowanie z źródło i zapewnia źródła aktualizacji i poprawek itp. Arch ma naprawdę dobrą obsługę użytkowników i mnóstwo dokumentacji, jeśli chodzi o rozwiązywanie problemów z instalacją i konfiguracją.


2

Wiele dystrybucji opartych na RPM ma źródłowe pakiety RPM. Debian i Ubuntu mają również debugi źródłowe. Czy szukasz innych dystrybucji, które są przede wszystkim zbudowane ze źródła lub po prostu dystrybucje, które mają dostępne pakiety źródłowe. Jeśli to drugie, odpowiedź brzmi „wiele / większość” z nich.


2

Niektórzy przychodzą na myśl, że osobiście użyłem: LFS (oczywiście), SourceMage , i ktoś zrobił jeden z makefile LNX-BBC, nie mogę go teraz znaleźć. Ale uważam, że Debian jest wystarczająco dobry, aby samemu skompilować pakiety, jeśli zajdzie taka potrzeba.

Powinieneś również sprawdzić, czy lista jest dostarczana przez dystrybucje oparte na źródłach DistroWatch :


2

Jeśli chcesz spróbować czegoś nieco innego, jest GoboLinux i NixOs .


Nixostrożnie śledzi zależności, dokładnie opisuje proces kompilacji jako czysto funkcjonalne rzeczy, w których wszystkie zależności są jawne. To powinno dać użytkownikowi większą elastyczność w odważnym łączeniu i dostrajaniu rzeczy i mieć pewność, że wynik nie będzie niepoprawny.
imz - Ivan Zakharyaschev

2

W ALTLinux wkłada się wiele wysiłku w utrzymywanie dokładnych plików specyfikacji pakietów, a budowanie pakietów jest dokładnie powtarzalne w obecnym stanie repozytorium pakietów. Regularnie sprawdza się, czy każdy pakiet w repozytorium (zwany Syzyfem ) można w tej chwili odbudować - raport o stanie testu odbudowy , dzienniki ostatniego testu odbudowy, na pakiet .

Aby zapewnić dokładną odtwarzalność kompilacji pakietów, stosuje się specjalne narzędzia do izolowania systemu kompilacji od systemu hosta: hasher i otaczające narzędzia infrastruktury kompilacji (np. Budowanie pakietów ze sprzętem ).

Tak więc, chociaż ALTLinux nie jest przeznaczony do instalowania systemu przez budowanie, można być pewnym, że pakiet, który pobierze z repozytorium, będzie można łatwo odbudować w systemie hosta , bez dodatkowych problemów, które nie były formalnie śledzone przez specyfikację.

ALTLinux jest dedykowany jako źródło niestandardowych repozytoriów i dystrybucji pakietów, które - dzięki projektowi systemu kompilacji ALTLinux i powiązanych narzędzi - można łatwo dostosować i odbudować niezależnie od ALTLinux i bezpiecznie (tj. Odizolować od systemu hosta). Tak więc, jeśli ktoś chce stworzyć własną dystrybucję, ALTLinux Syzyf może być bazą dla tej dystrybucji, którą będzie mógł łatwo wykorzystać w swojej pracy: Wprowadzenie do tworzenia własnej dystrybucji (po rosyjsku) .


Oto kilka szczegółowych informacji na temat kontroli spójności repo przeprowadzanych przez girar-buildera ALTLinux (infrastrukturę kompilacji), jeśli ktoś będzie zainteresowany (chociaż nie chodzi tu bezpośrednio o samą budowę, ale o utrzymanie spójnego repo powstałych pakietów) : stackoverflow.com/questions/1316716/… .
imz - Ivan Zakharyaschev

1

Skompilowałem Squid w Open SUSE, aby dystrybucja go wspierała.


1

Tak, masz rację, slackware używa skryptów kompilacji do kompilowania pakietów. Jest ich wiele dostępnych na stronie http://slackbuild.org/ . Istnieją również szablony nowych skryptów i zawsze możesz przesłać swoje skrypty, jeśli chcesz.



1

Niedawno zadano bardzo podobne pytanie.

Moja odpowiedź na to pytanie brzmi: Jak zbudować cały Debian

Teoretycznie wszystkie dystrybucje mogą być budowane ze źródła. Szczegóły mogą się nieznacznie różnić z każdą dystrybucją, ale metoda, którą wymieniłem, ma solidny punkt początkowy.


0

Czy to musi być Linux, czy też inne unixy są w porządku?

Kompletny system NetBSD można zbudować ze źródła, korzystając z jego systemu build.sh . System, na którym budujesz, nie musi nawet być NetBSD, zrobiłem to z Linuksa lub OS X. Kompilacja może wygenerować instalację .iso, więc nie musisz bawić się programami ładującymi, aby uzyskać nowy system operacyjny bieganie.

Po zbudowaniu i zainstalowaniu systemu podstawowego można łatwo zainstalować inne pakiety ze źródła za pomocą menedżera pakietów pkgsrc NetBSD .

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.