1

Что я знаю: src.rpm обычно содержит какой-то tar или сжатый исходный код для app/library/package. Иногда люди рекомендуют вам скомпилировать из исходного кода, если пакет не работает

Что я не знаю: зачем вам перекомпилировать из источника? Что мне нужно для компиляции из исходного кода? НКУ? XLC?

Что я хотел бы знать: Гипотетически, если у вас есть src rpm, можете ли вы скомпилировать этот rpm для запуска на Fedora, а затем перенести тот же src rpm в AIX и скомпилировать его для работы в AIX?

1 ответ1

4

Ну, .src.rpm содержит исходный код и информацию о том, куда должны быть скопированы (установлены) различные файлы и исполняемые файлы.

Так что, да, вы должны быть в состоянии скомпилировать исходники как в Fedora, так и в AIX. Это, однако, не означает, что вы также можете "установить rpm". Установка состоит из копирования файлов в различные системные папки, такие как /usr , /etc и так далее. Разные операционные системы ожидают, что определенные файлы будут находиться в разных местах, поэтому нет гарантии, что .rpm для Fedora сможет установить в AIX. На самом деле это крайне маловероятно.

Что касается компиляции, вы можете захотеть скомпилировать из исходного кода, чтобы иметь двоичный файл, оптимизированный для вашего конкретного оборудования, или активировать определенные флаги компиляции, такие как расположение определенных библиотек. В общем, если вы не знаете, почему вы должны компилировать из исходного кода, то, вероятно, не стоит.

Если вы решите скомпилировать, вам понадобится соответствующий компилятор. Это может быть (среди прочего) gcc или xlc для программного обеспечения, написанного на C или C++, javac для Java и т.д. Какой из них вы должны использовать, зависит от устанавливаемого программного обеспечения и ваших личных предпочтений. Иногда программное обеспечение было написано с учетом конкретных компиляторов (с использованием определенных параметров во время компиляции), и они будут жаловаться, если вы попытаетесь скомпилировать их с другим.

Наконец, большинство исходных архивов * nix включают Makefile и скрипт configure. Вам нужно будет иметь необходимые инструменты для их использования. Сценарий конфигурации обычно представляет собой простой скрипт BLASH, поэтому, если у вас установлен BASH, все будет в порядке. Использование Makefile требует команды make . Есть также некоторые другие базовые инструменты (такие как autoconf и automake и другие), которые вам понадобятся. Я много лет не работал над дистрибутивом на основе RH, но если память работает, эта команда должна установить все, что вам нужно:

yum groupinstall "Development Tools" 

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .