2016-04-29 12 views
0

私はLLVMが必要なプログラムを書いており、Linux上でautotoolsを使って出荷することを考えているので、ユーザの視点からはよく知られた./configure && make && sudo make installのようになります。設定スクリプトに依存関係をインストールする

autotoolsでは、通常、依存関係をインストールするためにシステムパッケージマネージャーが依存します。問題は何らかの理由でLLVMではうまく動作しないことです。 Ubuntu 14.04では、apt-getは最新のバージョンが3.4だと思っていますが、実際にはもっと新しいバージョンが必要になります。したがって、最初にLLVMをダウンロードしてビルドするためのスクリプトを提供する必要があります(システムの古いバージョンに干渉しないように、そのローカルコピー)。これは数時間かかるプロセスです。

このプロセスを配置する最も明白な場所は、開始時にconfigureです。これは正常で合理的であると考えられますか?あるいは、configureにautotoolsが通常入れているものだけが含まれるべきであるという規約があります。依存関係のインストールは、ユーザーが最初に実行する別のスクリプトでなければなりません。後者の場合、別のスクリプトを呼び出す必要があるかどうかに関する規則がありますか?

+2

14.04が2年前だったので、Ubuntu 14.04には古いLLVMが含まれているのが普通です。システムパッケージマネージャーは、最新のソフトウェアバージョンをインストールすることはなく、配布物に含まれているバージョンをインストールします。 – wRAR

+0

@wARARそれでは、私の最終的な不具合だけではなく、正常であり、バージョン依存の依存関係のために自分自身で手配しなければならないと予想されます。 – rwallace

答えて

2

設定中に何もインストールしないでください。スクリプト名は "install-dependencies"ではなく "configure"です。

構成チェックを書き、llvmがない場合は、インストール方法を説明します。必要に応じて、llvmをダウンロードするための別個のスクリプトを提供してください。

configure(とmake)はroot権限ではなく普通の特権を持たないユーザーとして実行することをお勧めします。だからあなたは何かをインストールする権限を持っていないかもしれません。 「sudo」がインストールされているかどうかを確認する必要があります。 ユーザがインストールしているシステムにネットワーク接続(ファイアウォールなど)がないため、ダウンロードが失敗することがあります。

関連する問題