問題タブ [rpm]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linux - rpmbuild の仕組みを理解する
RPM ロジックは、私が既に知っているものとはかなり異なっているようで、「RPM ロジック」の理解に問題があります。私の仕事では、「Red Hat 5 で RPM パッケージを作成する方法」に関するドキュメントを作成する必要があります。
私は Debian とその派生物 (Ubuntu など) に慣れているため、Debian パッケージ(aka..deb
ファイル) にも慣れています。
root
私が読んだところによると、RPM パッケージを作成する必要があるようです。パッケージをインストールするために必要な理由は理解root
できますが、パッケージを作成するためだけに昇格された特権が必要な理由はまだわかりません。
ユーザーとして RPM パッケージを作成しようとすると、 にファイルを書き込む権限がないため、変更buildroot
が失敗します。十分ですが...なぜこのステップで私のファイルをコピーしたいのですか?! インストールではなく、パッケージを作成したいだけです!%install
/usr/bin
/usr/bin
私はここで何かが欠けていると確信しています。どのように機能し、その理由について、少なくとも基本的な理解を私に与えることができる人はいますrpmbuild
か?
linux - 1つのファイルに複数のrpmをパッケージ化
複数のrpmを1つのファイルにパックすることは可能ですか?2つのバンドルがあり、そのうちの1つはもう1つをインストールする必要があります。このインストーラーが最初にpkg1を呼び出し、次にpkg 2をインストールするように、それらから単一のインストール可能ファイルを作成したいと思います。これは可能ですか?debパッケージはどうですか?基本的な質問ならごめんなさい。私はこれまでLinuxのインストーラーを使ったことがありません。Windowsインストーラーを作成しました。そこで、2つのマージモジュール(.msm)を作成し、それらをスタンドアロンインストーラー(.msi)にパッケージ化して、実行の順序を指定できます。Linuxで同様の機能を探しています。
編集:質問は十分に明確ではなかったと思います。言い換えてみましょう。現在スタンドアロンインストーラーとして出荷されているランタイムライブラリがたくさんあります。別のチームは、実行時にこれらのライブラリを使用する製品を開発しています。ここで、ライブラリを何らかの形式(サブパッケージ)で製品チームに提供し、それらをインストーラーに含めて、最初にサブパッケージをインストールするようにインストーラーを構成したいと思います。両方のパッケージは、エンドユーザーがローカルで利用できる必要があります。これらはどのリポジトリでも利用できず、インストール時にネットからプルダウンすることはできません。
linux - RPM パッケージの開発バージョンと通常バージョンの両方をビルドする
2 つの RPM パッケージを作成したいライブラリがあります。
基本的な RPM パッケージの作成方法に関するリンクはいくつか見つかりましたが、パッケージの作成方法が見つかりません(パッケージとは何か疑問がある場合は、この質問devel
を参照してください)。devel
devel
RPM パッケージのとnon-devel
バージョンの両方を生成するにはどうすればよいですか?
ありがとう。
svn - rpmbuild は buildroot のファイルを無視できますか?
svn にチェックインされているターゲット ディレクトリがあります。rpmbuild を実行するとき、ターゲットを --buildroot として使用します。これにより、各ディレクトリに .svn ディレクトリがあるため、rpmbuild が気を失います。rpmbuild にリラックスするように指示する方法はありますか?
svn export target target-build を見ましたが、rpm で追跡されたファイルしか認識していません。おそらくそれを行うのは悪い方法ではありませんが、それが最善の方法であるかどうかはわかりません。
build-process - 呼び出しごとにrpmbuildのビルド領域を設定する方法
自動ビルドを変更していますが、呼び出すときに特定のビルド領域rpmbuild
を使用するように指示したいと思います。
これは既存の質問に似ていますが、より具体的です。
rootユーザーとしてビルドコマンドを実行したくありません。目的はRPMを持つことだけであり、システムに何もインストールすることではありません。
ユーザーにドットファイルの変更を要求したくありません(例
$HOME/.rpmrc
)。ビルドは自己完結型であり、ユーザーの既存の設定に影響を与えないようにする必要があります。foo.spec
場所をファイルにハードコーディングしたくありません。ユーザーが別の場所にビルドする場合は、そのファイルをそのまま使用できる必要があります。--buildroot
オプションは私が必要とするものではありません。これにより、ビルドプロセスの一部に疑似ルートファイルシステムが設定されますが、 RPMビルドプロセス全体make
の「ビルド領域」を指定する必要があります。
私が探しているのは、コマンドに指定できる架空の--build-area FOODIR
オプションrpmbuild
、または同等の環境変数です。したがって、コマンドの1回の呼び出しにのみ影響し、ビルド領域に指定されたユーザー書き込み可能な場所を使用するようになります。
私が_topdir
話しているように見えるマクロへの参照を見てきましたが、呼び出しごとに構成可能ではないようです。
rpmbuild
必要なときにその場所に独自の環境を設定できれば理想的ですが、ビルドの一部として自動化できるため、ビルドごとにディレクトリを設定してもかまいません。目標は、ユーザーが書き込み可能な場所をビルド実行中のみ存在させ、RPMファイルが生成されたらその場所全体を削除してクリーンアップすることです。
package - インストールされていない RPM パッケージに関する情報を表示しますか?
これをグーグルで検索しましたが、インストールされていないRPMファイルの情報を照会する方法が見つかりませんでした:
インストールされていない RPM ファイルから情報を読み取るコマンドはありますか?
java - .desktop ファイル、CentOS の作成に関する問題
こんにちは、XYZ.desktop ファイルを作成しました。そのデスクトップ ファイルのコードを以下に示します。
XYZ.デスクトップ
startXYZ
start XYZ ファイルを実行するとアプリケーションが起動しますが、.desktop ファイルをダブルクリックしてもアプリケーションが開きません。同じファイルが Fedora では正常に機能しましたが、CentOS では機能しませんでした。ファイルの欠落はありません。
.desktop ファイルを起動する際の問題点を教えてください。
ありがとうスニル・クマール・サフー
linux - インストール中にユーザー入力を取得する方法
そのため、debian パッケージを作成すると、問題なく動作するインストール後のシェル スクリプトを作成できます。現在、私のものは行うように構成されています
これは Ubuntu では問題なく動作します。しかし、Fedora の RPM を操作するためのユーザー入力を取得できないようです。ユーザー入力を取得する良い方法はありますか? 私の理解では、RPM はインタラクティブなインストールを許可しないように設計されています。しかし、私はこれを行うためのより良い方法を見ることができません..
ユーザーに尋ねることなく、ローカルの MySQL 設定を自動的に見つける方法はありますか? それ以外の場合、ユーザー入力を求める最善の方法は何ですか?
linux - rpmでコンパイルされたOSバージョンを確認するにはどうすればよいですか?
コンパイルされたrpmパケットのLinuxバージョン(ディストリビューション)を確認するにはどうすればよいですか?
cygwin - Cygwin で Linux パッケージをビルドする
Cygwin で RPM と Debian パッケージをビルドするのは良い考えですか? 私たちのリリース サーバーは Windows なので、オプションはそれか、Linux で VM を起動してタスクを処理するかのいずれかです。
VMがアリに核爆弾を持っているかどうかはわかりません. Cygwinでビルドする方法はありますか? もしそうなら、どのように?これまでのところ、いくつかの手がかりを見つけました...どうやらCygwinはrpmを実行できるはずです。Debian のものを見つけるのはそれほど簡単ではありませんでした。