3

私はDebianで実行され、Debianリポジトリから提供される多くのパッケージを使用するプロジェクトを持っています。

需要があるため、プロジェクトをCentOSに移植することを検討しましたが、必要なパッケージの多くが完全に欠落していることがわかりました。少なくとも10の依存関係を、ユーザーのマシンへのインストール時に手動でコンパイルする必要があります。

私の質問は、ユーザーのマシンのインストーラーを作成するための最良の方法は何ですか?automakeツール(標準の./configure、make、make installを使用)を使用して必要なライブラリをコンパイルする必要がありますか、それともこれは非標準のアプローチですか。私のアプリはPythonで記述されているため、実際にコンパイルする必要はありません。独自のアプリをコンパイルしていないときに「make」を実行するのはおかしいですか?

configureスクリプトは、パッケージXが欠落していることをユーザーに警告し、残りを処理させる必要がありますか?

必要なライブラリごとに手動でpkg-configを数回実行して、独自の依存関係チェッカーをロールし、何かが不足している場合は終了する必要がありますか?

私はこれにまったく慣れていないので、正しい方向に進むためのヒントをいただければ幸いです。

編集:私はRed Hat BaseディストリビューションのRPMとyumに精通していますが、CentOSには必要な多くのマルチメディアパッケージがありません。私のパッケージ依存関係の1つの例は、プログラム可能なオーディオエンジンである「liquidsoap」です:http ://savonet.sourceforge.net/

これはDebianで利用できますが、Redhat/Centosでは利用できません

4

1 に答える 1

0

CentOSパッケージ管理に関するこのリンクを参照してください。

http://wiki.centos.org/PackageManagement/Yum

CentOSはredhatベースであり、デフォルトでは.debパッケージを使用しません。aptパッケージ管理は多くのプラットフォームに移植されていますが、centOS用のポートを使用できる場合があります

YUMを使用する場合、redhatディストリビューションは他のディストリビューションと同じものをすべて必要とするため、必要なパッケージはアプリケーションにあります。

編集: コメントから詳細を取得するには

ターゲットプラットフォームで使用できないパッケージは、ターゲットプラットフォームで(場合によってはポートとして)ビルドしてから、移植されたパッケージ(この場合はYUM)で出荷するか、コードを変更してフォークし、すでに存在するパッケージを使用する必要があります。ターゲットプラットフォームで利用できます。どちらを選択するかは、どちらが悪いか、または制約があればどちらが可能かによって異なります。

于 2012-10-21T00:10:07.023 に答える