Я компилирую Исходный код Ubuntu в Системе Red Hat?

Я отвел larsks на один шаг дальше.

$ package-cleanup -q --leaves | xargs -l1 yum -y remove 

Это захватывает все зависимости, которые можно удалить, не затрагивая ничего другого, а затем удаляет их. Лучше пройти один за другим.

"-q" полезно на некоторых системах, которые печатают "Setting yum" иначе, заставляя эту команду удалять "yum". И это не то, чего вы хотите.

1
23.04.2014, 19:55
2 ответа
[

]Во-первых Если под этим вы подразумеваете создание пользовательского Ubuntu или других дистрибутивов, то да, вы можете, и это действие не является полностью дистрибутивно-специфичным (т.е. в вашем случае Redhat).[
]. Для этого можно использовать два разных подхода. Либо использовать средства автоматизации, такие как linuxcoe и другие различные инструменты, либо перейти на родной язык и начать с LFS (Linux From Scratch). В любом случае, у вас есть три варианта: [

] [
    ] [
  1. ]Ваше ядро [
  2. ] [
  3. ]Ваш графический интерфейс [
  4. ] [
  5. ]Ваша система дистрибутива [
  6. ] [
] [

][]Постройте свой собственный дистрибутив [][

] [

]Для третьего варианта вы можете использовать и другие утилиты для дистрибутивов (или написать свой собственный)[

] [

]Или вы хотели скомпилировать коды для других платформ, которые имеют больше общего с вашим []make[] и скомпилировать окружение и навыки кодирования (например, написать конфигурационные файлы). Вы делаете это в Jail env. или Virtual machine, если хотите.[

] [

]Или, возможно, вы хотели получить доступ к другим дистрибутивам внутри запущенного RedHat.[
]. В этом случае больше всего следует учитывать арку системы []Host[] и []target[]. Это может быть сделано с помощью []chroot[] ing. Считайте, что у вас есть живое изображение некоторого дистрибутива в системе []/mnt/distro[]. сначала вы должны смонтировать свои []/proc[] , []/dev[] и []/sys[]. Затем []chroot[] - []/mnt/distro[].[

] [
mount -t proc proc /mnt/distro/proc
mount --rbind /sys /mnt/distro/sys
mount --rbind /dev /mnt/distro/dev
] [

] Затем для []chroot[] части вам нужно полностью указать ваше окружение, чтобы избежать проблем в будущем.[

] [
chroot /mnt/distro /bin/env -i TERM=$TERM /bin/bash 
] [

] Примечание: Это базовая идея и [] путь [] и [] env[] в вашем случае будут другими[

].
0
28.01.2020, 01:57

Самый простой и самый правильный вариант сегодня состоит в том, чтобы установить целевую систему в качестве виртуального гостя, используя любую вику виртуализации (от простого Chroot через LXC И до VirtualBox , VMware и т. Д.) А затем используйте дистри-специфичные нативные инструменты.

Вы должны подумать о некоторой перекрестной компиляции без виртуализации в очень экстремальных обстоятельствах.

0
28.01.2020, 01:57

Теги

Похожие вопросы